Pular para o conteúdo principal

Formação de lagos AWS e integração de cola: Um guia passo a passo

Aprenda a integrar o AWS Lake Formation e o AWS Glue para criar pipelines de dados seguros, configurar controles de acesso e automatizar fluxos de trabalho de ETL.
Actualizado 14 de jan. de 2025  · 30 min de leitura

As organizações lutam para proteger, controlar e mover grandes conjuntos de dados no ambiente de dados atual. O AWS Lake Formation e o AWS Glue são dois serviços que podem ajudar você a superar esses desafios. O AWS Glue realiza a limpeza, a reestruturação e a conversão de tipos de dados, enquanto o AWS Lake Formation cria lagos de dados e realiza a segurança e o gerenciamento de dados. 

Neste blog, demonstraremos como desenvolver um pipeline de dados seguro e automatizado usando o AWS Lake Formation e o AWS Glue. Desenvolveremos um trabalho de ETL usando o AWS Glue para mover e processar dados de amostra atualmente armazenados em um bucket do S3, e o controle de acesso refinado será feito por meio do AWS Lake Formation.

O que é a AWS Lake Formation?

O AWS Lake Formation fornece as ferramentas necessárias para que você crie, gerencie e proteja os data lakes no AWS. Com o Lake Formation, é mais fácil criar data lakes no Amazon S3 e gerenciar a segurança e as permissões.

Usando o AWS Lake Formation, você pode:

  • Crie rapidamente um lago de dados seguro.
  • Centralize o armazenamento de dados no S3.
  • Defina políticas de controle de acesso granular.
  • Aplique criptografia de dados e registros de auditoria para conformidade.

O que é AWS Glue?

O AWS Glue é um serviço de integração de dados sem servidor que fornece a funcionalidade de extração, transformação e carga (ETL) para a preparação de dados. É um serviço automatizado de preparação de dados que facilita o gerenciamento da catalogação, transformação e carregamento de dados. Isso é útil para consolidar dados de várias fontes, como o S3, em data warehouses ou bancos de dados.

Com o AWS Glue, você obtém:

  • Catálogo de dados de cola: Um repositório centralizado para gerenciar metadados.
  • Trabalhos de ETL: Trabalhos sem servidor para transformar e mover dados.
  • Glue Studio: Uma interface visual para projetar fluxos de trabalho de ETL.

Se você não conhece o Glue, confira nosso tutorial Getting Started with AWS Glue

Por que integrar o AWS Lake Formation e o AWS Glue?

Ao integrar o AWS Lake Formation e o AWS Glue, você obtém o melhor dos dois mundos: data lakes seguros e pipelines de ETL automatizados. Alguns benefícios dessa integração incluem:

  • Pipelines de dados automatizados: Automatize facilmente a transformação e a movimentação de dados, mantendo a segurança.
  • Gerenciamento centralizado de dados: Combine o controle de acesso do Lake Formation com os recursos de transformação e catalogação de dados do Glue.
  • Segurança aprimorada: Aproveite as permissões refinadas do Lake Formation para controlar o acesso a dados confidenciais.

Pré-requisitos para a integração

Antes de integrar o AWS Lake Formation e o AWS Glue, verifique se você tem o seguinte:

  • Conta da AWS: Acesso ao AWS Lake Formation e ao AWS Glue.
  • Conhecimentosessenciais: Familiaridade com lagos de dados, ETL e serviços da AWS.
  • S3 bucket: Um bucket S3 pré-configurado para armazenar seus dados.
  • Funções do IAM: Você precisa das funções e permissões de IAM necessárias para acessar os dois serviços.
  • CloudFormation: Um modelo é fornecido para você implementar a configuração básica. Emvocê pode encontrar o modelo aqui.

Guia passo a passo para integração

Quando você tiver os pré-requisitos, basta seguir estas etapas:

Etapa 1: Configuração do AWS Lake Formation

A primeira etapa é implantar os principais recursos do AWS necessários para criar um data lake seguro antes de iniciar o processo de integração. O modelo do AWS CloudFormation ajuda a organizar e implementar todos os recursos necessários. 

Use o modelo CloudFormation fornecido para criar uma pilha em sua conta do AWS. Essa pilha fornece os recursos essenciais necessários para os casos de uso descritos neste tutorial.

Captura de tela da página "Create Stack" do AWS CloudFormation mostrando opções para preparar e especificar um modelo, incluindo o upload de um arquivo de modelo ou a seleção de outras fontes.

Criando uma pilha no AWS CloudFormation

