

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á.

# Exemplo: janela em cascata usando ROWTIME
<a name="examples-window-tumbling-rowtime"></a>

Quando uma consulta em janela processa cada janela de forma não sobreposta, é chamada de *janela em cascata*. Para obter detalhes, consulte [Janelas em cascata (Agregações usando GROUP BY)](tumbling-window-concepts.md). Este exemplo do Amazon Kinesis Data Analytics usa a coluna `ROWTIME` para criar janelas em cascata. A coluna `ROWTIME` representa o momento em que o registro foi lido pelo aplicativo.

Neste exemplo, você grava os registros a seguir em um streaming de dados do Kinesis. 

```
{"TICKER": "TBV", "PRICE": 33.11}
{"TICKER": "INTC", "PRICE": 62.04}
{"TICKER": "MSFT", "PRICE": 40.97}
{"TICKER": "AMZN", "PRICE": 27.9}
...
```



Em seguida, você cria um aplicativo Kinesis Data Analytics no, com Console de gerenciamento da AWS o stream de dados do Kinesis como fonte de streaming. O processo de descoberta lê os registros de exemplo na origem de streaming e infere um esquema no aplicativo com duas colunas (`TICKER` e `PRICE`) conforme mostrado a seguir.

![Captura de tela do console mostrando o esquema no aplicativo com as colunas de preço e de marcador.](http://docs.aws.amazon.com/pt_br/kinesisanalytics/latest/dev/images/ex_tumbling_rowtime_schema.png)


Você usa o código do aplicativo com as funções `MIN` e `MAX` para criar uma agregação em janela dos dados. Em seguida, insira os dados resultantes em outro stream no aplicativo, conforme mostrado na captura de tela a seguir: 



![Captura de tela do console mostrando os dados resultantes em um stream no aplicativo.](http://docs.aws.amazon.com/pt_br/kinesisanalytics/latest/dev/images/ex_tumbling_rowtime.png)


No procedimento a seguir, você cria um aplicativo do Kinesis Data Analytics que agrega valores no stream de entrada em uma janela em cascata com base em ROWTIME.

**Topics**
+ [Etapa 1: Criar um fluxo de dados Kinesis](#examples-tumbling-window-1)
+ [Etapa 2: Criar o aplicativo Kinesis Data Analytics](#examples-tumbling-window-2)

## Etapa 1: Criar um fluxo de dados Kinesis
<a name="examples-tumbling-window-1"></a>

Crie um fluxo de dados do Amazon Kinesis e preencha registros da seguinte forma:

1. [Faça login no Console de gerenciamento da AWS e abra o console do Kinesis em https://console.aws.amazon.com /kinesis.](https://console.aws.amazon.com/kinesis)

1. Selecione **Fluxos de dados** no painel de navegação.

1. Selecione **Create Kinesis stream (Criar stream do Kinesis)** e crie um stream com um estilhaço. Para obter mais informações, consulte [Criar um fluxo](https://docs.aws.amazon.com/streams/latest/dev/learning-kinesis-module-one-create-stream.html) no *Guia do desenvolvedor do Amazon Kinesis Data Streams*.

1. Para gravar registros em um streaming de dados do Kinesis em um ambiente de produção, recomendamos usar o [Kinesis Client Library](https://docs.aws.amazon.com/streams/latest/dev/developing-producers-with-kpl.html) ou a [API do Kinesis Data Streams](https://docs.aws.amazon.com/streams/latest/dev/developing-producers-with-sdk.html). Para simplificar, este exemplo usa o script Python a seguir para gerar registros. Execute o código para preencher os registros de marcador de exemplo. Esse código simples grava continuamente um registro de marcador aleatório no stream. Mantenha o script em execução para que você possa gerar o esquema do aplicativo em uma etapa posterior.

   ```
    
   import datetime
   import json
   import random
   import boto3
   
   STREAM_NAME = "ExampleInputStream"
   
   
   def get_data():
       return {
           "EVENT_TIME": datetime.datetime.now().isoformat(),
           "TICKER": random.choice(["AAPL", "AMZN", "MSFT", "INTC", "TBV"]),
           "PRICE": round(random.random() * 100, 2),
       }
   
   
   def generate(stream_name, kinesis_client):
       while True:
           data = get_data()
           print(data)
           kinesis_client.put_record(
               StreamName=stream_name, Data=json.dumps(data), PartitionKey="partitionkey"
           )
   
   
   if __name__ == "__main__":
       generate(STREAM_NAME, boto3.client("kinesis"))
   ```

## Etapa 2: Criar o aplicativo Kinesis Data Analytics
<a name="examples-tumbling-window-2"></a>

Crie um aplicativo Kinesis Data Analytics, da seguinte maneira:

1. [Abra o console do Managed Service for Apache Flink em https://console.aws.amazon.com /kinesisanalytics.](https://console.aws.amazon.com/kinesisanalytics)

1. Escolha **Create application (Criar aplicativo)**, insira um nome para o aplicativo e selecione **Create application (Criar aplicativo)**.

1. Na página de detalhes do aplicativo, escolha **Connect streaming data (Conectar dados de streaming)** para se conectar com a fonte. 

1. Na página **Connect to source (Conectar com a fonte)**, faça o seguinte:

   

   1. Escolha o stream criado na seção anterior. 

   1. Selecione **Discover schema (Descobrir esquema)**. Aguarde o console mostrar o esquema inferido e os registros de exemplos usados para inferir o esquema do stream do aplicativo criado. O esquema inferido tem duas colunas.

   1. Escolha **Save schema and update stream samples**. Depois que o console salvar o esquema, escolha **Exit (Sair)**.

   1. Escolha **Save and continue**.

1. Na página de detalhes de aplicativo, escolha **Go to SQL editor (Ir para o editor de SQL)**. Para iniciar o aplicativo, escolha **Yes, start application (Sim, iniciar o aplicativo)** na caixa de diálogo exibida.

1. No editor SQL, escreva o código do aplicativo e verifique os resultados da seguinte forma:

   1. Copie o código de aplicativo a seguir e cole-o no editor.

      ```
      CREATE OR REPLACE STREAM "DESTINATION_SQL_STREAM" (TICKER VARCHAR(4), MIN_PRICE REAL, MAX_PRICE REAL);
      
      CREATE OR REPLACE PUMP "STREAM_PUMP" AS INSERT INTO "DESTINATION_SQL_STREAM"
          SELECT STREAM TICKER, MIN(PRICE), MAX(PRICE)
              FROM "SOURCE_SQL_STREAM_001"
              GROUP BY TICKER, 
                  STEP("SOURCE_SQL_STREAM_001".ROWTIME BY INTERVAL '60' SECOND);
      ```

   1. Escolha **Save and run SQL**. 

      Na guia **Real-time analytics (Análise em tempo real)**, você pode ver todos os fluxos de aplicativo criados pelo aplicativo e verificar os dados. 