Como criar funções do Lambda para destinos de aplicativos - Guia do desenvolvedor do Amazon Kinesis Data Analytics SQL para aplicativos

Após uma análise cuidadosa, decidimos descontinuar o Amazon Kinesis Data Analytics SQL para aplicativos em duas etapas:

1. A partir de 15 de outubro de 2025, você não poderá criar um novo Kinesis Data Analytics SQL para aplicativos.

2. Excluiremos seus aplicativos a partir de 27 de janeiro de 2026. Você não poderá iniciar ou operar seu Amazon Kinesis Data Analytics SQL para aplicativos. O suporte não estará mais disponível para o Amazon Kinesis Data Analytics SQL a partir desse momento. Para obter mais informações, consulte Descontinuação do Amazon Kinesis Data Analytics SQL para aplicativos.

As traduções são geradas por tradução automática. Em caso de conflito entre o conteúdo da tradução e da versão original em inglês, a versão em inglês prevalecerá.

Como criar funções do Lambda para destinos de aplicativos

Seu aplicativo Kinesis Data Analytics pode AWS Lambda usar funções como saída. O Kinesis Data Analytics fornece modelos para a criação de funções do Lambda a serem usadas como um destino para seus aplicativos. Use esses modelos como ponto de partida para o pós-processamento da saída de seu aplicativo.

Criar uma função do Lambda de destino em Node.js

O modelo a seguir para criar uma função do Lambda de destino em Node.js está disponível no console:

Lambda como esquema de saída Linguagem e versão Descrição
kinesis-analytics-output Node.js 12.x Entrega registros de saída de um aplicativo do Kinesis Data Analytics em um destino personalizado.

Criar uma função do Lambda de destino em Python

Os modelos a seguir para criar uma função do Lambda de destino em Python estão disponíveis no console:

Lambda como esquema de saída Linguagem e versão Descrição
kinesis-analytics-output-sns Python 2.7 Entregue registros de saída de um aplicativo Kinesis Data Analytics para a AmazonSNS.
kinesis-analytics-output-ddb Python 2.7 Entrega registros de saída de um aplicativo Kinesis Data Analytics para o Amazon DynamoDB.

Criar uma função do Lambda de destino em Java

Para criar uma função do Lambda de destino em Java, use as classes de Eventos Java.

O código a seguir demonstra um exemplo de função do Lambda de destino usando 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; } }

Criando um destino de função Lambda em. NET

Para criar uma função Lambda de destino em. NET, use o. NETaulas de eventos.

O código a seguir demonstra um exemplo de função do Lambda de destino usando 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; } }

Para obter mais informações sobre a criação de funções Lambda para pré-processamento e destinos em. NET, veja Amazon.Lambda.KinesisAnalyticsEvents.