Usar conectores e conexões com o AWS Glue Studio - AWS Glue

Usar conectores e conexões com o AWS Glue Studio

O AWS Glue oferece suporte integrado aos armazenamentos de dados usados com frequência (como Amazon Redshift, Amazon Aurora, Microsoft SQL Server, MySQL, MongoDB e PostgreSQL) usando conexões JDBC. O AWS Glue também permite usar drivers do JDBC personalizados em seus trabalhos de extração, transformação e carregamento (ETL). Para armazenamentos de dados que não são suportados nativamente, como aplicações SaaS, você pode usar conectores.

Um conector é um pacote de código opcional que ajuda a acessar armazenamentos de dados no AWS Glue Studio. Você pode assinar vários conectores oferecidos no AWS Marketplace.

Ao criar trabalhos de ETL, você pode usar um armazenamento de dados com suporte nativo, um conector de AWS Marketplace ou seus próprios conectores personalizados. Se você usar um conector, primeiro deve criar uma conexão para ele. Uma conexão que contém as propriedades necessárias para se conectar a um datastore específico. Você usa a conexão com suas origens e destinos de dados no trabalho de ETL. Conectores e conexões trabalham juntos para facilitar o acesso aos armazenamentos de dados.

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.

Você pode assinar conectores para armazenamentos de dados sem suporte nativo e AWS Marketplace, em seguida, usar esses conectores ao criar conexões. Os desenvolvedores também podem criar seus próprios conectores, e você pode usá-los ao criar conexões.

nota

As conexões criadas usando AWS Marketplace conectores personalizados ou em AWS Glue Studio aparecem no AWS Glue console 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 em AWS Marketplace, ou desenvolva seu próprio conector e faça o upload paraAWS 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. Você pode encontrar essas informações na guia Usage (Uso) na página de produto do conector. Por exemplo, se você clicar na guia Uso desta página do produto, AWS GlueConnector for Google BigQuery, poderá ver na seção Recursos adicionais um link para um blog sobre o uso desse conector. Outros conectores podem conter links para instruções na seção Visão geral, como mostrado na página de produto do Conector do Cloudwatch Logs para AWS Glue.

  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 uma função do IAM para o seu trabalho. O trabalho assume a permissão de IAM role que você especificou ao criá-lo. Essa função 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 Visual ETL com 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.

Adição de conectores ao AWS Glue Studio

Um conector é um pedaço de código que facilita a comunicação entre o datastore e o AWS Glue. Você pode assinar um conector oferecido em AWS Marketplace ou criar seu próprio conector personalizado.

Inscrevendo-se em conectores AWS Marketplace

AWS Glue Studiofacilita a adição de conectores de AWS Marketplace.

Para adicionar um conector de AWS Marketplace a AWS Glue Studio
  1. No console do AWS Glue Studio, escolha Connectors (Conectores), no painel de navegação do console.

  2. Na página Conectores, escolha Ir para o AWS Marketplace.

  3. Em AWS Marketplace, em Produtos em destaque, escolha o conector que você deseja usar. Você pode escolher um dos conectores em destaque ou usar a pesquisa. Você pode pesquisar o nome ou tipo de conector e usar opções para refinar os resultados da pesquisa.

    Se você desejar usar um dos conectores em destaque, escolha View product (Ver produto). Se você usou a pesquisa para localizar um conector, escolha o nome do conector.

  4. Na página de produto do conector, use as guias para visualizar informações sobre o conector. Se você decidir adquirir esse conector, escolha Continue to Subscribe (Continuar para assinar).

  5. Forneça as informações de pagamento e escolha Continue to Configure (Continuar para configurar).

  6. Na página Configure this software (Configurar este software), escolha o método de implantação e a versão do conector a serem usados. Em seguida, escolha Continue to Launch (Continuar para iniciar).

  7. Na página Lauch this software (Iniciar este software), você pode analisar as Usage Instructions (Instruções de uso) fornecidas pelo provedor do conector. Quando estiver pronto para continuar, escolha Ativar conexão no AWS Glue Studio.

    Após um curto período, o console apresenta a pagina Create marketplace connection (Criar conexão com o marketplace) no AWS Glue Studio.

  8. Crie uma conexão que use esse conector, conforme descrito em Criar conexões para conectores.

    Como alternativa, você pode escolher Activate connector only (Ativar somente conector) para ignorar a criação de uma conexão no momento. Você deve criar uma conexão em uma data posterior para que possa usar o conector.

