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á.
Usar o recurso de descoberta de esquema em dados em streaming
nota
Depois de 12 de setembro de 2023, você não poderá criar novos aplicativos usando o Kinesis Data Firehose como fonte se ainda não estiver usando o Kinesis Data Analytics for SQL. Para obter mais informações, consulte Limites.
Fornecer um esquema de entrada que descreve como os registros na entrada de streaming são mapeados para um stream no aplicativo pode ser trabalhoso e propenso a erros. Use a API DiscoverInputSchema (chamada de API de descoberta) para inferir um esquema. Usando amostras aleatórias de registros na fonte de streaming, a API pode inferir um esquema (ou seja, nomes de colunas, tipos de dados e posição do elemento de dados nos dados recebidos).
nota
Para usar a API de descoberta para gerar um esquema de um arquivo armazenado no Amazon S3, consulte Usar o recurso de descoberta de esquema em dados estáticos.
O console usa a API de descoberta para gerar um esquema para uma fonte de streaming especificada. Usando o console, é possível também atualizar o esquema, inclusive adicionar ou remover colunas, alterar nomes de colunas ou tipos de dados e assim por diante. No entanto, faça alterações cuidadosamente para garantir que um esquema inválido não seja criado.
Após finalizar um esquema para o stream no aplicativo, será possível usar funções para manipular strings e valores de data e hora. Use essas funções no código do aplicativo ao trabalhar com linhas no stream no aplicativo resultante. Para ter mais informações, consulte Exemplo: Transformação de valores DateTime .
Nomeação de colunas durante a descoberta de esquema
Durante a descoberta de esquema, o Amazon Kinesis Data Analytics tenta reter o máximo possível do nome da coluna original da fonte de entrada de streaming, exceto nos seguintes casos:
-
O nome do stream de origem é uma palavra-chave reservada do SQL, como
TIMESTAMP
,USER
,VALUES
ouYEAR
. -
O nome da coluna de stream de origem contém caracteres não suportados. Somente letras, números e o caractere de sublinhado (_) são suportados.
-
O nome da coluna de stream de origem começa com um número.
-
O nome da coluna de stream de origem tem mais de 100 caracteres.
Se uma coluna for renomeada, o nome da coluna do esquema renomeada começará com COL_
. Em alguns casos, nenhum nome de coluna original pode ser retido, por exemplo, se todo o nome tiver caracteres não suportados. Nesse caso, a coluna será chamada COL_#
, com # sendo um número que indica o local da coluna na ordem da coluna.
Após a conclusão da descoberta, você poderá atualizar o esquema usando o console para adicionar ou remover colunas ou alterar nomes de coluna, tipos de dados ou tamanho de dados.
Exemplos de nomes de coluna sugeridos pela descoberta
Nome da coluna de stream de origem | Nome da coluna sugerido pela descoberta |
---|---|
USER |
COL_USER |
USER@DOMAIN |
COL_USERDOMAIN |
@@ |
COL_0 |
Problemas de descoberta de esquema
O que acontecerá se o Kinesis Data Analytics não inferir um esquema para uma determinada fonte de streaming?
O Kinesis Data Analytics infere o esquema para formatos comuns, como CSV e JSON, que são codificados em UTF-8. O Kinesis Data Analytics oferece suporte a quaisquer registros codificados em UTF-8 (incluindo texto bruto, como logs e registros de aplicativos) com colunas personalizadas e delimitadores de linhas. Se o Kinesis Data Analytics não inferir um esquema, você poderá definir um esquema manualmente usando o editor de esquema no console (ou usando a API).
Se os dados não seguirem um padrão (que você pode especificar usando o editor de esquema), defina um esquema como uma única coluna do tipo VARCHAR(N), em que N é o maior número de caracteres que você espera que seu registro inclua. A partir daí, será possível usar a manipulação de strings e de data e hora para estruturar os dados a partir do momento que estiverem no stream no aplicativo. Para ver exemplos, consulte Exemplo: Transformação de valores DateTime .