

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

1. A partir de **1º de setembro de 2025,** não forneceremos nenhuma correção de bug para aplicativos do Amazon Kinesis Data Analytics para SQL porque teremos suporte limitado para ele, devido à próxima descontinuação.

2. A partir **de 15 de outubro de 2025,** você não poderá criar novos aplicativos Kinesis Data Analytics para SQL.

3. Excluiremos as aplicações a partir de **27 de janeiro de 2026**. Você não poderá mais iniciar nem operar as aplicações do Amazon Kinesis Data Analytics para SQL. A partir dessa data, não haverá mais suporte ao Amazon Kinesis Data Analytics para SQL. Para obter mais informações, consulte [Descontinuação de aplicações do Amazon Kinesis Data Analytics para SQL](discontinuation.md).

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
<a name="how-it-works-output-lambda-functions"></a>

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. 

**Topics**
+ [Criar uma função do Lambda de destino em Node.js](#how-it-works-lambda-dest-nodejs)
+ [Criar uma função do Lambda de destino em Python](#how-it-works-lambda-dest-python)
+ [Criar uma função do Lambda de destino em Java](#how-it-works-lambda-dest-java)
+ [Criar uma função do Lambda de destino em .NET](#how-it-works-lambda-net)

## Criar uma função do Lambda de destino em Node.js
<a name="how-it-works-lambda-dest-nodejs"></a>

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 | Description | 
| --- | --- | --- | 
| 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
<a name="how-it-works-lambda-dest-python"></a>

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 | Description | 
| --- | --- | --- | 
| kinesis-analytics-output-sns | Python 2.7 | Entrega registros de saída de um aplicativo Kinesis Data Analytics para o Amazon SNS. | 
| 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
<a name="how-it-works-lambda-dest-java"></a>

Para criar uma função do Lambda de destino em Java, use as classes de [Eventos Java](https://github.com/aws/aws-lambda-java-libs/tree/master/aws-lambda-java-events/src/main/java/com/amazonaws/services/lambda/runtime/events).

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;
    }

}
```

## Criar uma função do Lambda de destino em .NET
<a name="how-it-works-lambda-net"></a>

Para criar uma função do Lambda de destino em .NET, use as classes de [eventos .NET](https://github.com/aws/aws-lambda-dotnet/tree/master/Libraries/src/Amazon.Lambda.KinesisAnalyticsEvents).

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 como criar funções do Lambda para pré-processamento e destinos em .NET, consulte [https://github.com/aws/aws-lambda-dotnet/tree/master/Libraries/src/Amazon.Lambda.KinesisAnalyticsEvents](https://github.com/aws/aws-lambda-dotnet/tree/master/Libraries/src/Amazon.Lambda.KinesisAnalyticsEvents).