Criar conectores personalizados

Você também pode construir seu próprio conector e depois carregar o código do conector no AWS Glue Studio.

Os conectores personalizados são integrados ao AWS Glue Studio pela API de runtime do Spark no AWS Glue. O runtime do Spark no AWS Glue permite conectar qualquer conector compatível com a interface do Spark, Athena ou JDBC. Ele permite que você insira qualquer opção de conexão que esteja disponível com o conector personalizado.

Você pode encapsular todas as suas propriedades de conexão com conexões do AWS Glue e fornecer o nome da conexão ao seu trabalho de ETL. A integração com conexões do Data Catalog permite que você use as mesmas propriedades de conexão em várias chamadas em uma única aplicação Spark ou em diferentes aplicações.

Você pode especificar opções adicionais para a conexão. O script de trabalho que o AWS Glue Studio gera contém uma entrada Datasource que usa a conexão para ligar o conector com as opções de conexão especificadas. Por exemplo:

Datasource = glueContext.create_dynamic_frame.from_options(connection_type = "custom.jdbc", connection_options = {"dbTable":"Account","connectionName":"my-custom-jdbc- connection"}, transformation_ctx = "DataSource0")
Para adicionar um conector personalizado ao AWS Glue Studio
  1. Crie o código para o seu conector personalizado. Para ter mais informações, consulte Desenvolvimento de conectores personalizados.

  2. Adicione suporte ao seu conector para os recursos do AWS Glue. Aqui estão alguns exemplos desses recursos e como eles são usados dentro do script de trabalho gerado pelo AWS Glue Studio:

    • Data type mapping (Mapeamento de tipo de dados): seu conector pode converter os tipos das colunas ao lê-las a partir do datastore subjacente. Por exemplo, um dataTypeMapping de {"INTEGER":"STRING"} converte todas as colunas do tipo Integer para colunas do tipo String ao analisar os registros e construir o DynamicFrame. Isso ajuda os usuários a converter colunas para tipos de sua escolha.

      DataSource0 = glueContext.create_dynamic_frame.from_options(connection_type = "custom.jdbc", connection_options = {"dataTypeMapping":{"INTEGER":"STRING"}", connectionName":"test-connection-jdbc"}, transformation_ctx = "DataSource0")
    • Partitioning for parallel reads (Particionamento para leituras paralelas): o AWS Glue permite leituras de dados paralelas do datastore ao particionar os dados em uma coluna. Você deve especificar a coluna de partição, o limite de partição inferior, o limite de partição superior e o número de partições. Esse recurso permite que você faça uso do paralelismo de dados e de vários executores do Spark alocados para a aplicação do Spark.

      DataSource0 = glueContext.create_dynamic_frame.from_options(connection_type = "custom.jdbc", connection_options = {"upperBound":"200","numPartitions":"4", "partitionColumn":"id","lowerBound":"0","connectionName":"test-connection-jdbc"}, transformation_ctx = "DataSource0")
    • Use AWS Secrets Manager para armazenar credenciais — A conexão do Catálogo de Dados também pode conter um secretId para um segredo armazenado em AWS Secrets Manager. O AWS segredo pode armazenar com segurança as informações de autenticação e credenciais e fornecê-las em tempo de execução. AWS Glue Como alternativa, você pode especificar o secretId no script do Spark da seguinte forma:

      DataSource = glueContext.create_dynamic_frame.from_options(connection_type = "custom.jdbc", connection_options = {"connectionName":"test-connection-jdbc", "secretId"-> "my-secret-id"}, transformation_ctx = "DataSource0")
    • Filtrando os dados de origem com predicados de linha e projeções de coluna: o runtime do Spark no AWS Glue também permite que os usuários propaguem consultas SQL para filtrar dados na origem com predicados de linha e projeções de coluna. Isso permite que seu trabalho de ETL carregue dados filtrados mais rapidamente a partir de armazenamentos de dados que suportam propagações. Uma consulta SQL de exemplo enviada para uma origem dos dados JDBC é: SELECT id, name, department FROM department WHERE id < 200.

      DataSource = glueContext.create_dynamic_frame.from_options(connection_type = "custom.jdbc", connection_options = {"query":"SELECT id, name, department FROM department WHERE id < 200","connectionName":"test-connection-jdbc"}, transformation_ctx = "DataSource0")
    • Marcadores de trabalho: o AWS Glue suporta carregamento incremental de dados de fontes JDBC. O AWS Glue mantém o controle do último registro processado do datastore e processa novos registros de dados nas execuções de trabalho de ETL subsequentes. Os marcadores de trabalho usam a chave primária como a coluna padrão para a chave do marcador, desde que essa coluna aumente ou diminua sequencialmente. Para obter mais informações sobre marcadores de trabalhos, consulte Marcadores de trabalho no Guia do desenvolvedor do AWS Glue .

      DataSource0 = glueContext.create_dynamic_frame.from_options(connection_type = "custom.jdbc", connection_options = {"jobBookmarkKeys":["empno"], "jobBookmarkKeysSortOrder" :"asc", "connectionName":"test-connection-jdbc"}, transformation_ctx = "DataSource0")
  3. Empacote o conector personalizado como um arquivo JAR e carregue-o no Amazon S3.

  4. Teste seu conector personalizado. Para obter mais informações, consulte as instruções GitHub em Glue Custom Connectors: Local Validation Tests Guide.

  5. No console do AWS Glue Studio, escolha Connectors (Conectores), no painel de navegação do console.

  6. Na página Connectors (Conectores) escolha Create custom connector (Criar um conector personalizado).

  7. Na página Create custom connector (Criar um conector personalizado), insira as informações a seguir:

    • O caminho para o local do arquivo JAR do código personalizado no Amazon S3.

    • Um nome para o conector que será usado pelo AWS Glue Studio.

    • Seu tipo de conector, que pode ser JDBC, Spark ou Athena.

    • O nome do ponto de entrada dentro do código personalizado que o AWS Glue Studio chama para usar o conector.

      • Para conectores JDBC, esse campo deve ser o nome da classe do driver do JDBC.

      • Para conectores do Spark, esse campo deve ser o nome da classe da origem dos dados totalmente qualificada, ou seu alias, que você usa ao carregar a origem dos dados do Spark com o operador format.

    • (Somente JDBC) o URL base usado pela conexão JDBC para o datastore.

    • (Opcional) uma descrição do conector personalizado.

  8. Escolha Create connector (Criar conector).

  9. Na página Connectors (Conectores), crie uma conexão que use esse conector, conforme descrito em Criar conexões para conectores.

