Conexões do Teradata Vantage - AWS Glue

As traduções são geradas por tradução automática. Em caso de conflito entre o conteúdo da tradução e da versão original em inglês, a versão em inglês prevalecerá.

Conexões do Teradata Vantage

O AWS Glue para Spark pode ser usado para ler e escrever em tabelas no Teradata Vantage no AWS Glue 4.0 e versões posteriores. Você pode definir o que ler no Teradata com uma consulta SQL. Conecte-se ao Teradata usando credenciais de nome de usuário e senha armazenadas no AWS Secrets Manager via conexão do AWS Glue.

Para obter mais informações sobre o Teradata, consulte a Documentação do Teradata.

Configurar conexões do Teradata

Para se conectar ao Teradata via AWS, será necessário criar e armazenar suas credenciais do Teradata em um segredo do AWS Secrets Manager e, em seguida, associar esse segredo a uma conexão ao AWS Glue do Teradata. Se sua instância do Teradata estiver em uma Amazon VPC, você também precisará fornecer opções de rede para sua conexão AWS Glue Teradata.

Para se conectar ao Teradata via AWS Glue, talvez seja necessário atender a alguns pré-requisitos:

  • Se você estiver acessando seu ambiente Teradata via Amazon VPC, configure a Amazon VPC para permitir que seu trabalho do AWS Glue se comunique com o ambiente Teradata. Recomendamos não acessar o ambiente Teradata via Internet pública.

    Na Amazon VPC, identifique ou crie uma VPC, uma Sub-rede e um Grupo de segurança que o AWS Glue usará durante a execução do trabalho. Além disso, você precisa garantir que a Amazon VPC esteja configurada para permitir o tráfego de rede entre sua instância do Teradata e esse local. Seu trabalho precisará estabelecer uma conexão TCP com a porta cliente do Teradata. Para obter mais informações sobre portas do Teradata, consulte a Documentação do Teradata.

    Com base no layout da sua rede, a conectividade segura da VPC pode exigir alterações na Amazon VPC e em outros serviços de rede. Para obter mais informações sobre conectividade com a AWS, consulte Opções de conectividade da AWS na documentação da Teradata.

Para configurar uma conexão AWS Teradata:
  1. Em sua configuração do Teradata, identifique ou crie um usuário e a senha com os quais o AWS Glue se conectará, teradataUser e teradataPassword. Para obter mais informações, consulte Visão geral da segurança do Vantage na documentação do Teradata.

  2. No AWS Secrets Manager, crie um segredo usando suas credenciais do Teradata. Para criar um segredo no Secrets Manager, siga o tutorial disponível em Criar uma AWS Secrets Manager segredo na documentação do AWS Secrets Manager. Depois de criar o segredo, guarde o nome secreto, SecretName, para a próxima etapa.

    • Ao selecionar Pares chave/valor, crie um par para a chave user com o valor teradataUsername.

    • Ao selecionar Pares chave/valor, crie um par para a chave password com o valor teradataPassword.

  3. No console do AWS Glue, crie uma conexão seguindo as etapas em Adicionar uma conexão do AWS Glue. Depois de criar a conexão, guarde o nome da conexão, connectionName, para a próxima etapa.

    • Ao selecionar um Tipo de conexão, selecione Teradata.

    • Ao fornecer o URL do JDBC, forneça o URL da sua instância. Você também pode codificar certos parâmetros de conexão separados por vírgula no URL do JDBC. O URL deve estar de acordo com o seguinte formato: jdbc:teradata://teradataHostname/ParameterName=ParameterValue,ParameterName=ParameterValue

      Os parâmetros de URL compatíveis incluem:

      • DATABASE: o nome do banco de dados no host a ser acessado por padrão.

      • DBS_PORT: a porta do banco de dados usada para execução em uma porta não padrão.

    • Ao selecionar um Tipo de credencial, selecione AWS Secrets Manager e defina Segredo da AWS como secretName.

  4. Nas seguintes situações, configurações adicionais podem ser necessárias:

    • Para instâncias do Teradata hospedadas na AWS em uma Amazon VPC

      • Será necessário fornecer informações de conexão da Amazon VPC à conexão do AWS Glue que define suas credenciais de segurança do Teradata. Ao criar ou atualizar sua conexão, defina VPC, Sub-rede e Grupos de segurança em Opções de rede.

Depois de criar uma conexão AWS Glue Teradata, será necessário executar as etapas a seguir antes de chamar seu método de conexão.

  • Conceda ao perfil do IAM associada ao seu trabalho do AWS Glue permissão para ler secretName.

  • Na configuração do trabalho do AWS Glue, forneça connectionName como uma conexão de rede adicional.

Ler do Teradata

Pré-requisitos:

  • Uma tabela do Teradata da qual você deseja ler. Você precisará do nome da tabela, tableName.

  • Uma conexão AWS Glue Teradata configurada para fornecer informações de autenticação. Conclua as etapas Para configurar uma conexão com o Teradata para configurar suas informações de autenticação. Você precisará do nome da conexão AWS Glue, ConnectionName.

Por exemplo:

teradata_read_table = glueContext.create_dynamic_frame.from_options( connection_type="teradata", connection_options={ "connectionName": "connectionName", "dbtable": "tableName" } )

Você também pode fornecer uma consulta SQL SELECT para filtrar os resultados retornados ao seu DynamicFrame. Você precisará configurar query.

Por exemplo:

teradata_read_query = glueContext.create_dynamic_frame.from_options( connection_type="teradata", connection_options={ "connectionName": "connectionName", "query": "query" } )

Escrever em tabelas do Teradata

Pré-requisitos: uma tabela do Teradata na qual você gostaria de escrever, tableName. É necessário criar a tabela antes de chamar o método de conexão.

Por exemplo:

teradata_write = glueContext.write_dynamic_frame.from_options( connection_type="teradata", connection_options={ "connectionName": "connectionName", "dbtable": "tableName" } )

Referência de opções de conexão do Teradata

  • connectionName — Obrigatório. Usado para leitura/gravação. O nome de uma conexão do AWS Glue Teradata configurada para fornecer informações de autenticação e rede ao seu método de conexão.

  • dbtable: necessário para escrever, obrigatório para leitura, a menos que query seja fornecido. Usado para leitura/gravação. O nome de uma tabela com a qual seu método de conexão interagirá.

  • query - Usado para leitura. Uma consulta SQL SELECT que define o que deve ser recuperado na leitura do Teradata.