Conectar a dados - AWS Glue

Conectar a dados

Uma conexão do AWS Glue é um objeto do Data Catalog que armazena credenciais de login, strings de URI, informações de nuvem privada virtual (VPC) e muito mais para determinado armazenamento de dados. Crawlers, trabalhos e endpoints de desenvolvimento do AWS Glue usam conexões do para acessar determinados tipos de armazenamento de dados. É possível usar conexões para fontes e destinos, além de reutilizar a mesma conexão em vários trabalhos de crawler ou de extração, transformação e carregamento (ETL).

A versão mais recente do esquema de conexões do AWS Glue oferece uma forma unificada de gerenciar conexões de dados entre serviços e aplicações da AWS, como AWS Glue, Amazon Athena e Amazon SageMaker AI Unified Studio.

Visão geral do uso de conectores e conexões

Uma conexão que contém as propriedades necessárias para se conectar a um datastore específico. Ao criar uma conexão, ela é armazenada no AWS Glue Data Catalog. Você escolhe um conector e, em seguida, cria uma conexão com base nele.

É possível assinar conectores para armazenamentos de dados não suportados nativamente no AWS Marketplace e, em seguida, usá-los ao criar conexões. Os desenvolvedores também podem criar seus próprios conectores, e é possível usá-los ao criar conexões.

nota

Conexões criadas usando conectores personalizados ou do AWS Marketplace no AWS Glue Studio aparecem no console do AWS Glue com o tipo definido como UNKNOWN.

As etapas a seguir descrevem o processo geral do uso de conectores no AWS Glue Studio:

  1. Assine um conector no AWS Marketplace ou desenvolva seu próprio conector e carregue-o no AWS Glue Studio. Para ter mais informações, consulte Adição de conectores ao AWS Glue Studio.

  2. Revise as informações de uso do conector. É possível encontrar essas informações na guia Uso na página de produto do conector. Por exemplo, se clicar na guia Utilização na página deste produto, Conector do AWS Glue para o Google BigQuery, será possível ver, na seção Recursos adicionais, um link para um blog sobre o uso desse conector.

  3. Crie uma conexão. Você escolhe qual conector usar e fornece informações adicionais para a conexão, como credenciais de login, strings de URI e informações da nuvem privada virtual (VPC). Para ter mais informações, consulte Criar conexões para conectores.

  4. Crie um perfil do IAM para o seu trabalho. O trabalho assume a permissão de IAM role que você especificou ao criá-lo. Esse perfil do IAM precisa ter as permissões obrigatórias para autenticar com, extrair dados de e gravar dados em seus armazenamentos de dados.

  5. Crie um trabalho de ETL e configure as propriedades da origem dos dados para o seu trabalho de ETL. Forneça as opções de conexão e as informações de autenticação conforme instruído pelo provedor de conector personalizado. Para ter mais informações, consulte Criação de trabalhos com conectores personalizados.

  6. Personalize seu trabalho de ETL adicionando transformações ou armazenamentos de dados adicionais, conforme descrito em Iniciar trabalhos de ETL visual no AWS Glue Studio.

  7. Se estiver usando um conector para o destino de dados, configure as propriedades de destino de dados para seu trabalho de ETL. Forneça as opções de conexão e as informações de autenticação conforme instruído pelo provedor de conector personalizado. Para ter mais informações, consulte Criação de trabalhos com conectores personalizados.

  8. Personalize o ambiente de execução de trabalho configurando as propriedades do trabalho, conforme descrito em Modificar as propriedades do trabalho.

  9. Execute o trabalho.

Conexões unificadas

Com as conexões unificadas, é possível configurar uma conexão de dados uma vez para que ela possa ser reutilizada por vários serviços para casos de uso em integração dados, análise e ciência de dados. É possível criar conexões de dados por meio do console do AWS Glue ou de aplicações personalizadas usando APIs unificadas de conectividade de dados. Com as conexões unificadas, é possível configurar uma conexão com uma fonte de dados usando um modelo de configuração de conexão padronizado para vários serviços. Esses serviços (AWS Glue, Amazon SageMaker AI Unified Studio e Amazon Athena) podem compartilhar e reutilizar a mesma conexão com a configuração de permissão adequada.