Criação de trabalhos com conectores personalizados

Você pode usar conectores e conexões para nós de origem e de destino de dados no AWS Glue Studio.

Criar trabalhos que usam um conector para a origem dos dados

Ao criar um novo trabalho, você pode escolher um conector para a origem e para os destinos dos dados.

Para criar um trabalho que use conectores para a origem ou destino dos dados
  1. Faça login no AWS Management Console e abra o AWS Glue Studio console em https://console.aws.amazon.com/gluestudio/.

  2. Na página Connectors (Conectores), na lista de recursos Your connections (Suas conexões), escolha a conexão que você deseja usar em seu trabalho e escolha Create job (Criar trabalho).

    Como alternativa, na página Jobs (Trabalhos) do AWS Glue Studio, em Create job (Criar trabalho), escolha Source and target added to the graph (Origem e destino adicionados ao gráfico). Na lista suspensa Source (Origem), escolha o conector personalizado que você deseja usar em seu trabalho. Também é possível escolher um conector para Target (Destino).

    A imagem é uma captura de tela da página Jobs (Trabalhos), com a lista suspensa Source (Origem) selecionada, mostrando as várias origens de dados que podem ser selecionadas para o trabalho, incluindo conectores.
  3. Escolha Create (Criar) para abrir o editor de trabalhos visual.

  4. Configure o nó da origem dos dados, conforme descrito em Configurar propriedades de origem para nós que usam conectores.

  5. Continue criando seu trabalho de ETL adicionando transformações, armazenamentos de dados adicionais e destinos de dados, conforme descrito em Visual ETL com AWS Glue Studio.

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

  7. Salve o trabalho e o execute.