Após a implantação da pilha, os seguintes recursos principais serão criados em sua conta do AWS:

  • Amazon VPC e sub-rede: Uma VPC e uma sub-rede pública para hospedar recursos com configurações de rede apropriadas.
  • Baldes do Amazon S3:
    • Armazena dados, scripts e resultados relacionados ao blog.
    • Hospedaos dados do TPC usados para criar o lago de dados.
  • Funções e políticas de IAM:
    • GlueServiceRole: Concede ao AWS Glue acesso aos serviços S3 e Lake Formation.
    • DataEngineerGlueServiceRole: Fornece aos engenheiros permissões para acesso e processamento de dados.
    • DataAdminUser e DataEngineerUser: Usuários IAM pré-configurados para explorar e gerenciar a segurança do Lake Formation.
  • AWS Glue Crawler: Um TPC Crawler para examinar e catalogar os dados de parquet armazenados no bucket do S3.
  • Instância do Amazon EC2: Uma instância auxiliar (EC2-DB-Loader) para pré-carregamento e transferência de dados de amostra para o S3.
  • AWS Secrets Manager: Um segredo (lf-users-credentials) para armazenar com segurança as credenciais de usuário para os usuários IAM pré-criados.

Depois que a pilha for criada, você terá o seguinte:

  • Um exemplo de banco de dados TPC armazenado no Amazon S3.
  • Usuários e funções pré-criados para explorar padrões de segurança e controles de acesso.
  • Cole configurações e rastreadores para catalogar e processar seus dados.
  • Todos os componentes básicos necessários para que você siga as etapas deste blog.

Etapa 2: Configuração de permissões de dados

Nesta seção, o administrador do Data Lake configurará o AWS Lake Formation para torná-lo disponível para personas de consumidores de dados, incluindo os engenheiros de dados. O administrador irá:

  • Crie um novo banco de dados no AWS Lake Formation para armazenar os dados do TPC.
  • Registre tabelas de metadados para o conjunto de dados TPC no AWS Glue Data Catalog.
  • Configure tags e políticas do Lake Formation para estabelecer permissões de acesso para diferentes usuários.

Essas configurações fornecem controle de acesso seguro e refinado e coordenação suave com outros serviços da AWS.

Configuração do administrador do Data Lake

Um administrador do Data Lake é um usuário ou função de gerenciamento de identidade e acesso (IAM) que pode conceder permissão a qualquer princípio (incluindo ele próprio) em qualquer entidade do Data Catalog. O administrador do Data Lake geralmente é o primeiro usuário criado para gerenciar o Data Catalog e, normalmente, é o usuário que recebe privilégios administrativos para o Data Catalog.

No serviço AWS Lake Formation, você pode abrir o prompt clicando na guia Funções e tarefas administrativas -> Adicionar administradores no botão do painel de navegação e, em seguida, selecionando o usuário IAM lf-data-admin na lista suspensa.

Captura de tela da página "Add administrators" (Adicionar administradores) no AWS Lake Formation mostrando opções para atribuir tipo de acesso, usuários IAM e funções para permissões de administrador de data lake.

Como adicionar um administrador de data lake no AWS Lake Formation

Alteração das configurações do catálogo

Por padrão, o Lake Formation tem a opção "Use only IAM access control" (Usar somente controle de acesso IAM), que é selecionada para ser compatível com o AWS Glue Data Catalog. Para ativar o controle de acesso refinado com permissões do Lake Formation, você precisa ajustar essas configurações:

  1. No painel de navegação, em Administraçãoselecione Funções e tarefas administrativas.
  2. Se o grupo IAMAllowedPrincipals aparecer em Criadores de banco de dadosselecione o grupo e escolha Revogar.
  3. Na seção Revogar permissões confirme que o grupo tem a permissão Criar banco de dados e, em seguida, clique em Revogar.

Essas etapas desativarão o controle de acesso padrão do IAM e permitirão que você implemente as permissões do Lake Formation para aumentar a segurança.

Captura de tela da interface do AWS Lake Formation exibindo opções para criadores de catálogos e criadores de bancos de dados, incluindo o grupo IAMAllowedPrincipals com permissões Criar catálogo e Criar banco de dados.

Gerenciando criadores de catálogos e bancos de dados no AWS Lake Formation

Etapa 3: Usando o catálogo de dados do AWS Glue

Agora, é hora de você usar o Glue Data Catalog.

Criando um banco de dados

