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

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

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

Pré-requisitos para entrega em tabelas do 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 um perfil do IAM com as permissões necessárias: o Firehose precisa de um perfil do IAM com permissões específicas para acessar as tabelas do AWS Glue e gravar dados no Amazon S3. O mesmo perfil é usado para conceder ao AWS Glue acesso aos buckets do Amazon S3. Você precisa desse perfil do IAM ao criar a tabela do Iceberg e um fluxo do Firehose. Para obter mais informações, consulte Conceder ao Firehose acesso às tabelas do Amazon S3.

  • 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. É possível usar o AWS Glue para criar tabelas do 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 oferece suporte ao modo mesclar na leitura (MOR) de gravação de dados nas tabelas do Apache Iceberg.

Pré-requisitos para entrega em tabelas do Amazon S3

Para entregar dados aos buckets da tabela do Amazon S3, complete os pré-requisitos a seguir.

  • Crie um bucket da tabela do S3, um namespace, tabelas no bucket da tabela e outras etapas de integração descritas em Introdução às tabelas do Amazon S3. Os nomes das colunas devem estar em minúsculas devido às limitações impostas pela integração do catálogo das tabelas do S3, conforme especificado em Limitações da integração do catálogo de tabelas do S3.

  • Crie um perfil do IAM com as permissões necessárias – O Firehose precisa de um perfil do IAM com permissões específicas para acessar as tabelas do AWS Glue e gravar dados nas 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 o perfil do IAM com as permissões necessárias em AWS Lake Formation. Você configura esse perfil do IAM ao criar um fluxo do Firehose. Para obter mais informações, consulte Conceder ao Firehose acesso às tabelas do Amazon S3.

  • Configurar permissões da AWS Lake Formation – A AWS Lake Formation gerencia o acesso aos recursos da sua tabela. O Lake Formation usa seu próprio modelo de permissões que permite um controle de acesso detalhado aos recursos do Catálogo de dados.

Para uma integração passo a passo, consulte o blog Criação de um data lake para fluxo de dados com as tabelas do Amazon S3 e o Amazon Data Firehose. Para obter informações adicionais, consulte também Uso de tabelas do Amazon S3 com os serviços de analytics da AWS.