Paso 1: Preparación - Guía para desarrolladores de aplicaciones de Amazon Kinesis Data Analytics para SQL

Para proyectos nuevos, le recomendamos que utilice el nuevo servicio gestionado para Apache Flink Studio en lugar de aplicaciones de Kinesis Data Analytics para SQL. El servicio gestionado para Apache Flink Studio combina la facilidad de uso con capacidades analíticas avanzadas, lo que le permite crear aplicaciones sofisticadas de procesamiento de flujos en cuestión de minutos.

Las traducciones son generadas a través de traducción automática. En caso de conflicto entre la traducción y la version original de inglés, prevalecerá la version en inglés.

Paso 1: Preparación

Antes de crear una aplicación de análisis de datos de Amazon Kinesis Data Analytics para este ejercicio, deberá crear dos secuencias de datos de Kinesis. Configure una de las secuencias como el origen de streaming de su aplicación y otra secuencia como el destino, donde Kinesis Data Analytics sigue siendo la salida de su aplicación.

Paso 1.1: Crear las secuencias de datos de entrada y de salida

En esta sección, creará dos secuencias de Kinesis: ExampleInputStream y ExampleOutputStream. Puede crear estas secuencias mediante la AWS Management Console o la AWS CLI.

  • Para utilizar la consola de
    1. Inicie sesión en la AWS Management Console y abra la consola de Kinesis en https://console.aws.amazon.com/kinesis.

    2. Elija Create data stream (Crear secuencia de datos). Cree una secuencia con un fragmento denominado ExampleInputStream. Para obtener más información, consulte Crear secuencia en la Guía para desarrolladores de Amazon Kinesis Data Streams.

    3. Repita el paso anterior y cree una secuencia con un fragmento denominada ExampleOutputStream.

  • Para utilizar AWS CLI
    1. Utilice el siguiente comando create-stream de la AWS CLI de Kinesis para crear la primera secuencia (ExampleInputStream).

      $ aws kinesis create-stream \ --stream-name ExampleInputStream \ --shard-count 1 \ --region us-east-1 \ --profile adminuser
    2. Ejecute el mismo comando, pero cambie el nombre de la secuencia por ExampleOutputStream. Este comando crea la segunda secuencia que usa la aplicación para escribir la salida.

Paso 1.2: Escribir registros de muestra en la secuencia de entrada

En este paso, ejecute el código de Python para generar registros de muestra y escribirlos en la secuencia ExampleInputStream.

{"heartRate": 60, "rateType":"NORMAL"} ... {"heartRate": 180, "rateType":"HIGH"}
  1. Instale Python y pip.

    Para obtener más información sobre la instalación de Python, consulte la página web de Python.

    Puede instalar dependencias con pip. Para obtener más información sobre la instalación de pip, consulte la sección Installation en la página web de pip.

  2. Ejecute el siguiente código de Python. El comando put-record en el código escribe los registros JSON en la secuencia.

    from enum import Enum import json import random import boto3 STREAM_NAME = "ExampleInputStream" class RateType(Enum): normal = "NORMAL" high = "HIGH" def get_heart_rate(rate_type): if rate_type == RateType.normal: rate = random.randint(60, 100) elif rate_type == RateType.high: rate = random.randint(150, 200) else: raise TypeError return {"heartRate": rate, "rateType": rate_type.value} def generate(stream_name, kinesis_client, output=True): while True: rnd = random.random() rate_type = RateType.high if rnd < 0.01 else RateType.normal heart_rate = get_heart_rate(rate_type) if output: print(heart_rate) kinesis_client.put_record( StreamName=stream_name, Data=json.dumps(heart_rate), PartitionKey="partitionkey", ) if __name__ == "__main__": generate(STREAM_NAME, boto3.client("kinesis"))

Paso siguiente

Paso 2: Cree una aplicación