Exemple : Détection des points chauds sur un flux (fonction HOTSPOTS) - Guide du développeur d'Amazon Kinesis Data Analytics SQL pour applications

Après mûre réflexion, nous avons décidé de mettre fin à Amazon Kinesis Data Analytics SQL pour les applications en deux étapes :

1. À compter du 15 octobre 2025, vous ne pourrez plus créer de nouveaux Kinesis Data Analytics SQL pour les applications.

2. Nous supprimerons vos candidatures à compter du 27 janvier 2026. Vous ne serez pas en mesure de démarrer ou d'utiliser votre Amazon Kinesis Data Analytics SQL pour les applications. Support ne sera plus disponible pour Amazon Kinesis Data Analytics à partir SQL de cette date. Pour de plus amples informations, veuillez consulter Arrêt d'Amazon Kinesis Data Analytics SQL pour applications.

Les traductions sont fournies par des outils de traduction automatique. En cas de conflit entre le contenu d'une traduction et celui de la version originale en anglais, la version anglaise prévaudra.

Exemple : Détection des points chauds sur un flux (fonction HOTSPOTS)

Amazon Kinesis Data Analytics fournit la fonction HOTSPOTS qui peut rechercher et renvoyer des informations sur les régions relativement denses de vos données. Pour plus d’informations, consultez HOTSPOTS dans le manuel Référence SQL du service géré Amazon pour Apache Flink.

Dans cet exercice, vous allez écrire du code d'application pour localiser les points chauds sur la source de streaming de votre application. Pour configurer l'application, exécutez les étapes suivantes :

  1. Configurer une source de streaming : vous configurez un flux Kinesis et écrivez des exemples de données de coordonnées, comme illustré ci-après :

    {"x": 7.921782426109737, "y": 8.746265312709893, "is_hot": "N"} {"x": 0.722248626528026, "y": 4.648868803193405, "is_hot": "Y"}

    L'exemple fournit un script Python qui vous permet de remplir le flux. Les valeurs x et y sont générées de façon aléatoire, avec des enregistrements regroupés autour de certains emplacements.

    Le champ is_hot est fourni en tant qu'indicateur si le script a généré intentionnellement la valeur dans le cadre d'un point chaud. Cela peut vous aider à évaluer si la fonction de détection des points chauds fonctionne correctement.

  2. Créer l’application : avec AWS Management Console, vous pouvez alors créer une application Kinesis Data Analytics. Configurez l'entrée d'application en mappant la source de streaming sur un flux intégré à l'application (SOURCE_SQL_STREAM_001). Lorsque l’application démarre, Kinesis Data Analytics lit en continu la source de streaming et insère des enregistrements dans le flux intégré à l’application.

    Dans cet exercice, vous utilisez le code suivant pour l'application :

    CREATE OR REPLACE STREAM "DESTINATION_SQL_STREAM" ( "x" DOUBLE, "y" DOUBLE, "is_hot" VARCHAR(4), HOTSPOTS_RESULT VARCHAR(10000) ); CREATE OR REPLACE PUMP "STREAM_PUMP" AS INSERT INTO "DESTINATION_SQL_STREAM" SELECT "x", "y", "is_hot", "HOTSPOTS_RESULT" FROM TABLE ( HOTSPOTS( CURSOR(SELECT STREAM "x", "y", "is_hot" FROM "SOURCE_SQL_STREAM_001"), 1000, 0.2, 17) );

    Le code lit les lignes dans le flux SOURCE_SQL_STREAM_001, l'analyse pour rechercher les points chauds significatifs et écrit les données résultantes dans une autre flux intégré à l'application (DESTINATION_SQL_STREAM). Vous utilisez des pompes pour insérer des lignes dans les flux intégrés à l'application. Pour de plus amples informations, veuillez consulter Flux et pompes intégrés à l'application.

  3. Configurer la sortie : vous configurez la sortie de l’application pour envoyer des données depuis l’application vers une destination externe qui est un autre flux de données Kinesis. Vérifiez les scores de point chaud et identifiez ceux qui indiquent qu'un point chaud a eu lieu (et que vous devez être alerté). Vous pouvez utiliser une fonction AWS Lambda pour traiter plus en détails les informations sur les points chauds et configurer des alertes.

  4. Vérifiez la sortie – L'exemple inclut une application JavaScript qui lit les données du flux de sortie et les affiche de façon graphique pour que vous puissiez consulter les points chauds que l'application génère en temps réel.

L’exercice utilise la région USA Ouest (Oregon) (us-west-2) pour créer ces flux et votre application. Si vous utilisez une autre région, mettez à jour le code en conséquence.