Création de fonctions Lambda pour des destinations d’application - 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.

Création de fonctions Lambda pour des destinations d’application

Votre application Kinesis Data Analytics peut AWS Lambda utiliser des fonctions comme sortie. Kinesis Data Analytics fournit des modèles de création de fonctions Lambda qui peuvent être utilisées comme destination pour vos applications. Utilisez ces modèles comme point de départ pour la sortie de post-traitement de votre application.

Création d’une destination de fonction Lambda dans Node.js

Le modèle suivant pour créer une fonction Lambda de destination dans Node.js est disponible dans la console :

Plan de la fonction Lambda utilisée en tant que sortie Langage et version Description
kinesis-analytics-output Node.js 12.x Envoyez des enregistrements de sortie d’une application Kinesis Data Analytics vers une destination personnalisée.

Création d’une destination de fonction Lambda dans Python

Les modèles suivants pour créer une fonction Lambda de destination dans Python sont disponibles dans la console :

Plan de la fonction Lambda utilisée en tant que sortie Langage et version Description
kinesis-analytics-output-sns Python 2.7 Fournissez des enregistrements de sortie depuis une application Kinesis Data Analytics à AmazonSNS.
kinesis-analytics-output-ddb Python 2.7 Envoyez des enregistrements de sortie d’une application Kinesis Data Analytics vers Amazon DynamoDB.

Création d’une destination de fonction Lambda dans Java

Pour créer une fonction Lambda de destination dans Java, utilisez les classes d’événements Java.

Le code suivant illustre un exemple de fonction Lambda de destination utilisant Java :

public class LambdaFunctionHandler implements RequestHandler<KinesisAnalyticsOutputDeliveryEvent, KinesisAnalyticsOutputDeliveryResponse> { @Override public KinesisAnalyticsOutputDeliveryResponse handleRequest(KinesisAnalyticsOutputDeliveryEvent event, Context context) { context.getLogger().log("InvocatonId is : " + event.invocationId); context.getLogger().log("ApplicationArn is : " + event.applicationArn); List<KinesisAnalyticsOutputDeliveryResponse.Record> records = new ArrayList<KinesisAnalyticsOutputDeliveryResponse.Record>(); KinesisAnalyticsOutputDeliveryResponse response = new KinesisAnalyticsOutputDeliveryResponse(records); event.records.stream().forEach(record -> { context.getLogger().log("recordId is : " + record.recordId); context.getLogger().log("record retryHint is :" + record.lambdaDeliveryRecordMetadata.retryHint); // Add logic here to transform and send the record to final destination of your choice. response.records.add(new Record(record.recordId, KinesisAnalyticsOutputDeliveryResponse.Result.Ok)); }); return response; } }

Création d'une destination de fonction Lambda dans. NET

Pour créer une fonction Lambda de destination dans. NET, utilisez le. NETcours d'événements.

Le code suivant illustre un exemple de fonction Lambda de destination utilisant C# :

public class Function { public KinesisAnalyticsOutputDeliveryResponse FunctionHandler(KinesisAnalyticsOutputDeliveryEvent evnt, ILambdaContext context) { context.Logger.LogLine($"InvocationId: {evnt.InvocationId}"); context.Logger.LogLine($"ApplicationArn: {evnt.ApplicationArn}"); var response = new KinesisAnalyticsOutputDeliveryResponse { Records = new List<KinesisAnalyticsOutputDeliveryResponse.Record>() }; foreach (var record in evnt.Records) { context.Logger.LogLine($"\tRecordId: {record.RecordId}"); context.Logger.LogLine($"\tRetryHint: {record.RecordMetadata.RetryHint}"); context.Logger.LogLine($"\tData: {record.DecodeData()}"); // Add logic here to send to the record to final destination of your choice. var deliveredRecord = new KinesisAnalyticsOutputDeliveryResponse.Record { RecordId = record.RecordId, Result = KinesisAnalyticsOutputDeliveryResponse.OK }; response.Records.Add(deliveredRecord); } return response; } }

Pour plus d'informations sur la création de fonctions Lambda pour le prétraitement et les destinations dans. NET, voir Amazon.Lambda.KinesisAnalyticsEvents.