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

Para proyectos nuevos, le recomendamos que utilice el nuevo Kinesis Data Analytics Studio en lugar de Kinesis Data Analytics para aplicaciones SQL. Kinesis Data Analytics Studio combina la facilidad de uso con funciones analíticas avanzadas, lo que le permite crear sofisticadas aplicaciones de procesamiento de transmisiones en 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: Prepare

Antes de crear una aplicación de Amazon Kinesis Data Analytics para este ejercicio, debe crear dos secuencias de datos de Kinesis. Configure una de las transmisiones como fuente de transmisión para su aplicación y la otra transmisión como el destino en el que Kinesis Data Analytics conserva la salida de la aplicación.

Paso 1.1: Crear los flujos de datos de entrada y salida

En esta sección, creará dos transmisiones de Kinesis:ExampleInputStreamyExampleOutputStream. 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, consulteCrear un flujo deen elGuí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. Use el siguiente Kinesiscreate-stream AWS CLIpara 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: Creación de una aplicación