Para criar um banco de dados para os dados do TPC, faça logout da sua sessão atual do AWS e faça login novamente como o usuário lf-data-admin. Use o link de login fornecido na saída do CloudFormation e a senha recuperada do AWS Secrets Manager.

  1. Navegue até a AWS Lake Formation e selecione Bancos de dados no painel de navegação esquerdo.
  2. Clique no botão Criar banco de dados botão.
  3. Nomeie o banco de dados como "tpc", pois ele será usado para o lago de dados do TPC.
  4. No campoLocation, selecione o caminho do data lake S3 criado pela pilha do CloudFormation. Esse caminho pode ser encontrado na guia de saída do CloudFormation e terá o nome lf-data-lake-account-ID, em que account-ID é o número da sua conta AWS de 12 dígitos.
  5. Desmarque a opção Usar somente o controle de acesso IAM para novas tabelas neste banco de dados para ativar o controle de acesso refinado.
  6. Deixe todas as outras opções em seus valores padrão e clique em Criar banco de dados.

Esse banco de dados será a base para armazenar e gerenciar metadados para os dados de TPC na configuração da Formação do Lago.

Captura de tela da página "Database details" (Detalhes do banco de dados) do AWS Lake Formation mostrando campos para nome do banco de dados, catálogo de dados, local do S3, descrição e configurações de permissões padrão para tabelas recém-criadas.

Criação de um banco de dados no AWS Lake Formation

Hidratação do lago de dados

Usamos um AWS Glue Crawler para criar tabelas no AWS Glue Data Catalog. Os rastreadores são a maneira mais comum de criar tabelas no AWS Glue, pois eles podem fazer a varredura em vários armazenamentos de dados de uma só vez e gerar ou atualizar os detalhes das tabelas no catálogo de dados após a conclusão do rastreamento.

Antes de executar o AWS Glue Crawler, você precisa conceder as permissões necessárias à sua função IAM:

  1. No console do AWS Lake Formation, navegue até Bancos de dados e selecione o banco de dados tpc banco de dados.
  2. Da seção Ações selecione Conceder.
  3. Na seção Conceder permissões você pode conceder permissões:
    • Sob Principaisselecione a função IAM LF-GlueServiceRole.
    • Na seção LF-Tags ou recursos de catálogo assegure-se de que Recursos de catálogo de dados nomeados estejam selecionados.
    • Selecione tpc como o banco de dados.
    • Na seção Permissões do banco de dados marque a opção Criar tabela que você pode usar.
    • Clique em Conceder.

Captura de tela da página AWS Lake Formation Databases mostrando uma lista de bancos de dados, incluindo "sales" e "tpc", com o menu Actions expandido para exibir a opção "Grant" para gerenciar permissões

Concessão de permissões na AWS Lake Formation

Executando o AWS Glue Crawler

Com as permissões concedidas, prossiga para executar o rastreador:

  1. No console do AWS Lake Formation, navegue até Rastreadores e clique para abrir a seção AWS Glue para abrir o console AWS Glue.
  2. Selecione o rastreador chamado TPC Crawler e clique em Executar rastreador.
  3. Monitore o progresso clicando no botão Atualizar para que você possa monitorar o progresso.
  4. Depois de concluído, o banco de dados do TPC será preenchido com tabelas. Verifique as Alterações na tabela desde a última execução para ver o número de tabelas adicionadas (por exemplo, 8 tabelas).

Captura de tela da página de propriedades do AWS Glue TPC Crawler mostrando detalhes como função IAM, banco de dados e execuções do rastreador com o status marcado como Concluído, indicando atualizações de tabela bem-sucedidas.

Executando o rastreador TPC no AWS Glue

Você também pode verificar essas tabelas no console do AWS Lake Formation em Catálogo de dados e Tabelas.

Captura de tela da página AWS Lake Formation Tables que exibe uma lista de 8 tabelas carregadas no banco de dados tpc, incluindo dl_tpc_household_demographics, dl_tpc_customer e outras, com opções para criar tabelas ou usar um rastreador.

Exibição de tabelas na AWS Lake Formation

Registro de locais do Data Lake

Você deve registrar o bucket S3 no AWS Lake Formation para o armazenamento do seu data lake. Esse registro permite que você imponha um controle de acesso refinado aos objetos do AWS Glue Data Catalog e aos dados subjacentes armazenados no bucket.

Etapas para registrar um local do Data Lake:

  1. Navegue até a seção Locais do lago de dados no console do AWS Lake Formation e clique em Registrar local.
  2. Digite o caminho para o bucket S3 criado por meio do modelo CloudFormation. Esse bucket armazenará os dados ingeridos durante o processo de pipeline.
  3. Para a Função IAMselecione o endereço LF-GlueServiceRole criado pelo modelo do CloudFormation.
  4. Em Modo de permissãoselecione Formação de lago para ativar os recursos avançados de controle de acesso.
  5. Clique em Registrar local para salvar sua configuração.

Depois de registrado, verifique o local do data lake para garantir que ele esteja configurado corretamente. Essa etapa é essencial para o gerenciamento de dados e a segurança contínuos em sua configuração do Lake Formation.