Configurar propriedades de origem para nós que usam conectores

Depois de criar um trabalho que usa um conector para a origem dos dados, o editor de trabalhos visual exibe um gráfico de trabalho com um nó de origem dos dados configurado para o conector. Você deve configurar as propriedades da origem dos dados para esse nó.

Para configurar as propriedades de um nó de origem dos dados que usa um conector
  1. Escolha o nó da origem dos dados do conector no gráfico de trabalho ou adicione um novo nó e escolha o conector para Node type (Tipo de nó). Em seguida, no lado direito, no painel de detalhes do nó, escolha a guia Data source properties (Propriedades da origem dos dados), se ainda não estiver selecionada.

    A imagem é uma captura de tela da página do editor de trabalhos visual do AWS Glue Studio, com um nó de origem dos dados selecionado no gráfico. A guia Data source properties (Propriedades da origem dos dados), à direita, está selecionada. Os campos exibidos para as propriedades da origem dos dados são Connection (Conexão): uma lista suspensa de conexões disponíveis, seguida de um botão Refresh (Atualizar), e um botão Add schema (Adicionar esquema). Uma seção de opções de conexão adicional é mostrada em seu estado recolhido.
  2. Na guia Data source properties (Propriedades da origem dos dados), escolha a conexão que você deseja usar para esse trabalho.

    Insira as informações adicionais necessárias para cada tipo de conexão:

    JDBC
    • Data source input type (Tipo de entrada da origem dos dados): opte por fornecer um nome de tabela ou uma consulta SQL como a origem dos dados. Dependendo da sua escolha, você precisará fornecer estas informações adicionais:

      • Table name (Nome da tabela): o nome da tabela na origem dos dados. Se a fonte de dados não usar o termo tabela, forneça o nome de uma estrutura de dados apropriada, conforme indicado pelas informações de uso do conector personalizado (que estão disponíveis em AWS Marketplace).

      • Filter predicate (Filtrar predicado): uma cláusula de condição a ser usada ao ler a origem dos dados, semelhante a uma cláusula WHERE, que é usada para recuperar um subconjunto dos dados.

      • Query code (Código de consulta): insira uma consulta SQL a ser usada para recuperar um conjunto de dados específico da origem dos dados. Um exemplo de uma consulta SQL básica é:

        SELECT column_list FROM table_name WHERE where_clause
    • Schema (Esquema): como o AWS Glue Studio está usando informações armazenadas na conexão para acessar a origem dos dados em vez de recuperar informações de metadados de uma tabela do Data Catalog, você deve fornecer os metadados do esquema para a origem dos dados. Escolha Add schema (Adicionar esquema) para abrir o editor de esquemas.

      Para obter instruções sobre como usar o editor de esquemas, consulte Editar o esquema de um nó de transformação personalizada.

    • Partition column (Coluna da partição): (opcional) você pode optar por particionar as leituras de dados fornecendo valores para Partition column (Coluna da partição), Lower bound (Limite inferior), Upper bound (Limite superior) e Number of partitions (Número de partições).

      Os valores de lowerBound e upperBound são usados para decidir o passo de partição, não para filtrar as linhas na tabela. Todas as linhas na tabela são particionadas e retornadas.

      nota

      O particionamento de colunas adiciona uma condição de particionamento extra à consulta usada para ler os dados. Ao usar uma consulta em vez de um nome de tabela, você deve validar se a consulta funciona com a condição de particionamento especificada. Por exemplo:

      • Se o seu formato de consulta for "SELECT col1 FROM table1", teste a consulta anexando uma cláusula WHERE no final da consulta que usa a coluna de partição.

      • Se o seu formato de consulta for "SELECT col1 FROM table1 WHERE col2=val", teste a consulta estendendo a cláusula WHERE com AND e uma expressão que usa a coluna de partição.

    • Data type casting (Conversão de tipos de dados): se a origem dos dados usar tipos de dados que não estão disponíveis no JDBC, use essa seção para especificar como um tipo de dados da origem dos dados deve ser convertido em tipos de dados do JDBC. Você pode especificar até 50 conversões de tipos de dados diferentes. Todas as colunas na origem dos dados que usam o mesmo tipo de dados são convertidas da mesma maneira.

      Por exemplo, se você tiver três colunas na origem dos dados que usam o tipo de dados Float, e você indicar que o tipo de dados Float deve ser convertido para o tipo String do JDBC, então todas as três colunas que usam o tipo de dados Float são convertidas para o tipo de dados String.

    • Job bookmark keys (Chaves de marcadores de trabalho): os marcadores de trabalho ajudam o AWS Glue a manter as informações de estado e a impedir o reprocessamento de dados antigos. Especifique uma ou mais colunas adicionais como chaves de marcadores. O AWS Glue Studio usa chaves de marcadores para rastrear dados que já foram processados durante uma execução anterior do trabalho de ETL. Todas as colunas que você usar para chaves de marcadores personalizadas devem ser estritamente monotônicas, aumentando ou diminuindo, mas lacunas são permitidas.

      Se você inserir várias chaves de marcadores, elas serão combinadas para formar uma única chave composta. Uma chave de marcadores de trabalho composta não deve conter colunas duplicadas. Se você não especificar chaves de marcadores, por padrão, o AWS Glue Studio usará a chave primária como chave de marcadores, desde que ela esteja aumentando ou diminuindo sequencialmente (sem lacunas). Se a tabela não tiver uma chave primária, mas a propriedade de marcador de trabalho estiver habilitada, você deverá fornecer chaves de marcadores de trabalho personalizadas. Caso contrário, a pesquisa de chaves primárias a serem usadas como padrão falhará, assim como a execução do trabalho.

    • Job bookmark keys sorting order (Ordem de classificação de chaves de marcadores de trabalhos): escolha se as chaves-valor aumentam ou diminuem sequencialmente.

    Spark
    • Schema (Esquema): como o AWS Glue Studio está usando informações armazenadas na conexão para acessar a origem dos dados em vez de recuperar informações de metadados de uma tabela do Data Catalog, você deve fornecer os metadados do esquema para a origem dos dados. Escolha Add schema (Adicionar esquema) para abrir o editor de esquemas.

      Para obter instruções sobre como usar o editor de esquemas, consulte Editar o esquema de um nó de transformação personalizada.

    • Connection options (Opções de conexão): insira pares de chave-valor adicionais, conforme necessário, para fornecer informações ou opções de conexão adicionais. Por exemplo, você pode inserir um nome de banco de dados, nome de tabela, nome de usuário e senha.

      Por exemplo, para OpenSearch, você insere os seguintes pares de valores-chave, conforme descrito em: Tutorial: Usar o AWS Glue Connector for Elasticsearch

      • es.net.http.auth.user : username

      • es.net.http.auth.pass : password

      • es.nodes : https://<Elasticsearch endpoint>

      • es.port : 443

      • path: <Elasticsearch resource>

      • es.nodes.wan.only : true

    Para ver um exemplo das opções mínimas de conexão a serem usadas, consulte o exemplo de script de teste MinimalSparkConnectorTest.scala on GitHub, que mostra as opções de conexão que você normalmente forneceria em uma conexão.

    Athena
    • Table name (Nome da tabela): o nome da tabela na origem dos dados. Se você estiver usando um conector para ler os CloudWatch registros do Athena, insira o nome da tabela. all_log_streams

    • Athena schema name (Nome do esquema do Athena): escolha o esquema na origem dos dados do Athena que corresponde ao banco de dados que contém a tabela. Se você estiver usando um conector para ler os CloudWatch registros do Athena, insira um nome de esquema semelhante a. /aws/glue/name

    • Schema (Esquema): como o AWS Glue Studio está usando informações armazenadas na conexão para acessar a origem dos dados em vez de recuperar informações de metadados de uma tabela do Data Catalog, você deve fornecer os metadados do esquema para a origem dos dados. Escolha Add schema (Adicionar esquema) para abrir o editor de esquemas.

      Para obter instruções sobre como usar o editor de esquemas, consulte Editar o esquema de um nó de transformação personalizada.

    • Additional connection options (Opções de conexão adicionais): insira pares de chave-valor adicionais, conforme necessário, para fornecer informações ou opções de conexão adicionais.

    Para ver um exemplo, consulte o README.md arquivo em https://github.com/aws-samples/ aws-glue-samples /tree/master/ GlueCustomConnectors /development/Athena. Nas etapas deste documento, o código de exemplo mostra as opções de conexão mínimas necessárias, que são tableName, schemaName e className. O código de exemplo especifica essas opções como parte da variável optionsMap, mas você pode especificá-las para sua conexão e, em seguida, usar a conexão.

  3. (Opcional) depois de fornecer as informações necessárias, você pode exibir o esquema de dados resultante para sua origem dos dados escolhendo a guia Output schema (Esquema de saída) no painel de detalhes do nó. O esquema exibido nessa guia é usado por todos os nós filhos adicionados ao gráfico de trabalho.

  4. (Opcional) depois de configurar as propriedades do nó e da origem dos dados, você poderá previsualizar o conjunto de dados de sua origem dos dados escolhendo a guia Data preview (Previsualização de dados) no painel de detalhes do nó. Na primeira vez que você escolher essa guia para qualquer nó em seu trabalho, você receberá uma solicitação para fornecer uma função do IAM para acessar os dados. Há um custo associado ao uso desse recurso e o a cobrança começa assim que você fornece uma função do IAM.

