Connexions Teradata Vantage - AWS Glue

Les traductions sont fournies par des outils de traduction automatique. En cas de conflit entre le contenu d'une traduction et celui de la version originale en anglais, la version anglaise prévaudra.

Connexions Teradata Vantage

Vous pouvez utiliser AWS Glue for Spark pour lire et écrire dans des tables existantes dans Teradata Vantage dans AWS Glue 4.0 et versions ultérieures. Vous pouvez définir ce qu'il faut lire dans Teradata à l'aide d'une requête SQL. Vous pouvez vous connecter à Teradata à l'aide du nom d'utilisateur et du mot de passe enregistrés AWS Secrets Manager via une connexion AWS Glue.

Pour de plus amples informations sur Teradata, veuillez consulter la documentation Teradata

Configuration de connexions Teradata

Pour vous connecter à Teradata depuis AWS Glue, vous devez créer et stocker vos informations d'identification Teradata dans un AWS Secrets Manager secret, puis associer ce secret à une connexion AWS Glue Teradata. Si votre instance Teradata se trouve dans un Amazon VPC, vous devrez également fournir des options réseau à votre connexion AWS Glue Teradata.

Pour vous connecter à Teradata depuis AWS Glue, vous aurez peut-être besoin de certaines conditions préalables :

  • Si vous accédez à votre environnement Teradata via Amazon VPC, configurez Amazon VPC pour permettre à votre tâche AWS Glue de communiquer avec l'environnement Teradata. Nous vous déconseillons d'accéder à l'environnement Teradata via l'Internet public.

    Dans Amazon VPC, identifiez ou créez un VPC, un sous-réseau et un groupe de sécurité que AWS Glue utilisera lors de l'exécution de la tâche. En outre, vous devez vous assurer qu'Amazon VPC est configuré pour autoriser le trafic réseau entre votre instance Teradata et cet emplacement. Votre tâche devra établir une connexion TCP avec votre port client Teradata. Pour de plus amples informations sur les ports Teradata, consultez la documentation Teradata.

    Selon la configuration de votre réseau, la connectivité VPC sécurisée peut nécessiter des modifications dans Amazon VPC et dans d'autres services réseau. Pour plus d'informations sur AWS la connectivité, consultez les options de AWS connectivité dans la documentation Teradata.

Pour configurer une connexion AWS Glue Teradata :
  1. Dans votre configuration Teradata, identifiez ou créez un utilisateur et un mot de passe auxquels AWS Glue se connectera, TeradataUser et TeradataPassword. Pour plus d'informations, consultez la présentation de Vantage Security dans la documentation Teradata.

  2. Dans AWS Secrets Manager, créez un secret à l'aide de vos informations d'identification Teradata. Pour créer un secret dans Secrets Manager, suivez le didacticiel disponible dans la section Créer un AWS Secrets Manager secret dans la AWS Secrets Manager documentation. Après avoir créé le secret, conservez le nom du secret, secretName, pour l'étape suivante.

    • Lorsque vous sélectionnez Paires clé/valeur, créez une paire pour la clé user avec la valeur teradataUsername.

    • Lorsque vous sélectionnez Paires clé/valeur, créez une paire pour la clé password avec la valeur teradataPassword.

  3. Dans la console AWS Glue, créez une connexion en suivant les étapes décrites dansAjout d'une connexion AWS Glue. Après avoir créé la connexion, conservez le nom de la connexion, connectionName, pour l'étape suivante.

    • Lorsque vous sélectionnez un type de connexion, sélectionnez Teradata.

    • Lorsque vous fournissez l'URL JDBC, indiquez l'URL de votre instance. Vous pouvez également coder en dur certains paramètres de connexion séparés par des virgules dans votre URL JDBC. L'URL doit être conforme au format suivant : jdbc:teradata://teradataHostname/ParameterName=ParameterValue,ParameterName=ParameterValue

      Les paramètres d'URL pris en charge sont les suivants :

      • DATABASE – nom de la base de données sur l'hôte à laquelle accéder par défaut.

      • DBS_PORT – le port de base de données utilisé lors de l'exécution sur un port non standard.

    • Lorsque vous sélectionnez un type d'informations d'identification, sélectionnez AWS Secrets Manager, puis définissez le Secret AWS dans secretName.

  4. Dans les situations suivantes, vous pouvez avoir besoin d'une configuration supplémentaire :

    • Pour les instances Teradata hébergées sur AWS un Amazon VPC

      • Vous devrez fournir les informations de connexion Amazon VPC à la connexion AWS Glue qui définit vos informations de sécurité Teradata. Lorsque vous créez ou mettez à jour votre connexion, définissez le VPC, le sous-réseau et les groupes de sécurité dans les options réseau.

Après avoir créé une connexion AWS Glue Teradata, vous devez effectuer les étapes suivantes avant d'appeler votre méthode de connexion.

  • Accordez au rôle IAM associé à votre tâche AWS Glue l'autorisation de lire SecretName.

  • Dans la configuration de votre tâche AWS Glue, indiquez ConnectionName en tant que connexion réseau supplémentaire.

Lecture à partir de Teradata

Prérequis :

  • Une table Teradata à partir de laquelle vous souhaitez lire. Vous aurez besoin du nom de la table Teradata, tableName.

  • Une connexion AWS Glue Teradata configurée pour fournir des informations d'authentification. Suivez les étapes pour configurer une connexion à Teradata afin de configurer vos informations d'authentification. Vous aurez besoin du nom de la connexion AWS Glue, ConnectionName.

Par exemple :

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

Vous pouvez également fournir une requête SQL SELECT pour filtrer les résultats renvoyés à votre DynamicFrame. Vous devrez configurer query.

Par exemple :

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

Écrire dans les tables Teradata

Conditions préalables : une table Teradata dans laquelle vous souhaitez écrire, tableName. Vous devez créer la table avant d'appeler la méthode de connexion.

Par exemple :

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

Référence des options de connexion Teradata

  • connectionName — Obligatoire. Utilisé pour la lecture/l'écriture. Nom d'une connexion AWS Glue Teradata configurée pour fournir des informations d'authentification et de mise en réseau à votre méthode de connexion.

  • dbtable — obligatoire pour l'écriture, obligatoire pour la lecture à moins qu'une query ne soit fournie. Utilisé pour la lecture/l'écriture. Le nom de la table avec lequelle votre méthode de connexion va interagir.

  • query : utilisé pour la lecture. Une requête SELECT SQL définissant ce qui doit être récupéré lors de la lecture à partir de Teradata.