

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: adição de dados de referência a um aplicativo do Kinesis Data Analytics
<a name="app-add-reference-data"></a>

Neste exercício, você adicionará dados de referência a um aplicativo existente de análise se dados do Kinesis Data Analytics. Para obter informações sobre os dados de referência, consulte os seguintes tópicos:
+ [Amazon Kinesis Data Analytics para aplicativos SQL: como funciona](how-it-works.md)
+ [Configuração de entrada do aplicativo](how-it-works-input.md)

Neste exercício, adicione dados de referência ao aplicativo criado no exercício [Conceitos básicos](https://docs.aws.amazon.com/kinesisanalytics/latest/dev/get-started-exercise.html) do Kinesis Data Analytics. Os dados de referência fornecem o nome da empresa para cada símbolo de índice. Por exemplo:

```
Ticker, Company
AMZN,Amazon
ASD, SomeCompanyA
MMB, SomeCompanyB
WAS,  SomeCompanyC
```

Primeiro, conclua as etapas do exercício [Conceitos básicos](https://docs.aws.amazon.com/kinesisanalytics/latest/dev/get-started-exercise.html) para criar um aplicativo inicial. Em seguida, siga estas etapas para configurar e adicionar dados de referência ao aplicativo:

1. **Preparar os dados**
   + Armazene os dados de referência anteriores como um objeto no Amazon Simple Storage Service (Amazon S3).
   + Crie um perfil do IAM, que o Kinesis Data Analytics pode assumir para ler o objeto do Amazon S3 em seu nome.

1. **Adicione a fonte de dados de referência ao aplicativo. **

   O Kinesis Data Analytics lê o objeto do Amazon S3 e cria uma tabela de referência de aplicativo que você pode consultar no código do aplicativo.

1. **Teste o código.**

   No código do aplicativo, você gravará uma consulta de junção para fazer a junção do fluxo do aplicativo com a tabela de referência de aplicativo, a fim de obter o nome da empresa em cada símbolo de índice.

**Topics**
+ [Etapa 1: preparar](#add-refdata-prepare)
+ [Etapa 2: Adicionar a fonte de dados de referência à configuração do aplicativo.](#add-refdata-create-iamrole)
+ [Etapa 3: Teste: consultar a tabela de referência de aplicativo](#add-refdata-test)

## Etapa 1: preparar
<a name="add-refdata-prepare"></a>

Nesta seção, armazene os dados de referência de exemplo como um objeto no bucket do Amazon S3. Você também cria um perfil do IAM que o Kinesis Data Analytics pode assumir para ler o objeto em seu nome.

### Armazene os dados de referência como objeto do Amazon S3
<a name="prepare-create-s3object"></a>

Nesta etapa, armazene os dados de referência como um objeto do Amazon S3.

1. Abra um editor de texto, adicione os seguintes dados e salve o arquivo como `TickerReference.csv`. 

   ```
   Ticker, Company
   AMZN,Amazon
   ASD, SomeCompanyA
   MMB, SomeCompanyB
   WAS,  SomeCompanyC
   ```

   

1. Faça upload do arquivo `TickerReference.csv` no bucket do S3. Para obter mais informações, consulte [Fazer upload de objetos no Amazon S3](https://docs.aws.amazon.com/AmazonS3/latest/userguide/UploadingObjectsintoAmazonS3.html) no *Manual do usuário do Amazon Simple Storage Service*.

### Criar um perfil do IAM
<a name="prepare-create-iamrole"></a>

Crie um perfil do IAM, que o Kinesis Data Analytics pode assumir para ler o objeto do Amazon S3.

1. Em AWS Identity and Access Management (IAM), crie uma função do IAM chamada**KinesisAnalytics-ReadS3Object**. Para criar o perfil, siga as instruções em [Criação de um perfil para um serviço da Amazon (Console de gerenciamento da AWS)](https://docs.aws.amazon.com/IAM/latest/UserGuide/id_roles_create_for-service.html#roles-creatingrole-service-console) no *Guia do usuário do IAM*.

   No console do IAM, especifique o seguinte:
   + Em **Selecione o tipo de perfil**, escolha **AWS Lambda**. Depois de criar a função, você alterará a política de confiança para permitir que o Kinesis Data Analytics ( AWS Lambda não) assuma a função.
   + Não anexe nenhuma política na página **Attach Policy**.

1. Atualize as políticas de perfil do IAM:

   

   1. No console do IAM, selecione o perfil criado.

   1. Na guia **Relações de confiança**, atualize a política de confiança para conceder ao Kinesis Data Analytics permissões para assumir a função. A política de confiança é mostrada a seguir:

------
#### [ JSON ]

****  

      ```
      {
        "Version":"2012-10-17",		 	 	 
        "Statement": [
          {
            "Effect": "Allow",
            "Principal": {
              "Service": "kinesisanalytics.amazonaws.com"
            },
            "Action": "sts:AssumeRole"
          }
        ]
      }
      ```

------

      

   1. **Na guia **Permissões**, anexe uma política gerenciada pela Amazon chamada AmazonS3. ReadOnlyAccess** Isso concede ao perfil permissões para ler um objeto do Amazon S3. Esta política é mostrada a seguir:

------
#### [ JSON ]

****  

      ```
      {
        "Version":"2012-10-17",		 	 	 
        "Statement": [
          {
            "Effect": "Allow",
            "Action": [
              "s3:Get*",
              "s3:List*"
            ],
            "Resource": "*"
          }
        ]
      }
      ```

------

## Etapa 2: Adicionar a fonte de dados de referência à configuração do aplicativo.
<a name="add-refdata-create-iamrole"></a>

Nesta etapa, adicione a fonte de dados de referência à configuração do aplicativo. Para começar, as seguintes informações são necessárias: 
+ Nome do seu bucket do S3 e nome da chave do objeto
+ O nome do recurso da Amazon (ARN) do perfil do IAM.

1. Na página principal do aplicativo, selecione **Connect reference data (Conectar dados de referência)**.

1. Na página **Conectar fonte de dados de referência**, selecione o bucket do Amazon S3 que contém seu objeto de dados de referência e insira o nome da chave do objeto.

1. Insira **CompanyName** em **In-application reference table name (Nome da tabela de referência no aplicativo)**.

1. Na seção **Acesso aos recursos escolhidos**, **escolha Escolher entre as funções do IAM que o Kinesis Analytics pode assumir** e escolha a função **KinesisAnalytics-reads3Object** do IAM que você criou na seção anterior.

1. Escolha **Discover schema (Descobrir esquema)**. O console detectará duas colunas nos dados de referência.

1. Escolha **Save and close**.

## Etapa 3: Teste: consultar a tabela de referência de aplicativo
<a name="add-refdata-test"></a>

Agora você pode consultar a tabela de referência de aplicativo, `CompanyName`. Você pode usar as informações de referência para enriquecer o aplicativo, fazendo a junção dos dados de preço do índice com a tabela de referência de dados. O resultado mostrará o nome da empresa.

1. Substitua o código do aplicativo pelo seguinte. A consulta faz a junção do fluxo de entrada de aplicativo com a tabela de referência de aplicativo. O código do aplicativo grava os resultados em outro fluxo no aplicativo, `DESTINATION_SQL_STREAM`. 

   ```
   CREATE OR REPLACE STREAM "DESTINATION_SQL_STREAM" (ticker_symbol VARCHAR(4), "Company" varchar(20), sector VARCHAR(12), change DOUBLE, price DOUBLE);
   
   CREATE OR REPLACE PUMP "STREAM_PUMP" AS INSERT INTO "DESTINATION_SQL_STREAM"
      SELECT STREAM ticker_symbol, "c"."Company", sector, change, price
      FROM "SOURCE_SQL_STREAM_001" LEFT JOIN "CompanyName" as "c"
      ON "SOURCE_SQL_STREAM_001".ticker_symbol = "c"."Ticker";
   ```

1. Verifique se a saída do aplicativo aparece na **SQLResults**guia. Verifique se algumas linhas mostram nomes de empresa (os dados de referência de exemplo não têm todos os nomes de empresa).