Captura de tela da página "Register Location" do AWS Lake Formation mostrando campos para o caminho do Amazon S3, seleção de função IAM (LF-GlueServiceRole) e opções de modo de permissão, incluindo o modo de acesso Lake Formation e Hybrid

Registro de um local do Amazon S3 no AWS Lake Formation

Tags de formação de lago (LF-Tags)

Os LF-Tags podem ser usados para organizar recursos e definir permissões em muitos recursos de uma só vez. Ele permite que você organize os dados usando taxonomias e, dessa forma, divida políticas complexas e gerencie permissões de forma eficaz. Isso é possível porque, com os LF-Tags, você pode separar a política do recurso e, portanto, pode configurar políticas de acesso antes mesmo de os recursos serem criados.

Etapas para criar e atribuir LF-Tags

  • Criar LF-Tags:
    • Navegue até o console Lake Formation em AWS Lake Formation.
    • No painel de navegação, selecione LF-Tags e permissõese, em seguida, clique em Adicionar tag LF.
    • Forneça "Classification" (Classificação) como a chave e adicione "Sensitive" (Sensível) e "Non-Sensitive" (Não sensível) como os valores. Clique em Adicionar etiqueta LF.

Captura de tela da página "Add LF-Tag" do AWS Lake Formation, mostrando as opções para definir chave e valores, conceder permissões de LF-Tag e atribuir permissões de par chave-valor de LF-Tag aos recursos do Data Catalog.

Criação de LF-Tags no AWS Lake Formation

  • Conceder permissões de tag LF:
    • Certifique-se de que o usuário lf-data-admin tenha permissões de LF-Tag. Navegue até Tabelas no console Lake Formation.
    • Selecione a tabela dl_tpc_customer, clique no botão ações e escolha Conceder.
    • Em Usuários e funções do IAMselecione lf-data-admin.
    • Para LF-Tags ou recursos de catálogo, selecione Recursos de catálogo de dados nomeados.
    • Escolha o banco de dados tpc e a tabela dl_tpc_customer, concedendo a você as permissões da tabelaAlter. Clique em Conceder.

Captura de tela da página "Grant permissions" (Conceder permissões) do AWS Lake Formation mostrando o usuário IAM lf-data-admin, a seleção de recursos do Named Data Catalog e a configuração do banco de dados tpc e da tabela dl_tpc_customer.

Concessão de permissões na AWS Lake Formation

  • Atribuir etiquetas LF a objetos do Data Catalog:
    • Navegue até Tabelas e selecione a tabela dl_tpc_customer. Abra os detalhes da tabela e selecione Editar LF-Tags no menu de ações.
    • Clique em Atribuir nova tag LFforneça "Classification" (Classificação) como a chave e defina "Non-Sensitive" (Não sensível) como o valor. Clique em Salvar.
    • No menu de ações da tabela, selecione Editar esquema. Selecione colunas como c_first_name, c_last_name e c_email_address e clique em Editar LF-Tags.
    • Para a chave herdada Classification, altere o valor para "Sensitive" (Sensível) e clique em Save. Salve essa configuração como uma nova versão.
  • Aplique LF-Tags a tabelas adicionais:
    • Para acessar a tabela dl_tpc_household_demographics, vá para Ações e selecione Editar LF-Tags.
    • Na caixa de diálogo, clique em Atribuir nova tag LF. Conjunto Group como a chave e Analyst como o valor. Clique em Salvar para finalizar.

Seguindo essas etapas, você pode atribuir LF-Tags com eficiência aos seus objetos do Data Catalog, garantindo um controle de acesso seguro e refinado em todo o seu data lake.

Etapa 4: Criar um trabalho de ETL no AWS Glue

O AWS Glue Studio é uma interface de usuário de arrastar e soltar que ajuda os usuários a desenvolver, depurar e monitorar trabalhos de ETL para o AWS Glue. Os engenheiros de dados utilizam o Glue ETL, baseado no Apache Spark, para transformar conjuntos de dados armazenados no Amazon S3 e carregar dados em data lakes e warehouses para análise. Para administrar efetivamente o acesso quando várias equipes colaboram nos mesmos conjuntos de dados, é importante fornecer acesso e restringi-lo de acordo com as funções.

Concessão de permissões com o AWS Lake Formation