Configurar propriedades de destino para nós que usam conectores

Se você usar um conector para o tipo de destino de dados, deverá configurar as propriedades do nó de destino de dados.

Para configurar as propriedades de um nó de destino de dados que usa um conector
  1. Escolha o nó de destino de dados do conector no gráfico de trabalho. Em seguida, no lado direito, no painel de detalhes do nó, escolha a guia Data target properties (Propriedades de destino de dados), se ainda não estiver selecionada.

  2. Na guia Data target properties (Propriedades de destino de dados), escolha a conexão a ser usada para gravar no destino.

    Insira as informações adicionais necessárias para cada tipo de conexão:

    JDBC
    • Connection (Conexão): escolha a conexão a ser usada com o conector. Para obter informações sobre como criar uma conexão, consulte Criar conexões para conectores.

    • Table name (Nome da tabela): o nome da tabela no destino dos dados. Se o destino de dados não usar o termo tabela, forneça o nome de uma estrutura de dados apropriada, conforme indicado pelas informações de uso do conector personalizado (que estão disponíveis em AWS Marketplace).

    • Batch size (Tamanho do lote; opcional): informe o número de linhas ou registros a serem inseridos na tabela de destino em uma única operação. O valor padrão é 1.000 linhas.

    Spark
    • Connection (Conexão): escolha a conexão a ser usada com o conector. Se você não criou uma conexão anteriormente, escolha Create connection (Criar conexão) para criar uma. Para obter informações sobre como criar uma conexão, consulte Criar conexões para conectores.

    • Connection options (Opções de conexão): insira pares de chave-valor adicionais, conforme necessário, para fornecer informações ou opções de conexão adicionais. Você pode inserir um nome de banco de dados, um nome de tabela, um nome de usuário e senha.

      Por exemplo, para OpenSearch, você insere os seguintes pares de valores-chave, conforme descrito em: Tutorial: Usar o AWS Glue Connector for Elasticsearch

      • es.net.http.auth.user : username

      • es.net.http.auth.pass : password

      • es.nodes : https://<Elasticsearch endpoint>

      • es.port : 443

      • path: <Elasticsearch resource>

      • es.nodes.wan.only : true

    Para ver um exemplo das opções mínimas de conexão a serem usadas, consulte o exemplo de script de teste MinimalSparkConnectorTest.scala on GitHub, que mostra as opções de conexão que você normalmente forneceria em uma conexão.

  3. Depois de fornecer as informações necessárias, você pode exibir o esquema de dados resultante para sua origem dos dados escolhendo a guia Output schema (Esquema de saída), no painel de detalhes do nó.

