Pré-requisitos para uso das tabelas do Apache Iceberg como destino - Amazon Data Firehose

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

Pré-requisitos para uso das tabelas do Apache Iceberg como destino

Escolha entre as opções a seguir para preencher os pré-requisitos necessários.

Pré-requisitos para entrega em tabelas Iceberg no Amazon S3

Antes de começar, conclua os pré-requisitos a seguir.

  • Crie um bucket do Amazon S3: você deve criar um bucket do Amazon S3 para adicionar o caminho do arquivo de metadados durante a criação das tabelas. Para obter mais informações, consulte Criação de um bucket do S3.

  • Crie uma IAM função com as permissões necessárias — O Firehose precisa de uma IAM função com permissões específicas para acessar AWS Glue tabelas e gravar dados no Amazon S3. A mesma função é usada para conceder AWS Glue acesso aos buckets do Amazon S3. Você precisa dessa IAM função ao criar o Iceberg Table e um stream do Firehose. Para obter mais informações, consulte Concessão ao Firehose de acesso a um destino de tabelas do Apache Iceberg.

  • Crie tabelas do Apache Iceberg: se você estiver configurando chaves exclusivas no fluxo do Firehose para atualizações e exclusões, o Firehose as validará se a tabela e as chaves exclusivas existirem como parte da criação do fluxo. Para esse cenário, você deve criar tabelas antes de criar o fluxo do Firehose. Você pode usar AWS Glue para criar tabelas Apache Iceberg. Para obter mais informações, consulte Criar tabelas do Apache Iceberg. Se você não estiver configurando chaves exclusivas no fluxo do Firehose, não precisará criar tabelas do Iceberg antes de criar um fluxo do Firehose.

    nota

    O Firehose oferece suporte à versão e formato de tabela a seguir para tabelas do Apache Iceberg.

    • Versão de formato de tabela: o Firehose oferece suporte apenas ao formato de tabela V2. Não crie tabelas no formato V1, caso contrário, você receberá um erro e, em vez disso, os dados serão entregues ao bucket de erros do S3.

    • Formato de armazenamento de dados: o Firehose grava dados nas tabelas do Apache Iceberg no formato Parquet.

    • Operação em nível de linha — o Firehose suporta o modo Merge-on-Read (MOR) de gravação de dados nas tabelas Apache Iceberg.

Pré-requisitos para entrega nas tabelas do Amazon S3

Para entregar dados aos buckets de tabela do Amazon S3, preencha os seguintes pré-requisitos.

  • Crie uma IAM função com as permissões necessárias — O Firehose precisa de uma IAM função com permissões específicas para acessar AWS Glue tabelas e gravar dados em tabelas em um bucket de tabelas do Amazon S3. Para gravar em tabelas em um bucket de tabelas do S3, você também deve fornecer à IAM função as permissões necessárias em AWS Lake Formation. Você configura essa IAM função ao criar um stream do Firehose. Para obter mais informações, consulte Conceder ao Firehose acesso às tabelas do Amazon S3.

  • Crie um bucket do S3 Table, namespace, tabelas no bucket da tabela e outras etapas de integração descritas em Integração de tabelas do Amazon S3 com serviços de análise. AWS

    nota

    Nas etapas descritas, conceda AWS Lake Formation DESCRIBE permissão para a IAM função que você criou anteriormente.

    Você usará os nomes dos links de recursos para banco de dados e tabela criados como parte dos pré-requisitos como nome do banco de dados e da tabela na configuração do stream do Firehose para fins de roteamento. Você pode usá-las na seção Chave exclusiva da configuração do stream do Firehose se estiver roteando para uma única tabela ou enviá-las como parte dos dados de entrada para o Firehose rotear para a tabela correta usando expressões de consulta. JSON

    Para obter mais formas de criar links de recursos, consulte Criação de um link de recurso para uma tabela compartilhada do Catálogo de Dados ou Criação de um link de recurso para um banco de dados compartilhado do Catálogo de Dados no guia do usuário do Lake Formation.