Siga estas etapas para conceder as permissões necessárias ao usuário lf-data-engineer e à função DE-GlueServiceRole correspondente. Essa função é usada pelo engenheiro de dados para acessar as tabelas do Glue Data Catalog nos trabalhos do Glue Studio.

  1. Faça login como administrador do Data Lake:
    • Use o usuário lf-data-admin para fazer login no Console de gerenciamento do AWS. Recupere a senha do AWS Secrets Manager e o URL de login da saída do CloudFormation.
  2. Conceder permissões de seleção para uma tabela:
    • Navegue até Permissões do lago de dados no console Lake Formation.
    • Clique em Concedere, na caixa de diálogo, forneça as seguintes informações:
      • Usuários e funções do IAM: Digite lf-data-engineer e DE-GlueServiceRole.
      • LF-Tags ou recursos de catálogo: Selecione Recursos do catálogo de dados nomeados.
      • Bancos de dados: Escolha tpc.
      • Tabelas: Escolha dl_tpc_household_demographics.
      • Permissões de tabela: Selecione Selecione e Descrever.
    • Clique em Conceder para salvar as permissões.
  3. Conceder permissões de criação de tabela para um banco de dados:
    • Navegue até Permissões do Data Lake novamente.
    • Clique em Concedere, na caixa de diálogo, forneça as seguintes informações:
      • Usuários e funções do IAM: Digite DE-GlueServiceRole.
      • LF-Tags ou recursos de catálogo: Selecione Recursos do catálogo de dados nomeados.
      • Bancos de dados: Escolha tpc (deixe as tabelas desmarcadas).
      • Permissões do banco de dados: Selecionar Criar tabela.
    • Clique em Conceder para finalizar as permissões.

Captura de tela da página "Grant permissions" (Conceder permissões) do AWS Lake Formation, mostrando opções de permissões de banco de dados, como Create table (Criar tabela), Alter, Drop e Super, juntamente com configurações de modo de acesso híbrido e uma mensagem informativa sobre possível negação de acesso.

Configuração de permissões de banco de dados no AWS Lake Formation

A conclusão dessas etapas dará ao usuário lf-data-engineer e à função DE-GlueServiceRole as permissões necessárias para trabalhar com as tabelas do Glue Data Catalog e gerenciar recursos nos trabalhos do Glue Studio. Essa configuração garante o acesso seguro e baseado em funções ao seu data lake.

Criação de trabalhos de ETL do Glue Studio

Nesta seção, criaremos um trabalho de ETL no AWS Glue Studio usando o SQL Transform.

  • Faça login no AWS como lf-data-engineer:
    • Use o usuário lf-data-engineer para fazer login no Console de gerenciamento do AWS. Recupere a senha do AWS Secrets Manager e o URL de login fornecido pela saída do CloudFormation.
  • Abra o Glue Studio e inicie um novo trabalho:
    • Navegue até o console do Glue Studio e clique em Visual ETL.
    • Renomeie o trabalho para LF_GlueStudio para que ele possa ser identificado facilmente.
  • Configure os detalhes do trabalho:
    • Clique em Detalhes do trabalho para definir as seguintes configurações: 
      • Função IAM: Selecione DE-GlueServiceRole.
      • Versão com cola: Selecione Glue 5.0 - Suporte a Spark 3.1, Scala 2, Python 3.
      • Número solicitado de trabalhadores: Defina como 5.
      • Marca de emprego: Selecionar Desativar.
      • Número de novas tentativas: Defina como 0.

Captura de tela da página de detalhes do trabalho do AWS Glue Studio mostrando campos de configuração para função IAM (DE-GlueServiceRole), tipo de trabalho ETL (Spark), versão do Glue (3.0), linguagem (Python 3), tipo de trabalhador (G 1X) e número solicitado de trabalhadores.

Configuração dos detalhes do trabalho no AWS Glue Studio

  • Adicione um nó de fonte de dados:
    • Sob o Visual clique na guia + e adicione um Catálogo de dados do AWS Glue para configurar a fonte de dados. Renomeie esse nó para "Amazon S3".
    • Selecione o Amazon S3 no editor visual e configure suas propriedades no painel direito:
      • Em Propriedades da fonte de dados - Catálogo de dadosdefina:
        • Banco de dados: tpc.
        • Mesa: dl_tpc_household_demographics. (Nota: O usuário lf-data-admin concedeu apenas a permissão lf-data-engineer Select nessa tabela. Outras tabelas não aparecerão no menu suspenso).

Captura de tela da guia Visual do AWS Glue Studio mostrando um nó de fonte de dados vinculado ao Amazon S3, com propriedades configuradas para o banco de dados tpc e a tabela dl_tpc_household_demographics no catálogo de dados.

Configuração de uma fonte de dados no AWS Glue Studio

  • Adicionar e configurar o nó SQL Query:
    • Com o nó do Amazon S3 selecionado, clique no botão + e adicione um nó SQL Query como a transformação.
    • Selecione a Consulta SQL e configure-o:
      • Sob Transformarinsira sua consulta SQL no campo SQL Query (Consulta SQL) campo.
      • Adicione esta consulta: 