Gerenciar conectores e conexões

Você pode usar a página Conexões no AWS Glue para gerenciar seus conectores e conexões.

Visualizar detalhes do conector e da conexão

Você pode exibir informações resumidas sobre seus conectores e conexões nas tabelas de recursos Your connectors (Seus conectores) e Your connections (Suas conexões) na página Connectors (Conectores). Para visualizar as informações detalhadas, execute as etapas a seguir.

Para exibir detalhes do conector ou da conexão
  1. No console do AWS Glue Studio, escolha Connectors (Conectores), no painel de navegação do console.

  2. Escolha o conector ou conexão cujas informações detalhadas você deseja visualizar.

  3. Escolha Actions (Ações) e, em seguida, escolha View details (Visualizar os detalhes), para abrir a página de detalhes desse conector ou conexão.

  4. Na página de detalhes, você pode optar por Edit (Editar) ou Delete (Excluir) o conector ou a conexão.

    • Para conectores, você pode escolher Create connection (Criar conexão) para criar uma nova conexão que use o conector.

    • Para conexões, você pode escolher Create job (Criar trabalho) para criar um novo trabalho que use a conexão.

Editar conectores e conexões

Você usa a página Connectors (Conectores) para alterar as informações armazenadas em seus conectores e conexões.

Para modificar um conector ou conexão
  1. No console do AWS Glue Studio, escolha Connectors (Conectores), no painel de navegação do console.

  2. Escolha o conector ou conexão que você deseja alterar.

  3. Escolha Ações e, em seguida, escolha Editar.

    Você também pode escolher View details (Visualizar os detalhes) e, na página de detalhes do conector ou da conexão, escolher Edit (Editar).

  4. Na página Edit connector (Editar conector) ou Edit connection (Editar conexão), atualize as informações e escolha Save (Salvar).

