Considerações e limitações - Amazon EMR

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

Considerações e limitações

Geral

Analise as seguintes limitações ao usar o Lake Formation com o EMR Serverless.

nota

Quando você habilita o Lake Formation para um trabalho do Spark no EMR Sem Servidor, o trabalho inicia um driver de sistema e um driver de usuário. Se você especificou a capacidade pré-inicializada na inicialização, os drivers são provisionados na capacidade pré-inicializada e o número de drivers do sistema é igual ao número de drivers de usuário que você especifica. Se você escolher a capacidade sob demanda, o EMR Sem Servidor iniciará um driver de sistema além de um driver de usuário. Para estimar os custos associados ao trabalho do EMR Sem Servidor com o Lake Formation, use o serviço AWS Calculadora de Preços.

Permissões

  • Para aplicar controles de acesso, as operações EXPLAIN PLAN e DDL, como DESCRIBE TABLE, não expõem informações restritas.

  • Quando você registra a localização de uma tabela no Lake Formation, o acesso aos dados usa as credenciais armazenadas do Lake Formation em vez das permissões IAM da função de tempo de execução de trabalho do EMR Serverless. Os trabalhos falharão se a função registrada para a localização da tabela estiver configurada incorretamente, mesmo quando a função de tempo de execução tiver permissões do S3 IAM para essa localização.

  • A partir do Amazon EMR 7.12, você pode gravar nas tabelas existentes do Hive e do Iceberg usando DataFrameWriter (V2) com as credenciais do Lake Formation no modo de acréscimo. Para operações de substituição ou ao criar novas tabelas, o EMR usa as credenciais da função de tempo de execução para modificar os dados da tabela.

  • As seguintes limitações se aplicam ao usar exibições ou tabelas em cache como dados de origem (essas limitações não se aplicam às visualizações do AWS Glue Data Catalog):

    • Para operações MERGE, DELETE e UPDATE

      • Compatível: uso de visualizações e tabelas em cache como tabelas de origem.

      • Não suportado: uso de visualizações e tabelas em cache em cláusulas de atribuição e condição.

    • Para as operações CREATE OR REPLACE e REPLACE TABLE AS SELECT:

      • Não suportado: uso de visualizações e tabelas em cache como tabelas de origem.

  • As tabelas Delta Lake com dados UDFs na fonte suportam as operações MERGE, DELETE e UPDATE somente quando o vetor de exclusão está ativado.

Registros e depuração

  • O EMR Sem Servidor restringe o acesso aos logs do Spark do driver do sistema em aplicações habilitadas para Lake Formation. Como o driver do sistema é executado com permissões elevadas, os eventos e logs que o driver do sistema gera podem incluir informações confidenciais. Para evitar que usuários ou códigos não autorizados acessem esses dados confidenciais, o EMR Sem Servidor desabilita o acesso aos logs do driver do sistema.

  • Os logs do perfil do sistema são sempre mantidos no armazenamento gerenciado: essa é uma configuração obrigatória que não pode ser desabilitada. Esses registros são armazenados com segurança e criptografados usando uma chave KMS gerenciada pelo cliente ou uma chave KMS AWS gerenciada.

Iceberg

Analise as seguintes considerações ao usar o Apache Iceberg:

  • Você só pode usar o Apache Iceberg com o catálogo de sessões e não com catálogos nomeados arbitrariamente.

  • As tabelas do Iceberg registradas no Lake Formation oferecem suporte apenas às tabelas de metadados history, metadata_log_entries, snapshots, files, manifests e refs. O Amazon EMR oculta as colunas que podem conter dados confidenciais, como partitions, path e summaries. Essa limitação não se aplica às tabelas do Iceberg que não estão registradas no Lake Formation.

  • As tabelas não registradas no Lake Formation oferecem suporte a todos os procedimentos armazenados do Iceberg. Os procedimentos register_table e migrate não são compatíveis com nenhuma tabela.

  • Sugerimos que você use o Iceberg DataFrameWriter V2 em vez do V1.