Ejemplo: Exploración de la secuencia de errores en la aplicació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.

Ejemplo: Exploración de la secuencia de errores en la aplicación

Amazon Kinesis Data Analytics proporciona una secuencia de errores en la aplicación para cada aplicación que crea. Cualquier fila que la aplicación no pueda procesar se envía a esta secuencia de errores. Podría plantearse conservar los datos de la secuencia de errores a un destino externo para poder investigarlos.

Realizará los siguientes ejercicios en la consola. En estos ejemplos, introducirá errores en la configuración de entrada editando el esquema inferido por el proceso de detección y, a continuación, verificará las filas enviadas a la secuencia de errores.

Introducción de un error de análisis

En este ejercicio, usted introducirá un error de análisis.

  1. Cree una aplicación de Kinesis Data Analytics, tal y como se describe en el ejercicio de introducción de Kinesis Data Analytics.

  2. En la página de detalles de la aplicación, elija Conectar datos de streaming.

  3. Si ha seguido el ejercicio de introducción, tendrá una secuencia de demostración (kinesis-analytics-demo-stream) en la cuenta. En la página Connect to source (Conectarse al origen), elija esta secuencia de demostración.

  4. Kinesis Data Analytics toma una muestra de la secuencia de demostración con el fin de inferir un esquema para la secuencia de entrada en la aplicación que crea. La consola muestra el esquema inferido y los datos de muestra en la pestaña Formatted stream sample.

  5. A continuación, edite el esquema y modifique el tipo de columna para introducir el error de análisis. Elija Edit schema (Editar esquema).

  6. Cambie el TICKER_SYMBOL tipo de columna de VARCHAR(4) a INTEGER.

    Ahora que no es válido el tipo de columna del esquema en la aplicación que se ha creado, Kinesis Data Analytics no puede introducir datos en la secuencia en la aplicación. En su lugar, envía las filas a la secuencia de errores.

  7. Elija Save schema.

  8. Elija Refresh schema samples.

    Observe que no haya filas en el ejemplo de Formatted stream. Sin embargo, la pestaña Error stream muestra los datos que contengan un mensaje de error. La pestaña Error stream muestra los datos enviados a la secuencia de errores en la aplicación.

    Dado que se ha cambiado el tipo de datos de las columnas, Kinesis Data Analytics no ha podido llevar los datos a la secuencia de entrada en la aplicación. En su lugar, envía los datos a la secuencia de errores.

Introducción de un error de división por cero

En este ejercicio, va a actualizar el código de la aplicación para introducir un error de tiempo de ejecución (una división por cero). Observe que Amazon Kinesis Data Analytics envía las filas resultantes a la secuencia de errores en la aplicación, no a la secuencia en la aplicación DESTINATION_SQL_STREAM, en la que se deben escribir los resultados.

  1. Cree una aplicación de Kinesis Data Analytics, tal y como se describe en el ejercicio de introducción de Kinesis Data Analytics.

    Verifique los resultados en la pestaña Real-time analytics de la siguiente manera:

    Sour

  2. Actualice la instrucción SELECT en el código de la aplicación para introducir una división por cero; por ejemplo:

    SELECT STREAM ticker_symbol, sector, change, (price / 0) as ProblemColumn FROM "SOURCE_SQL_STREAM_001" WHERE sector SIMILAR TO '%TECH%';

  3. Ejecute la aplicación.

    Debido a que se produce el error de división por cero en tiempo de ejecución, en lugar de escribir los resultados en DESTINATION_SQL_STREAM, Kinesis Data Analytics envía las filas a la secuencia de errores en la aplicación. En la pestaña Real-time analytics (Análisis en tiempo real), elija la secuencia de errores y podrá ver las filas en la secuencia de errores en la aplicación.