Excluir conectores e conexões

Você pode usar a página Connectors (Conectores) para excluir conectores e conexões. Se você excluir um conector, todas as conexões que foram criadas para ele também devem ser excluídas.

Para remover conectores do AWS Glue Studio
  1. No console do AWS Glue Studio, escolha Connectors (Conectores), no painel de navegação do console.

  2. Escolha o conector ou conexão que você deseja excluir.

  3. Escolha Ações e, em seguida, escolha Excluir.

    Você também pode escolher View details (Visualizar os detalhes) e, na página de detalhes do conector ou da conexão, escolher Delete (Excluir).

  4. Confirme que você deseja remover o conector ou a conexão digitando Delete e escolha Delete (Excluir).

    Se você excluir um conector, todas as conexões que foram criadas para ele também devem ser excluídas.

Quaisquer trabalhos que utilizem uma conexão excluída deixarão de funcionar. Você pode editar os trabalhos para usar um datastore diferente ou removê-los. Para obter informações sobre como excluir um trabalho, consulte Excluir trabalhos.

Se você excluir um conector, isso não cancelará a assinatura do conector no AWS Marketplace. Para remover a assinatura de um conector excluído, siga as instruções em Cancelar a assinatura de um conector.

Cancelar a assinatura de um conector

Depois de excluir as conexões e o conector deAWS Glue Studio, você pode cancelar sua assinatura AWS Marketplace se não precisar mais do conector.

nota

Se você cancelar a assinatura de um conector, isso não removerá o conector ou a conexão da sua conta. Quaisquer trabalhos que usem o conector e as conexões relacionadas não poderão mais usá-lo e falharão.

Antes de cancelar a assinatura ou assinar novamente um conector de AWS Marketplace, você deve excluir as conexões existentes e os conectores associados a esse produto. AWS Marketplace

Para cancelar a assinatura de um conector em AWS Marketplace
  1. Faça login no AWS Marketplace console em https://console.aws.amazon.com/marketplace.

  2. Escolha Manage subscriptions (Gerenciar assinaturas).

  3. Na página Manage subscriptions (Gerenciar assinaturas), escolha Manage (Gerenciar), ao lado da assinatura do conector que você deseja cancelar.

  4. Escolha Actions (Ações) e escolha Cancel subscription (Cancelar assinatura).

  5. Marque a caixa de seleção para confirmar que as instâncias em execução são cobradas em sua conta e escolha Yes, cancel subscription (Sim, cancelar assinatura).