/* Select all records where buy potential is between 0 and 500 */
SELECT * 
FROM myDataSource 
WHERE hd_buy_potential = '0-500';
      • Sob Esquema de saídaclique em Editar e exclua as chaves hd_dep_count e hd_vehicle_count. Clique em Aplicar.

Captura de tela da guia Visual do AWS Glue Studio mostrando o nó SQL Query com uma consulta SQL aplicada (SELECT * FROM myDataSource WHERE hd_buy_potential = '0-500') e a configuração do esquema de saída associado.

Configuração da transformação de consulta SQL no AWS Glue Studio

  • Adicione um nó de destino de dados:
    • Com a Consulta SQL selecionado, clique no botão + e adicione um nó Data Target. Selecionar Alvo do Amazon S3 nos resultados da pesquisa.
    • Configure o nó Data Target-S3 no painel direito:
      • Formato: Selecione Parquet.
      • Tipo de compressão: Selecionar Rápido.
      • Localização do alvo S3: Digite s3:///gluestudio/curated/. (Substitua pelo nome real do bucket da guia Outputs do CloudFormation).
      • Opções de atualização do catálogo de dados: Selecionar Crie uma tabela no Data Catalog e, nas execuções subsequentes, atualize o esquema e adicione novas partições.
      • Banco de dados: Selecione tpc .
      • Nome da tabela: Forneça um nome para a tabela de saída. Por exemplo, dl_tpc_household_demographics_below500.
  • Salve e revise o trabalho:
    • Clique em Salvar no canto superior direito para salvar o trabalho.
    • Opcionalmente, você pode alternar para o Script para visualizar o script gerado automaticamente. Você pode fazer download ou editar esse script, se necessário.

Seguindo essas etapas, você criará um trabalho de ETL do Glue Studio totalmente funcional que transforma dados e grava os resultados em uma pasta S3 selecionada enquanto atualiza o Glue Data Catalog.

Etapa 5: Teste e validação da integração

Para confirmar as permissões concedidas no Lake Formation, siga estas etapas enquanto estiver conectado como o usuário lf-data-engineer (conforme detalhado em Criar trabalhos do Glue Studio ):

  1. Execute o trabalho LF_GlueStudio:
    • Navegue até a pasta LF_GlueStudio e clique no botão Executar no canto superior direito para executar o trabalho.
    • Monitore a execução do trabalho selecionando a opção Execuções na interface do trabalho.

Captura de tela da guia AWS Glue Studio Runs mostrando uma execução de trabalho concluída com êxito para LF_GlueStudio, com detalhes de tempo de execução, tempo de execução, tipo de trabalhador e versão do Glue exibidos.

Monitoramento de execuções de trabalho no AWS Glue Studio

  1. Verifique a saída do trabalho:
    • Quando o status da execução do trabalho mostrar Succeeded, acesse a pasta curated no seu bucket S3 para verificar os arquivos de saída. Esses arquivos devem estar no formato Parquet, conforme configurado durante a criação do trabalho.

Captura de tela de um bucket do Amazon S3 exibindo uma lista de arquivos Parquet na pasta gluestudio/curated/, incluindo nomes de arquivos, carimbos de data e hora da última modificação, tamanhos e classe de armazenamento.

Visualização de arquivos de saída no Amazon S3

  1. Verifique a tabela recém-criada:
    • Abra o Glue Data Catalog e navegue até o banco de dados que você especificou durante a configuração do trabalho.
    • Verifique se a nova tabela está listada no banco de dados, confirmando que os dados de saída foram catalogados com êxito.

Captura de tela da página AWS Glue Databases mostrando as propriedades do banco de dados tpc e uma lista de tabelas com seus respectivos locais S3, classificações e opções de visualização de dados.

Visualização de tabelas de banco de dados no AWS Glue

Práticas recomendadas para integrar o AWS Lake Formation e o AWS Glue

Ao integrar o AWS Lake Formation e o AWS Glue, você pode aprimorar a segurança dos dados, simplificar as operações e otimizar o desempenho seguindo as práticas recomendadas. Veja como você pode aproveitar ao máximo esses serviços:

