O Amazon Redshift não permitirá mais a criação de funções definidas pelo usuário (UDFs) do Python a partir de 1.º de novembro de 2025. Se quiser usar UDFs do Python, você deve criá-las antes dessa data. As UDFs do Python existentes continuarão a funcionar normalmente. Para ter mais informações, consulte a publicação de blog
Visualizações do AWS Glue Data Catalog
Este tópico descreve como criar visualizações no AWS Glue Data Catalog. Você pode usar visualizações no Catálogo de Dados para acessar dados em diferentes fontes de dados usando o mesmo esquema.
Ao criar visualizações no Catálogo de Dados, você pode criar um único esquema de visualização comum e um objeto de metadados a ser usado em vários mecanismos, como Amazon Athena e Amazon EMR Spark. Isso permite a você usar as mesmas exibições nos data lakes e nos data warehouses para se adequar aos casos de uso. As exibições no Data Catalog são especiais por serem categorizadas como exibições definidoras, nas quais as permissões de acesso são definidas pelo usuário que criou a exibição, e não pelo usuário que consulta a exibição. Estes são alguns casos de uso e benefícios da criação de exibições no Data Catalog:
-
Crie uma exibição que restrinja o acesso aos dados com base nas permissões das quais o usuário precisa. Por exemplo, você pode usar as exibições do Data Catalog para evitar que funcionários que não trabalham no departamento de RH vejam informações de identificação pessoal (PII).
-
Verifique se os usuários não conseguem acessar registros incompletos. Aplicando determinados filtros à exibição do Data Catalog, você garante que os registros de dados em uma exibição do Data Catalog estejam sempre completos.
-
As exibições do Data Catalog têm um benefício de segurança incluído de garantir que a definição da consulta usada para criar a exibição seja concluída para criar a exibição. Esse benefício de segurança significa que as exibições no Data Catalog não são suscetíveis a comandos SQL de jogadores mal-intencionados.
-
As exibições no Data Catalog oferecem as mesmas vantagens das exibições normais, como permitir a usuários acessar uma exibição sem disponibilizar a tabela subjacente para usuários.
Para criar uma exibição no Data Catalog, você deve ter uma tabela externa do Spectrum, um objeto contido em uma unidade de compartilhamento de dados gerenciada pelo Lake Formation, ou uma tabela do Apache Iceberg.
As definições de exibição do Data Catalog são armazenadas no AWS Glue Data Catalog. Use o AWS Lake Formation para conceder acesso por meio das concessões de recursos, concessões de colunas ou dos controles de acesso baseados em etiquetas. Para obter mais informações sobre como conceder e revogar acesso no Lake Formation, consulte Granting and revoking permissions on Data Catalog resources.
Quando você usa o Amazon Redshift para executar uma consulta que faz referência a essas visualizações do AWS Glue Data Catalog, o Amazon Redshift automaticamente mascara campos em determinadas colunas de tabela e visualização do sistema ao registrar metadados sobre essa consulta. Para obter mais informações, consulte Registros em log seguros no Guia de gerenciamento do Amazon Redshift.
Pré-requisitos
Para criar uma exibição no Data Catalog, verifique se você tem os seguintes pré-requisitos atendidos:
Verifique se o perfil do IAM tem a política de confiança a seguir.
-
Você também precisa da politica da função da aprovação.
Por fim, você também precisa das seguintes permissões:
Glue:GetDatabaseGlue:GetDatabasesGlue:CreateTableGlue:GetTableGlue:UpdateTableGlue:DeleteTableGlue:GetTablesGlue:SearchTablesGlue:BatchGetPartitionGlue:GetPartitionsGlue:GetPartitionGlue:GetTableVersionGlue:GetTableVersions
Exemplo completo
Comece criando um esquema externo com base no banco de dados do Data Catalog.
CREATE EXTERNAL SCHEMA IF NOT EXISTS external_schema FROM DATA CATALOG DATABASE 'external_data_catalog_db' IAM_ROLE 'arn:aws:iam::123456789012:role/sample-role';
Você já pode criar uma exibição do Data Catalog.
CREATE EXTERNAL PROTECTED VIEW external_schema.remote_view AS SELECT * FROM external_schema.remote_table;
Você pode acabar começando a consultar a exibição.
SELECT * FROM external_schema.remote_view;
Para obter mais informações sobre os comandos SQL relacionados a exibições no Data Catalog, consulte CREATE EXTERNAL VIEW, ALTER EXTERNAL VIEW e DROP EXTERNAL VIEW.
Considerações e limitações
Estas são considerações e limitações que podem se aplicar às exibições criadas no Data Catalog.
As visões do AWS Glue Data Catalog são aceitas apenas em clusters provisionados do RA3 ou grupos de trabalho do Redshift sem servidor.
Você não pode criar uma exibição do Data Catalog baseada em outra exibição.
Você só pode ter dez tabelas base em uma exibição do Data Catalog.
O definidor da exibição deve ter permissões
SELECT GRANTABLEcompletas nas tabelas base.As exibições só podem conter objetos e integrações do Lake Formation. Os objetos a seguir não são permitidos dentro de uma exibição.
Tabelas de sistema
Funções definidas pelo usuário (UDFs)
Tabelas do Redshift, exibições, visões materializadas e exibições de vinculação tardia que não estejam em um compartilhamento de dados gerenciado pelo Lake Formation.
As exibições não podem conter tabelas do Redshift Spectrum aninhadas.
As representações AWS Glue dos objetos base de uma exibição devem estar na mesma Conta da AWS e na mesma região da exibição.