O AWS Glue Studio agora cria conexões unificadas por padrão. No console do AWS Glue, é possível ver a versão da conexão na tabela de conexões na página de conexões, na página de detalhes das conexões e na tabela de conexões na página de detalhes do trabalho.

A versão da conexão é visível nos detalhes da conexão:

A captura de tela mostra os detalhes das conexões na conexão v2.

A versão da conexão também é visível ao visualizar todas as suas conexões.

A captura de tela mostra os detalhes das conexões na conexão v2.

Finalmente, a versão da conexão está visível na guia Detalhes do trabalho para um trabalho.

A captura de tela mostra os detalhes das conexões na conexão v2.

Com as conexões da versão 2, os seguintes recursos expandidos de conectividade de dados estão disponíveis:

  • Descoberta do tipo de conexão: suporte à criação de conexões usando modelos padronizados. O AWS Glue descobre automaticamente os tipos de conexão acessíveis por você e as entradas necessárias e opcionais para um determinado tipo de conexão.

  • Reutilização: definições de conexão que são reutilizáveis em mecanismos e ferramentas de processamento de dados da AWS, como AWS Glue, Amazon Athena e Amazon SageMaker AI. As conexões agora contêm AthenaProperties, SparkProperties e PythonProperties, que permitem especificar propriedades de conexão específicas do serviço/ambiente computacional, além das propriedades comuns armazenadas em ConnectionProperties. O Athena agora cria conexões no AWS Glue especificando propriedades específicas do Athena no mapa de propriedades AthenaProperties.

  • Prévia de dados: capacidade de pesquisar metadados e visualizar uma prévia dos dados de fontes conectadas.

  • Metadados do conector: conexões reutilizáveis podem ser usadas para descobrir os metadados da tabela.

  • Segredos vinculados ao serviço: os usuários podem fornecer as credenciais de autenticação OAuth, básica ou personalizada necessárias na solicitação CreateConnection. A API CreateConnection cria um segredo vinculado ao serviço em sua conta e armazena as credenciais em seu nome.

Tipos de autenticação compatíveis

As conexões unificadas são compatíveis com os seguintes tipos de autenticação:

  • BÁSICA: a maioria dos tipos de conexão de banco de dados e dos tipos de conexão existentes do AWS Glue oferecem suporte à autenticação básica, que é um nome de usuário e senha. Anteriormente, a nomenclatura das chaves no SecretsManager era específica do conector e, por exemplo, poderia ser user, username, userName, opensearch.net.http.auth.user etc. As conexões unificadas padronizaram esses tipos de conexão de autenticação básica nas chaves USERNAME e PASSWORD.

  • OAUTH2: a maioria dos tipos de conexão SaaS lançados recentemente oferece suporte ao protocolo OAuth2.

  • PERSONALIZADA: alguns tipos de conexão têm outro mecanismo de autenticação, como o Google BigQuery, em que os usuários precisam fornecer o JSON obtido do Google BigQuery.

Considerações

Ao criar uma conexão unificada para fontes de dados, considere as seguintes diferenças:

  • Ao criar uma conexão unificada via AWS Glue Studio, as credenciais do usuário são armazenadas em AWS Secrets Manager em vez da própria conexão. Isso significa que os trabalhos agora precisam de acesso ao Secrets Manager.

  • Se os trabalhos forem executados em uma VPC, eles precisarão de um endpoint da VPC ou de um gateway NAT para acessar AWS Secrets Manager e o Secure Token Service (STS), o que gerará custos adicionais.

  • Para determinadas fontes de dados (Redshift, SQL Server, MySQL, Oracle, PostgreSQL), a criação de uma conexão unificada via AWS Glue Studio requer acesso ao AWS STS e ao AWS Secrets Manager. Isso é necessário para estabelecer uma conexão segura e recuperar as credenciais necessárias para acessar essas fontes de dados em sua nuvem privada virtual (VPC).

  • A criação de uma conexão unificada via AWS Glue Studio requer um perfil do IAM com permissões para acessar AWS Secrets Manager e gerenciar recursos da VPC (se estiver usando uma VPC):

    • secretsmanager:GetSecretValue

    • secretsmanager:PutSecretValue

    • secretsmanager:DescribeSecret

    • ec2:CreateNetworkInterface

    • ec2:DeleteNetworkInterface

    • ec2:DescribeNetworkInterfaces