Considerações e limitações
Confira as considerações e limitações a seguir ao usar o Lake Formation com o EMR Sem Servidor.
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 Pricing Calculator
O Amazon EMR Sem Servidor com o Lake Formation está disponível em todas as regiões do EMR Sem Servidor com suporte, exceto AWS GovCloud (EUA-Leste) e AWS GovCloud (EUA-Oeste).
-
O Amazon EMR Sem Servidor oferece suporte ao controle de acesso refinado por meio do Lake Formation somente para tabelas do Apache Hive e do Apache Iceberg. Os formatos do Apache Hive incluem Parquet, ORC e xSV.
-
As aplicações habilitadas para Lake Formation não oferecem suporte ao uso de imagens personalizadas do EMR Sem Servidor.
-
Você não pode desativar
DynamicResourceAllocation
para trabalhos do Lake Formation. -
Você só pode usar o Lake Formation com trabalhos do Spark.
-
O EMR Sem Servidor com Lake Formation oferece suporte apenas a uma única sessão do Spark durante todo o trabalho.
-
O EMR Sem Servidor com Lake Formation só oferece suporte a consultas de tabelas entre contas compartilhadas por meio de links de recursos.
-
As seguintes opções não são compatíveis:
-
Conjuntos de dados distribuídos resilientes (RDD)
-
Streaming do Spark
-
Gravação com as permissões concedidas pelo Lake Formation
-
Controle de acesso para colunas aninhadas
-
-
O EMR Sem Servidor bloqueia funcionalidades que podem prejudicar o isolamento completo do driver do sistema, incluindo as seguintes:
-
UDTs, HiveUDFs e qualquer função definida pelo usuário que envolva classes personalizadas
-
Fontes de dados personalizadas
-
Fornecimento de JARs adicionais para extensão, conector ou metastore do Spark
-
ANALYZE TABLE
command
-
-
Para impor controles de acesso,
EXPLAIN PLAN
e operações de DDL, comoDESCRIBE TABLE
, não expõem informações restritas. -
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 mais acesso, 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 desabilitou o acesso aos logs do driver do sistema. Para solucionar problemas, entre em contato com o suporte da AWS.
-
Se você registrou uma localização de tabela no Lake Formation, o caminho de acesso aos dados passa pelas credenciais armazenadas do Lake Formation, independentemente da permissão do IAM para o perfil de runtime do trabalho do EMR Sem Servidor. Se você configurar incorretamente o perfil registrado com a localização da tabela, os trabalhos enviados que usam o perfil com a permissão do IAM para o S3 na localização da tabela falharão.
-
Gravar em uma tabela do Lake Formation usa a permissão do IAM em vez das permissões concedidas pelo Lake Formation. Se o runtime do trabalho tiver as permissões necessárias do S3, você poderá usá-lo para executar operações de gravação.
Observe estas considerações e limitaçõ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
erefs
. O Amazon EMR oculta as colunas que podem conter dados confidenciais, comopartitions
,path
esummaries
. Essa limitação não se aplica às tabelas do Iceberg que não estão registradas no Lake Formation. -
As tabelas que você não registra no Lake Formation oferecem suporte a todos os procedimentos armazenados do Iceberg. Os procedimentos
register_table
emigrate
não são compatíveis com nenhuma tabela. -
Recomendamos usar o Iceberg DataFrameWriterV2 em vez do V1.