

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: análise de strings de log com base em expressões regulares (função REGEX\$1LOG\$1PARSE)
<a name="examples-transforming-strings-regexlogparse"></a>

Esse exemplo usa a função `REGEX_LOG_PARSE` para transformar uma string no Amazon Kinesis Data Analytics. O `REGEX_LOG_PARSE` analisa uma string baseada nos padrões de expressão comum de Java padrão. Para obter mais informações, consulte [REGEX\$1LOG\$1PARSE](https://docs.aws.amazon.com/kinesisanalytics/latest/sqlref/sql-reference-regex-log-parse.html) em *Referência SQL do Amazon Managed Service for Apache Flink*.

Neste exemplo, você grava os registros a seguir em um stream do Amazon Kinesis: 

```
{"LOGENTRY": "203.0.113.24 - - [25/Mar/2018:15:25:37 -0700] \"GET /index.php HTTP/1.1\" 200 125 \"-\" \"Mozilla/5.0 [en] Gecko/20100101 Firefox/52.0\""}
{"LOGENTRY": "203.0.113.24 - - [25/Mar/2018:15:25:37 -0700] \"GET /index.php HTTP/1.1\" 200 125 \"-\" \"Mozilla/5.0 [en] Gecko/20100101 Firefox/52.0\""}
{"LOGENTRY": "203.0.113.24 - - [25/Mar/2018:15:25:37 -0700] \"GET /index.php HTTP/1.1\" 200 125 \"-\" \"Mozilla/5.0 [en] Gecko/20100101 Firefox/52.0\""}
...
```



Em seguida, você criará um aplicativo Kinesis Data Analytics no console com o fluxo de dados Kinesis como origem de streaming. O processo de descoberta lê registros de exemplo na origem de streaming e infere um esquema de aplicativo com uma coluna (LOGENTRY), como mostrado a seguir.

![\[Captura de tela do console mostrando o esquema no aplicativo com a coluna LOGENTRY.\]](http://docs.aws.amazon.com/pt_br/kinesisanalytics/latest/dev/images/ex_regex_log_parse_0.png)


Em seguida, você usa o código do aplicativo com a função `REGEX_LOG_PARSE` para analisar a cadeia de log e recuperar os elementos de dados. Insira dos dados resultantes em outro fluxo de aplicativo, como mostramos na captura de tela a seguir: 



![\[Captura de tela do console mostrando a tabela de dados resultante com ROWTIME, LOGENTRY e colunas MATCH1. MATCH2\]](http://docs.aws.amazon.com/pt_br/kinesisanalytics/latest/dev/images/ex_regex_log_parse_1.png)


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

## Etapa 1: Criar um fluxo de dados Kinesis
<a name="examples-transforming-strings-regexlogparse-1"></a>

Crie um fluxo de dados do Amazon Kinesis e preencha registros de log 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 **Data Streams (Fluxos de dados)** no painel de navegação.

1. Escolha **Create Kinesis stream (Criar fluxo do Kinesis)** e crie um fluxo 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. Execute o seguinte código Python para preencher os registros de log de exemplo. Esse código simples grava continuamente o mesmo registro de log no fluxo.

   ```
    
   import json
   import boto3
   
   STREAM_NAME = "ExampleInputStream"
   
   
   def get_data():
       return {
           "LOGENTRY": "203.0.113.24 - - [25/Mar/2018:15:25:37 -0700] "
           '"GET /index.php HTTP/1.1" 200 125 "-" '
           '"Mozilla/5.0 [en] Gecko/20100101 Firefox/52.0"'
       }
   
   
   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-transforming-strings-regexlogparse-2"></a>

Em seguida, 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** e especifique um nome de aplicativo.

1. Na página de detalhes do aplicativo, escolha **Connect streaming data (Conectar dados de streaming)**. 

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. Escolha a opção para criar uma função do IAM.

   1. Escolha **Discover schema (Descobrir esquema)**. Aguarde o console mostrar o esquema inferido e os registros de exemplo usados para inferir o esquema do fluxo do aplicativo criado. O esquema inferido tem apenas uma coluna.

   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" (logentry VARCHAR(24), match1 VARCHAR(24), match2 VARCHAR(24));
      
      CREATE OR REPLACE PUMP "STREAM_PUMP" AS INSERT INTO "DESTINATION_SQL_STREAM"
          SELECT STREAM T.LOGENTRY, T.REC.COLUMN1, T.REC.COLUMN2
          FROM 
               (SELECT STREAM LOGENTRY,
                   REGEX_LOG_PARSE(LOGENTRY, '(\w.+) (\d.+) (\w.+) (\w.+)') AS REC
                   FROM SOURCE_SQL_STREAM_001) AS T;
      ```

   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.