View a markdown version of this page

Crie uma entrega de tabela de streaming - Amazon Kinesis Data Streams

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

Crie uma entrega de tabela de streaming

Crie uma entrega que envie continuamente registros de um stream do Amazon Kinesis Data Streams para uma tabela de streaming no Apache Iceberg apoiada por um bucket de tabelas do S3. Você pode criar uma entrega com o Console de gerenciamento da AWS ou AWS CLI o. Quando você cria uma entrega, o Amazon Kinesis Data Streams cria a tabela Iceberg de destino no bucket de tabela que você especificar.

nota

Antes de criar uma entrega, preencha os pré-requisitos emComeçando com tabelas de streaming, incluindo a função de execução do serviço IAM descrita em. Permissões do IAM para entrega de dados A entrega de uma tabela de streaming exige um esquema no AWS Glue Schema Registry e uma fila de mensagens mortas.

Usar o Console de gerenciamento da AWS

  1. Abra o console Kinesis em. https://console.aws.amazon.com/kinesis

  2. No painel de navegação, escolha Tabelas de streaming e, em seguida, escolha Criar tabela de streaming.

  3. Etapa 1: Configuração da fonte. Em Detalhes da entrega, insira um nome de entrega. Os caracteres aceitáveis são letras maiúsculas e minúsculas, números, sublinhados, hífens e pontos. Em Source, escolha o On-Demand stream a partir do qual fazer a entrega. Somente On-Demand transmissões são exibidas. Escolha Próximo.

  4. Etapa 2: Configuração de destino. Em Configuração de conversão de registro, escolha um formato de conversão de registro:

    • JSON — registros JSON que são validados em relação a um esquema no Schema Registry. AWS Glue Forneça o ARN do esquema no registro Glue Schema.

    • Glue Schema registry JSON — Converta registros usando um esquema JSON do AWS Glue Schema Registry.

    Para o registro do esquema Glue, especifique o ARN do esquema ou escolha Procurar para selecionar um.

  5. Em Tabela de destino, especifique onde o Amazon Kinesis Data Streams cria a tabela Iceberg:

    • ARN do balde de mesa S3 — o ARN do balde de mesa S3. Escolha Browse S3 para selecionar um.

    • Namespace — o namespace da tabela (somente letras minúsculas, números e sublinhados).

    • Nome da tabela — o nome da tabela a ser criada.

    • Nome da coluna — o nome de um campo de data e hora do seu esquema usado para particionar a tabela por hora. O campo deve ser um campo de string com o formato de data e hora no esquema.

    • Tipo de compressão — escolha ZSTD, Snappy ou None.

    • Atualização dos dados — o tempo máximo de buffer em segundos antes da entrega dos registros (mínimo 300, máximo 900).

    Escolha Próximo.

  6. Etapa 3: Configuração adicional. Configure o seguinte e escolha Avançar:

    • Configuração de criptografia — por padrão, os dados são criptografados com a criptografia padrão do Amazon S3. Para usar uma chave gerenciada pelo cliente, selecione Personalizar configurações de criptografia (avançado).

    • Acesso ao serviço — para a função ARN do IAM, escolha ou crie a função do IAM que concede acesso ao destino. Escolha Criar função do IAM para criar uma.

    • Fila de letras mortas — para o URI do bucket do S3, escolha o bucket do Amazon S3 que armazena registros não entregues. Opcionalmente, defina um prefixo de saída de erro do bucket do S3.

    • Entrega de registros — opcionalmente, selecione Entregar ao Amazon CloudWatch Logs para capturar os diagnósticos de entrega.

    • Etiquetas — opcionalmente, adicione etiquetas de valores-chave para identificar e organizar sua entrega.

  7. Etapa 4: Revise e crie. Revise sua configuração e escolha Criar tabela de streaming. A entrega passa de CREATING para ACTIVE após a conclusão do provisionamento.

Usar o AWS CLI

Use o create-channel comando para criar uma entrega de tabela de streaming. Essa configuração requer um esquema do AWS Glue Schema Registry e uma fila de mensagens mortas:

aws kinesis create-channel \ --channel-name "my-iceberg-delivery" \ --service-execution-role-arn "arn:aws:iam::123456789012:role/my-channel-role" \ --stream-configuration-list '[ { "StreamARN": "arn:aws:kinesis:us-east-1:123456789012:stream/my-stream", "RecordConfiguration": { "RecordFormatType": "JSON", "GSRSchemaARN": "arn:aws:glue:us-east-1:123456789012:schema/my-registry/my-schema" } } ]' \ --s3-tables-destination-configuration '{ "DataFreshnessInSeconds": 300, "DeadLetterQueueS3Configuration": { "BucketARN": "arn:aws:s3:::my-dlq-bucket", "ExpectedBucketOwner": "123456789012", "ErrorOutputPrefix": "dlq/" }, "S3TablesConfigurationList": [ { "TableBucketARN": "arn:aws:s3tables:us-east-1:123456789012:bucket/my-table-bucket", "Namespace": "my_namespace", "TableName": "my_table", "CompressionType": "ZSTD", "PartitionSpec": { "PartitionFields": [ { "SourceName": "timestamp", "Transform": "TIME_HOUR" } ] } } ] }'

O comando retorna o canal ARN (ChannelARN). Use-o com describe-channel para verificar se a entrega atinge o estado ATIVO. Consulte Descreva a entrega de uma tabela de streaming.

Referência da API — veja CreateChannel na Referência da API do Amazon Kinesis Data Streams.