Otimize as permissões de dados

  • Adotar o princípio do menor privilégio: Conceda aos usuários e funções acesso apenas aos recursos de que precisam. Evite atribuir permissões amplas que possam expor dados confidenciais ou recursos críticos desnecessariamente.
  • Auditar regularmente as políticas de acesso: Revise e atualize periodicamente as políticas para atender às mudanças nos requisitos de segurança e conformidade. Utilize ferramentas como o AWS IAM Access Analyzer para detectar políticas excessivamente permissivas.
  • Aproveite os identificadores LF para o gerenciamento de políticas: Use as Lake Formation Tags (LF-Tags) para agrupar recursos relacionados e simplificar o gerenciamento de permissões. Ao aplicar tags como Sensitive ou Non-Sensitive, você pode criar políticas escalonáveis e reutilizáveis que se aplicam automaticamente aos recursos marcados.
  • Separe as políticas dos recursos: Defina as permissões usando tags LF ou modelos antes que os recursos sejam criados. Isso garante um processo de integração perfeito à medida que novas fontes de dados ou tabelas são adicionadas.

Monitorar e depurar trabalhos

  • Ativar os registros do CloudWatch para trabalhos do Glue: Os logs do CloudWatch podem capturar logs detalhados de execuções de trabalhos do AWS Glue, incluindo erros e detalhes de execução. Use esses logs para solucionar problemas rapidamente.

Captura de tela dos eventos de registro do AWS CloudWatch mostrando detalhes das atividades do TPC Crawler, incluindo eventos de início de rastreamento, conclusão de classificação e atualizações no banco de dados do tpc.

Eventos de registro do TPC Crawler no AWS CloudWatch

  • Monitorar métricas de cola: O AWS Glue fornece métricas para ajudar a identificar ineficiências ou problemas em seus fluxos de trabalho de ETL. Configure os alarmes do CloudWatch para notificar você sobre padrões incomuns.

Captura de tela do AWS CloudWatch Metrics exibindo métricas de trabalho para o LF_GlueStudio, incluindo tarefas com falha, tempo de GC da JVM, uso de heap e heap usado, com opções para criar alarmes e métricas de gráfico.

Monitoramento das métricas de trabalho do AWS Glue Studio

Use o particionamento e a compactação

  • Otimizar o particionamento de dados: Divida os conjuntos de dados de acordo com as características frequentemente solicitadas, como departamento, data ou região. No Athena ou Redshift, por exemplo, a divisão dos dados de vendas por mês e ano pode acelerar significativamente as consultas e reduzir os custos de verificação.
  • Escolha o formato de compactação correto: Use formatos de armazenamento colunar criados para cargas de trabalho de análise, como ORC ou Parquet. Combine-os com algoritmos de compactação eficazes, como o Snappy, para economizar armazenamento e acelerar as consultas.
  • Automatizar o particionamento em trabalhos do Glue: Os trabalhos do AWS Glue podem particionar dinamicamente os dados durante o processo de ETL. Especifique chaves de partição na configuração do trabalho para garantir que os dados de entrada sejam armazenados em um formato estruturado.
  • Monitore e ajuste as estratégias regularmente: Avalie se a compactação e o particionamento funcionam bem à medida que o volume de dados aumenta. Examine as tendências de consulta e, em seguida, modifique o esquema de particionamento para acomodar as cargas de trabalho em constante mudança.

Conclusão

A implementação do AWS Lake Formation e do AWS Glue ajuda a organização a organizar, proteger e processar dados. Usando as amplas medidas de segurança do Lake Formation e a automação do Glue, você pode otimizar seus processos de ETL, atender a todas as políticas relacionadas à governança de dados e fornecer acesso fácil aos dados para os usuários, incluindo engenheiros e cientistas de dados.

Os benefícios incluem:

  • Segurança aprimorada: O controle de acesso refinado com LF-Tags garante que os dados confidenciais sejam acessíveis somente a usuários autorizados.
  • Automação: O AWS Glue simplifica a preparação e a transformação de dados, reduzindo o esforço manual e os erros.
  • Escalabilidade: As permissões dinâmicas e o gerenciamento de políticas permitem o dimensionamento contínuo à medida que os dados crescem.
  • Eficiência: O armazenamento otimizado e o desempenho da consulta por meio de particionamento e compactação economizam tempo e custos.

À medida que você aprofunda seu conhecimento sobre integração de dados, é essencial complementar seu aprendizado com conhecimento prático. Por exemplo, o domínio de pipelines de dados com ETL e ELT em Python pode aumentar sua capacidade de processar e transformar dados com eficiência. Da mesma forma, uma sólida compreensão dos conceitos de gerenciamento de dados aprimorará a forma como você estrutura e manipula os conjuntos de dados. E para garantir que seus resultados sejam confiáveis, é essencial que você compreenda os princípios ensinados no curso Introdução à qualidade dos dados.

Perguntas frequentes

Qual é o objetivo de integrar o AWS Lake Formation e o AWS Glue?

Ao implementar o AWS Lake Formation e o AWS Glue, você pode desenvolver pipelines de dados seguros, automatizados e dimensionáveis. Essa integração oferece controle de acesso abrangente, processos de ETL simplificados e uma plataforma unificada de gerenciamento de dados, análise e conformidade.