Desenvolvimento de conectores personalizados

Você pode escrever código para ler ou gravar dados no seu datastore e formatar esses dados para usá-los com trabalhos do AWS Glue Studio. Você pode criar conectores para armazenamentos de dados do Spark, Athena e JDBC. O código de amostra publicado em GitHub fornece uma visão geral das interfaces básicas que você precisa implementar.

Você precisará de um ambiente de desenvolvimento local para criar seu código de conector. Você pode usar qualquer IDE ou até mesmo um simples editor de linha de comando para escrever seu conector. Exemplos de ambientes de desenvolvimento incluem:

Desenvolvimento de conectores do Spark

Você pode criar um conector Spark com a DataSource API Spark V2 (Spark 2.4) para ler dados.

Para criar um conector personalizado do Spark

Siga as etapas na biblioteca de AWS Glue GitHub amostras para desenvolver conectores Spark, localizada em https://github.com/aws-samples/ aws-glue-samples /tree/master/ GlueCustomConnectors /development/spark/README.md.

Desenvolvimento de conectores do Athena

Você pode criar um conector do Athena para ser usado pelo AWS Glue e pelo AWS Glue Studio para consultar uma origem dos dados personalizada.

Para criar um conector personalizado do Athena

Siga as etapas na biblioteca de AWS Glue GitHub amostras para desenvolver conectores Athena, localizada em https://github.com/aws-samples/ aws-glue-samples /tree/master/ /development/Athena. GlueCustomConnectors

Desenvolvimento de conectores do JDBC

Você pode criar um conector que usa o JDBC para acessar seus armazenamentos de dados.

Para criar um conector do JDBC personalizado
  1. Instale as bibliotecas do runtime Spark do AWS Glue em seu ambiente de desenvolvimento local. Consulte as instruções na biblioteca de AWS Glue GitHub amostras em https://github.com/aws-samples/ aws-glue-samples /tree/master/ /development/ GlueCustomConnectors /README.md. GlueSparkRuntime

  2. Implante o driver do JDBC responsável por recuperar dados da origem dos dados. Consulte a documentação do Java para o Java SE 8.

    Crie um ponto de entrada dentro do seu código que o AWS Glue Studio usará para localizar seu conector. O campo Class name (Nome da classe) deve ser o caminho completo do driver do JDBC.

  3. Use a API GlueContext para ler dados com o conector. Os usuários podem adicionar mais opções de entrada no console do AWS Glue Studio para configurar a conexão com a origem dos dados, se necessário. Para ver um exemplo de código que mostra como ler e gravar em um banco de dados JDBC com um conector JDBC personalizado, consulte Valores personalizados e ConnectionType. AWS Marketplace

Exemplos de uso de conectores personalizados com o AWS Glue Studio

Você pode consultar os seguintes blogs para obter exemplos de uso de conectores personalizados:

Desenvolvendo AWS Glue conectores para AWS Marketplace

Como AWS parceiro, você pode criar conectores personalizados e enviá-los para vender AWS Marketplace aos AWS Glue clientes.

O processo para desenvolver o código do conector é o mesmo que para conectores personalizados, mas o processo de carregamento e verificação do código do conector é mais detalhado. Consulte as instruções em Criação de conectores AWS Marketplace no GitHub site.

Restrições de uso de conectores e conexões no AWS Glue Studio

Ao usar conectores personalizados ou conectores da AWS Marketplace, observe as seguintes restrições:

  • A API testConnection não é suportada com conexões criadas para conectores personalizados.

  • A criptografia de senha de conexão do Data Catalog não é suportada com conectores personalizados.

  • Você não pode usar marcadores de trabalho se especificar um predicado de filtro para um nó de fonte de dados que usa um conector JDBC.

  • A criação de uma conexão com o Marketplace não é suportada fora da interface AWS Glue Studio do usuário.