Qual é a importância dos marcadores LF na formação do lago AWS?

Os LF-Tags permitem o gerenciamento de permissões em geral, pois, por meio deles, os dados são organizados por determinadas taxonomias, por exemplo, "Sensível" ou "Não sensível". Eles ajudam a reduzir a complexidade das políticas de acesso, pois você pode definir permissões com base em tags e, antes que os recursos sejam realmente criados, você pode fazer isso; isso proporciona um certo nível de flexibilidade e segurança.

Qual é a função do AWS Glue Studio nessa integração?

O AWS Glue Studio é uma ferramenta de conversão de dados com uma interface de arrastar e soltar. Os usuários podem desenvolver, monitorar e controlar trabalhos de ETL por meio dessa interface. Ele torna os processos de transformação de dados mais eficientes e, portanto, ajuda a transformar os dados para análise posterior.

Várias equipes podem acessar o mesmo conjunto de dados com segurança?

Sim, o AWS Lake Formation oferece o recurso de controle de acesso refinado, no qual você pode conceder aos usuários acesso a funções específicas ou até mesmo a LF-Tags. Dessa forma, cada equipe só poderá visualizar os dados que lhe dizem respeito, e os próprios dados estarão protegidos.

O que é o conjunto de dados TPC mencionado no artigo?

O conjunto de dados TPC é um conjunto de dados sintético amplamente disponível para fins de treinamento, benchmarking e educacionais. Ele contém informações sobre vários produtos, clientes, dados demográficos, vendas pela Web e outros dados relacionados a transações, o que o torna mais realista.


Rahul Sharma's photo
Author
Rahul Sharma
LinkedIn
Twitter

Rahul Sharma é embaixador da AWS, arquiteto de DevOps e blogueiro técnico especializado em computação em nuvem, práticas de DevOps e tecnologias de código aberto. Com experiência em AWS, Kubernetes e Terraform, ele simplifica conceitos complexos para alunos e profissionais por meio de artigos e tutoriais envolventes. Rahul é apaixonado por resolver desafios de DevOps e compartilhar insights para capacitar a comunidade de tecnologia.

Temas

Saiba mais sobre a AWS com estes cursos!

curso

AWS Cloud Technology and Services Concepts

3 hr
6.5K
Master AWS cloud technology with hands-on learning and practical applications in the AWS ecosystem.
Ver DetalhesRight Arrow
Iniciar curso
Ver maisRight Arrow
Relacionado

blog

AWS Certified Cloud Practitioner: um guia completo

Saiba mais sobre a certificação e o exame AWS Certified Cloud Practitioner com nosso guia completo. Descubra dicas, recursos e estratégias para garantir que você tenha sucesso.
Srujana Maddula's photo

Srujana Maddula

27 min

blog

Certificações da AWS em 2024: Níveis, custos e como passar

Explore nosso guia completo sobre as certificações da AWS, incluindo qual é a melhor para você e como passar nos exames. Além disso, descubra os recursos do DataCamp para ajudar!
Adel Nehme's photo

Adel Nehme

20 min

tutorial

Tutorial de armazenamento do AWS: Uma introdução prática ao S3 e ao EFS

O guia completo para armazenamento de arquivos no AWS com S3 e EFS.
Zoumana Keita 's photo

Zoumana Keita

16 min

tutorial

O guia completo para machine learning na AWS com o Amazon SageMaker

Este tutorial abrangente ensina você a usar o AWS SageMaker para criar, treinar e implantar modelos de machine learning. Nós guiamos você por todo o fluxo de trabalho, desde a configuração do seu ambiente AWS e a criação de uma instância de notebook do SageMaker até a preparação de dados, modelos de treinamento e sua implementação como endpoints.
Bex Tuychiev's photo

Bex Tuychiev

25 min

tutorial

Um guia completo para armazenamento de dados no AWS com o Redshift

Este guia do AWS Redshift abrange a configuração e o gerenciamento de um data warehouse na nuvem, o carregamento de dados, a execução de consultas complexas, a otimização do desempenho, a integração com ferramentas de BI e fornece práticas recomendadas e dicas de solução de problemas para que você tenha sucesso.
Zoumana Keita 's photo

Zoumana Keita

20 min

tutorial

Primeiros passos com o AWS Athena: Um guia prático para iniciantes

Este guia prático ajudará você a começar a usar o AWS Athena. Explore sua arquitetura e seus recursos e saiba como consultar dados no Amazon S3 usando SQL.
Tim Lu's photo

Tim Lu

28 min

Ver maisVer mais