Utilisation de connecteurs et de connexions avec AWS Glue Studio - 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.

Utilisation de connecteurs et de connexions avec AWS Glue Studio

AWS Glue fournit une prise en charge intégrée des magasins de données les plus couramment utilisés (tels que Amazon Redshift, Amazon Aurora, Microsoft SQL Server, MySQL, MongoDB et PostgreSQL) à l'aide de connexions JDBC. AWS Glue vous permet également d'utiliser des pilotes JDBC personnalisés dans vos tâches Extract-transform-load (ETL). Pour les magasins de données qui ne sont pas pris en charge en mode natif, comme les applications SaaS, vous pouvez utiliser des connecteurs.

Un connecteur est un package de code facultatif qui facilite l'accès aux magasins de données dans AWS Glue Studio Glue Studio. Vous pouvez vous abonner à plusieurs connecteurs proposés dans AWS Marketplace.

Lorsque vous créez des tâches ETL, vous pouvez utiliser un magasin de données pris en charge de manière native AWS Marketplace, un connecteur ou vos propres connecteurs personnalisés. Si vous utilisez un connecteur, vous devez d'abord créer une connexion pour le connecteur. Une connexion contient les propriétés requises pour se connecter à un magasin de données particulier. Vous utilisez la connexion avec vos sources de données et cibles de données dans la tâche ETL. Les connecteurs et les connexions fonctionnent ensemble pour faciliter l'accès aux magasins de données.

Présentation de l'utilisation des connecteurs et des connexions

Une connexion contient les propriétés requises pour se connecter à un magasin de données particulier. Lorsque vous créez une connexion, elle est stockée dans AWS Glue Data Catalog. Vous sélectionnez un connecteur, puis créez une connexion basée sur celui-ci.

Vous pouvez vous abonner à des connecteurs pour les magasins de données non pris en charge de manière native AWS Marketplace, puis utiliser ces connecteurs lorsque vous créez des connexions. Les développeurs peuvent également créer leurs propres connecteurs et vous pouvez les utiliser lors de la création de connexions.

Note

Les connexions créées à l'aide de AWS Marketplace connecteurs personnalisés ou de connecteurs AWS Glue Studio apparaissent dans la AWS Glue console avec le type défini surUNKNOWN.

Les étapes suivantes décrivent le processus global d'utilisation des connecteurs dans AWS Glue Studio Glue Studio :

  1. Abonnez-vous à un connecteur dans AWS Marketplace, ou développez votre propre connecteur et téléchargez-le surAWS Glue Studio. Pour plus d’informations, consultez Ajouter des connecteurs àAWS Glue Studio.

  2. Vérifiez les informations d'utilisation du connecteur. Vous pouvez trouver ces informations sous l'onglet Usage (Utilisation) de la page produit du connecteur. Par exemple, si vous cliquez sur l'onglet Utilisation de cette page produit, AWS GlueConnector for Google BigQuery, vous pouvez voir dans la section Ressources supplémentaires un lien vers un blog sur l'utilisation de ce connecteur. D'autres connecteurs peuvent contenir des liens vers les instructions de la section Présentation, comme indiqué sur la page produit du connecteur Cloudwatch Logs pour AWS Glue.

  3. Créez une connexion. Vous sélectionnez le connecteur à utiliser et fournissez des informations supplémentaires pour la connexion, telles que les informations d'identification de connexion, les chaînes d'URI et les informations de Virtual Private Cloud (VPC). Pour plus d’informations, consultez Création de connexions pour les connecteurs.

  4. Créez un rôle IAM pour votre tâche. La tâche dispose des autorisations du rôle IAM que vous spécifiez quand vous la créez. Ce rôle IAM doit disposer des autorisations nécessaires pour s'authentifier, extraire des données et écrire des données dans vos magasins de données.

  5. Créez une tâche ETL et configurez les propriétés de la source de données pour cette tâche. Fournissez les options de connexion et les informations d'authentification comme indiqué par le fournisseur de connecteur personnalisé. Pour plus d’informations, consultez Création de tâches avec des connecteurs personnalisés.

  6. Personnalisez votre tâche ETL en ajoutant des transformations ou des magasins de données supplémentaires, comme décrit dans ETL visuel avec AWS Glue Studio.

  7. Si vous utilisez un connecteur pour la cible de données, configurez les propriétés de la cible de données pour votre tâche ETL. Fournissez les options de connexion et les informations d'authentification comme indiqué par le fournisseur de connecteur personnalisé. Pour plus d’informations, consultez Création de tâches avec des connecteurs personnalisés.

  8. Personnalisez l'environnement d'exécution de la tâche en configurant ses propriétés, comme décrit dans Modifier les propriétés de tâche.

  9. Exécutez la tâche.

Ajouter des connecteurs àAWS Glue Studio

Un connecteur est un morceau de code qui facilite la communication entre votre magasin de données et AWS Glue. Vous pouvez soit vous abonner à un connecteur proposé dans AWS Marketplace, soit créer votre propre connecteur personnalisé.

Abonnement à des connecteurs AWS Marketplace

AWS Glue Studiopermet d'ajouter facilement des connecteurs à partir de AWS Marketplace.

Pour ajouter un connecteur de AWS Marketplace à AWS Glue Studio
  1. Dans la console AWS Glue Studio Glue Studio, sélectionnez Connectors (Connecteurs) dans le panneau de navigation de la console.

  2. Sur la page Connectors (Connecteurs), sélectionnez Go to AWS Marketplace (Accéder à MKT).

  3. Dans AWS Marketplace, dans Produits en vedette, choisissez le connecteur que vous souhaitez utiliser. Vous pouvez choisir l'un des connecteurs disponibles ou utiliser la recherche. Vous pouvez effectuer une recherche sur le nom ou le type de connecteur, et utiliser des options pour affiner les résultats de cette recherche.

    Si vous souhaitez utiliser l'un des connecteurs proposés, sélectionnez View product (Afficher le produit). Si vous avez utilisé la recherche pour localiser un connecteur, choisissez le nom de celui-ci.

  4. Sur la page produit du connecteur, utilisez les onglets pour afficher des informations sur le connecteur. Si vous décidez d'acheter ce connecteur, sélectionnez Continue to Subscribe (Continuer pour s'abonner).

  5. Fournissez les informations de paiement, puis sélectionnez Continue to Configure (Continuer pour configurer).

  6. Sur la page Configure this software (Configurer ce logiciel), choisissez la méthode de déploiement et la version du connecteur à utiliser. Puis sélectionnez Continue to Launch (Continuer pour lancer).

  7. Sur la page Launch this software (Lancer ce logiciel), vous pouvez consulter les instructions d'utilisation fournies par le fournisseur du connecteur. Lorsque vous êtes prêt à continuer, sélectionnez Activate connection in (Activer la connexion dans)AWS Glue Studio.

    Après un bref instant, la console affiche la page Create marketplace connection (Créer une connexion de site de vente) dans AWS Glue Studio Glue Studio.

  8. Créez une connexion qui utilise ce connecteur, comme décrit dans Création de connexions pour les connecteurs.

    Vous pouvez également sélectionner Activate connector only (Activer le connecteur uniquement) pour ignorer la création d'une connexion à ce stade. Vous devez créer une connexion à une date ultérieure avant de pouvoir utiliser le connecteur.

Création de connecteurs personnalisés

Vous pouvez également créer votre propre connecteur, puis charger le code du connecteur dans AWS Glue Studio.

Les connecteurs personnalisés sont intégrés à AWS Glue Studio Glue Studio via l'API d'exécution Spark AWS Glue. L'exécution Spark AWS Glue vous permet de brancher n'importe quel connecteur compatible avec l'interface Spark, Athena ou JDBC. Cela vous permet de transférer n'importe quelle option de connexion disponible avec le connecteur personnalisé.

Vous pouvez encapsuler toutes vos propriétés de connexion avec AWS Glue Connections (Connexions Glue) et fournir le nom de la connexion à votre tâche ETL. L'intégration aux connexions Data Catalog vous permet d'utiliser les mêmes propriétés de connexion sur plusieurs appels dans une seule application Spark ou différentes applications.

Vous pouvez spécifier des options supplémentaires pour la connexion. Le script de tâche généré par AWS Glue Studio Glue Studio contient une entrée Datasource qui utilise la connexion pour brancher votre connecteur avec les options de connexion spécifiées. Par exemple :

Datasource = glueContext.create_dynamic_frame.from_options(connection_type = "custom.jdbc", connection_options = {"dbTable":"Account","connectionName":"my-custom-jdbc- connection"}, transformation_ctx = "DataSource0")
Pour ajouter un connecteur personnalisé à AWS Glue Studio Glue Studio
  1. Créez le code de votre connecteur personnalisé. Pour plus d’informations, consultez Développement de connecteurs personnalisés.

  2. Ajoutez la prise en charge des fonctions AWS Glue à votre connecteur. Voici quelques exemples de ces fonctions et de leur utilisation dans le script de tâche généré par AWS Glue Studio :

    • Mappage des types de données : votre connecteur peut convertir les colonnes tout en les lisant à partir du magasin de données sous-jacent. Par exemple, un dataTypeMapping de {"INTEGER":"STRING"} convertit toutes les colonnes de type Integer en colonnes de type String lors de l'analyse des enregistrements et de la création du fichier DynamicFrame. Cela aide les utilisateurs à convertir les colonnes en types de leur choix.

      DataSource0 = glueContext.create_dynamic_frame.from_options(connection_type = "custom.jdbc", connection_options = {"dataTypeMapping":{"INTEGER":"STRING"}", connectionName":"test-connection-jdbc"}, transformation_ctx = "DataSource0")
    • Partitionnement pour les lectures parallèles : AWS Glue permet des lectures de données parallèles à partir du magasin de données en partitionnant les données sur une colonne. Vous devez spécifier la colonne de partition, la limite de partition inférieure, la limite de partition supérieure et le nombre de partitions. Cette fonction vous permet d'utiliser à la fois le parallélisme des données et plusieurs exécuteurs Spark alloués à l'application 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")
    • AWS Secrets Manager À utiliser pour stocker les informations d'identification : la connexion au catalogue de données peut également contenir un secretId code secret stocké dans AWS Secrets Manager. Le AWS secret peut stocker en toute sécurité les informations d'authentification et d'identification et les fournir AWS Glue lors de l'exécution. Vous pouvez également spécifier le secretId à partir du script Spark comme suit :

      DataSource = glueContext.create_dynamic_frame.from_options(connection_type = "custom.jdbc", connection_options = {"connectionName":"test-connection-jdbc", "secretId"-> "my-secret-id"}, transformation_ctx = "DataSource0")
    • Filtrage des données source avec des prédicats de ligne et des projections de colonne : l'exécution Spark AWS Glue permet également aux utilisateurs d'envoyer des requêtes SQL pour filtrer les données à la source avec des prédicats de ligne et des projections de colonne. Cela permet à votre tâche ETL de charger plus rapidement les données filtrées à partir des magasins de données qui prennent en charge les transferts. Voici un exemple de requête SQL transmise à une source de données 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")
    • Marque-pages de tâche : AWS Glue prend en charge le chargement progressif de données à partir de sources JDBC. AWS Glue assure le suivi du dernier registre traité à partir du magasin de données et traite les nouveaux registres de données dans les exécutions de tâches ETL suivantes. Les marque-pages de tâche utilisent la clé primaire comme colonne par défaut pour la clé de marque-page, à condition que cette colonne augmente ou diminue de manière séquentielle. Pour plus d'informations sur les marque-pages de tâche, consultez Marque-pages de tâche dans le Guide du développeur 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. Empaquetez le connecteur personnalisé en tant que fichier JAR et téléchargez le fichier sur Amazon S3.

  4. Testez votre connecteur personnalisé. Pour plus d'informations, consultez les instructions sur GitHub at Glue Custom Connectors : Local Validation Tests Guide.

  5. Dans la console AWS Glue Studio Glue Studio, sélectionnez Connectors (Connecteurs) dans le panneau de navigation de la console.

  6. Sur la page Connectors (Connecteurs), sélectionnez Create custom connector (Créer un connecteur personnalisé).

  7. Sur la page Create custom connector (Créer un connecteur personnalisé), saisissez les informations suivantes :

    • Chemin d'accès à l'emplacement du fichier JAR de code personnalisé dans Amazon S3.

    • Nom du connecteur qui sera utilisé par AWS Glue Studio Glue Studio.

    • Votre type de connecteur, JDBC, Spark ou Athena.

    • Nom du point d'entrée dans votre code personnalisé qu'AWS Glue Studio Glue Studio appelle pour utiliser le connecteur.

      • Pour les connecteurs JDBC, ce champ doit être le nom de classe de votre pilote JDBC.

      • Pour les connecteurs Spark, ce champ doit être le nom complet de la classe de source de données, ou son alias, que vous utilisez lors du chargement de la source de données Spark avec l'opérateur format.

    • (JDBC uniquement) URL de base utilisée par la connexion JDBC pour le magasin de données.

    • (Facultatif) Description du connecteur personnalisé.

  8. Sélectionnez Create connector (Créer un connecteur).

  9. Depuis la page Connectors (Connecteurs), créez une connexion qui utilise ce connecteur, comme décrit dans Création de connexions pour les connecteurs.

Création de tâches avec des connecteurs personnalisés

Vous pouvez utiliser des connecteurs et des connexions pour les nœuds de source de données et les nœuds de cible de données dans AWS Glue Studio Glue Studio.

Créer des tâches qui utilisent un connecteur pour la source de données

Lorsque vous créez une tâche, vous pouvez choisir un connecteur pour la source de données et les cibles de données.

Pour créer une tâche qui utilise des connecteurs pour la source de données ou la cible de données
  1. Connectez-vous à la AWS Glue Studio console AWS Management Console et ouvrez-la à l'adresse https://console.aws.amazon.com/gluestudio/.

  2. Depuis la page Connectors (Connecteurs), dans la liste de ressources Your connections (Vos connexions), choisissez la connexion que vous souhaitez utiliser dans votre tâche, puis sélectionnez Create job (Créer une tâche).

    Sinon, sur la page Jobs (Tâches) d'AWS Glue Studio Glue Studio, sous Create job (Créer une tâche), sélectionnez Source and target added to the graph (Source et cible ajoutées au graphique). Dans la liste déroulante Source, choisissez le connecteur personnalisé que vous souhaitez utiliser dans votre tâche. Vous pouvez également sélectionner un connecteur pour Target (Cible).

    L'image est une capture d'écran de la page Jobs (Tâches), avec la liste déroulante Source sélectionnée, montrant les différentes sources de données qui peuvent être sélectionnées pour la tâche, y compris les connecteurs.
  3. Sélectionnez ensuite Create (Créer) pour ouvrir l'éditeur de tâches visuelles.

  4. Configurez le nœud de source de données, comme décrit dans Configurer les propriétés source pour les nœuds qui utilisent des connecteurs.

  5. Continuez à créer votre tâche ETL en ajoutant des transformations, des magasins de données supplémentaires et des cibles de données, comme décrit dans ETL visuel avec AWS Glue Studio.

  6. Personnalisez l'environnement d'exécution de la tâche en configurant les propriétés de la tâche comme décrit dans Modifier les propriétés de tâche.

  7. Enregistrez, puis exécutez la tâche.

Configurer les propriétés source pour les nœuds qui utilisent des connecteurs

Après avoir créé une tâche qui utilise un connecteur pour la source de données, l'éditeur de tâche visuelle affiche un graphique de tâche avec un nœud de source de données configuré pour le connecteur. Vous devez configurer les propriétés de la source de données pour ce nœud.

Pour configurer les propriétés d'un nœud de source de données qui utilise un connecteur
  1. Choisissez le nœud de la source de données du connecteur dans le graphique de la tâche ou ajoutez un nouveau nœud et choisissez le connecteur pour le type de nœud. Ensuite, sur la droite, dans le panneau des détails du nœud, sélectionnez l'onglet Data source properties (Propriétés de la source de données), s'il n'est pas déjà sélectionné.

    L'image est une capture d'écran de la page de l'éditeur de tâches visuel AWS Glue Studio Glue Studio, avec un nœud de source de données sélectionné dans le graphique. L'onglet Data source properties (Propriétés de la source de données) à droite est sélectionné. Les champs affichés pour les propriétés de la source de données sont Connection (Connexion) (une liste déroulante des connexions disponibles, suivie d'un bouton Refresh [Actualiser]) et d'un bouton Add schema (Ajouter un schéma). Une section Connection options (Options de connexion) supplémentaire s'affiche dans son état réduit.
  2. Sous l'onglet Data source properties (Propriétés de la source de données), choisissez la connexion que vous souhaitez utiliser pour cette tâche.

    Saisissez les informations supplémentaires requises pour chaque type de connexion :

    JDBC
    • Type d'entrée de source de données : fournissez un nom de table ou une requête SQL comme source de données. Selon votre choix, vous devrez ensuite fournir les informations complémentaires suivantes :

      • Nom de la table : nom de la table dans la source de données. Si la source de données n'utilise pas le terme table, indiquez le nom d'une structure de données appropriée, comme indiqué par les informations d'utilisation du connecteur personnalisé (disponibles dans AWS Marketplace).

      • Prédicat de filtre : clause de condition à utiliser lors de la lecture de la source de données, similaire à une clause WHERE, qui est utilisée pour récupérer un sous-ensemble des données.

      • Code de requête : saisissez une requête SQL à utiliser pour récupérer un ensemble de données spécifique à partir de la source de données. Voici un exemple d'une requête SQL de base :

        SELECT column_list FROM table_name WHERE where_clause
    • Schéma : étant donné qu'AWS Glue Studio Glue Studio utilise les informations stockées dans la connexion pour accéder à la source de données au lieu de récupérer les informations de métadonnées à partir d'une table Data Catalog, vous devez fournir les métadonnées de schéma pour la source de données. Sélectionnez Add schema (Ajouter un schéma) pour ouvrir l'éditeur de schéma.

      Pour obtenir des instructions sur l'utilisation de l'éditeur de schéma, veuillez consulter Modifier le schéma d'un nœud de transformation personnalisé.

    • Colonne de partition : (facultatif) vous pouvez choisir de partitionner les lectures de données en fournissant des valeurs pour Partition column (Colonne de partition), Lower bound (Limite inférieure), Upper bound (Limite supérieure) et Number of partitions (Nombre de partitions).

      Les valeurs lowerBound et upperBound sont utilisées pour décider de la progression de la partition, pas pour filtrer les lignes de la table. Toutes les lignes de la table sont partitionnées et renvoyées.

      Note

      Le partitionnement de colonne ajoute une condition de partitionnement supplémentaire à la requête utilisée pour lire les données. Lorsque vous utilisez une requête au lieu d'un nom de table, vous devez valider que la requête fonctionne avec la condition de partitionnement spécifiée. Par exemple :

      • Si le format de votre requête est "SELECT col1 FROM table1", testez la requête en ajoutant une clause WHERE à la fin de la requête qui utilise la colonne de partition.

      • Si le format de votre requête est "SELECT col1 FROM table1 WHERE col2=val", testez la requête en étendant la clause WHERE avec AND et une expression qui utilise la colonne de partition.

    • Conversion de type de données : si la source de données utilise des types de données qui ne sont pas disponibles dans JDBC, utilisez cette section pour spécifier comment un type de données de la source de données doit être converti en types de données JDBC. Vous pouvez spécifier jusqu'à 50 conversions de types de données différents. Toutes les colonnes de la source de données qui utilisent le même type de données sont converties de la même manière.

      Par exemple, si vous avez trois colonnes dans la source de données qui utilisent le type de données Float et que vous indiquez que le type de données Float doit être converti en type de données JDBC String, les trois colonnes qui utilisent le type de données Float sont converties en types de données String.

    • Job bookmark keys (Clés de marque-pages de tâche) : les marque-pages de tâche permettent à AWS Glue de conserver des informations d'état et d'empêcher le retraitement des anciennes données. Spécifiez une ou plusieurs colonnes comme clés de marque-page. AWS Glue Studio utilise les clés de marque-page pour suivre les données qui ont déjà été traitées au cours d'une exécution précédente de la tâche ETL. Toutes les colonnes que vous utilisez pour les clés de marque-page personnalisées doivent être croissantes ou décroissantes de manière monotonique et stricte, mais les espaces sont autorisés.

      Si vous saisissez plusieurs clés de marque-page, elles sont combinées pour former une seule clé composée. Une clé de marque-page de tâche composée ne doit pas contenir de colonnes en double. Si vous ne spécifiez pas de clés de marque-page, AWS Glue Studio utilise par défaut la clé primaire comme clé de marque-page, à condition que la clé primaire augmente ou diminue de manière séquentielle (sans espace). Si la table n'a pas de clé primaire, mais que la propriété de marque-page de tâche est activée, vous devez fournir des clés de marque-page de tâche personnalisées. Sinon, la recherche des clés primaires à utiliser par défaut échouera et l'exécution du travail échouera.

    • Ordre de tri des clés de marque-page de la tâche : indiquez si les valeurs clés augmentent ou diminuent de façon séquentielle.

    Spark
    • Schéma : étant donné qu'AWS Glue Studio Glue Studio utilise les informations stockées dans la connexion pour accéder à la source de données au lieu de récupérer les informations de métadonnées à partir d'une table Data Catalog, vous devez fournir les métadonnées de schéma pour la source de données. Sélectionnez Add schema (Ajouter un schéma) pour ouvrir l'éditeur de schéma.

      Pour obtenir des instructions sur l'utilisation de l'éditeur de schéma, veuillez consulter Modifier le schéma d'un nœud de transformation personnalisé.

    • Options de connexion : saisissez des paires clé-valeur supplémentaires si nécessaire pour fournir des informations ou des options de connexion supplémentaires. Par exemple, vous pouvez saisir un nom de base de données, un nom de table, un nom d'utilisateur et un mot de passe.

      Par exemple, pour OpenSearch, vous entrez les paires clé-valeur suivantes, comme décrit dans : Didacticiel : Utilisation du connecteur AWS Glue pour 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

    Pour un exemple des options de connexion minimales à utiliser, consultez l'exemple de script de test MinimalSparkConnectorTest.scala on GitHub, qui indique les options de connexion que vous devez normalement fournir dans une connexion.

    Athena
    • Nom de la table : nom de la table dans la source de données. Si vous utilisez un connecteur pour lire les CloudWatch journaux d'Athena, vous devez entrer le nom de la table. all_log_streams

    • Nom du schéma Athena : choisissez le schéma dans votre source de données Athena qui correspond à la base de données qui contient la table. Si vous utilisez un connecteur pour lire les CloudWatch journaux d'Athena, vous devez entrer un nom de schéma similaire à. /aws/glue/name

    • Schéma : étant donné qu'AWS Glue Studio Glue Studio utilise les informations stockées dans la connexion pour accéder à la source de données au lieu de récupérer les informations de métadonnées à partir d'une table Data Catalog, vous devez fournir les métadonnées de schéma pour la source de données. Sélectionnez Add schema (Ajouter un schéma) pour ouvrir l'éditeur de schéma.

      Pour obtenir des instructions sur l'utilisation de l'éditeur de schéma, veuillez consulter Modifier le schéma d'un nœud de transformation personnalisé.

    • Options de connexion supplémentaires : saisissez des paires clé-valeur supplémentaires si nécessaire pour fournir des informations ou des options de connexion supplémentaires.

    Pour un exemple, consultez le README.md fichier à l'adresse https://github.com/aws-samples/ aws-glue-samples /tree/master/ /development/Athena GlueCustomConnectors. Dans les étapes de ce document, l'exemple de code montre les options de connexion minimales requises, qui sont tableName, schemaName et className. L'exemple de code spécifie ces options dans le cadre de la variable optionsMap, mais vous pouvez les spécifier pour votre connexion, puis utiliser la connexion.

  3. (Facultatif) Après avoir fourni les informations requises, vous pouvez afficher le schéma de données résultant pour votre source de données en choisissant l'onglet Output schema (Schéma de sortie) dans le panneau des détails du nœud. Le schéma affiché sur cet onglet est utilisé par tous les nœuds enfants que vous ajoutez au graphique de tâche.

  4. (Facultatif) Après avoir configuré les propriétés du nœud et les propriétés de la source de données, vous pouvez prévisualiser le jeu de données à partir de votre source de données en sélectionnant l'onglet Data preview (Prévisualisation des données) dans le volet de détails du nœud. La première fois que vous choisissez cet onglet pour un nœud de votre tâche, vous êtes invité à fournir un rôle IAM pour accéder aux données. Il y a un coût associé à l'utilisation de cette fonction, et la facturation commence dès que vous fournissez le rôle IAM.

Configurer les propriétés cibles pour les nœuds qui utilisent des connecteurs

Si vous utilisez un connecteur pour le type de cible de données, vous devez configurer les propriétés du nœud de cible de données.

Pour configurer les propriétés d'un nœud de cible de données qui utilise un connecteur
  1. Choisissez le nœud cible des données du connecteur dans le graphique de la tâche. Ensuite, sur la droite, dans le panneau des détails du nœud, sélectionnez l'onglet Data target properties (Propriétés de la cible de données), s'il n'est pas déjà sélectionné.

  2. Dans Data target properties (Propriétés des cibles de données), choisissez la connexion à utiliser pour écrire sur la cible.

    Saisissez les informations supplémentaires requises pour chaque type de connexion :

    JDBC
    • Connexion : choisissez la connexion à utiliser avec votre connecteur. Pour plus d'informations sur la création d'une connexion, consultez Création de connexions pour les connecteurs.

    • Nom de la table : nom de la table dans la cible de données. Si la cible de données n'utilise pas le terme table, indiquez le nom d'une structure de données appropriée, comme indiqué par les informations d'utilisation du connecteur personnalisé (disponibles dans AWS Marketplace).

    • Taille de lot (facultatif) : saisissez le nombre de lignes ou d'enregistrements à insérer dans la table cible en une seule opération. La valeur par défaut est de 1 000 lignes.

    Spark
    • Connexion : choisissez la connexion à utiliser avec votre connecteur. Si vous n'avez pas créé de connexion auparavant, sélectionnez Create connection (Créer une connexion) pour en créer une. Pour plus d'informations sur la création d'une connexion, consultez Création de connexions pour les connecteurs.

    • Options de connexion : saisissez des paires clé-valeur supplémentaires si nécessaire pour fournir des informations ou des options de connexion supplémentaires. Vous pouvez saisir un nom de base de données, un nom de table, un nom d'utilisateur et un mot de passe.

      Par exemple, pour OpenSearch, vous entrez les paires clé-valeur suivantes, comme décrit dans : Didacticiel : Utilisation du connecteur AWS Glue pour 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

    Pour un exemple des options de connexion minimales à utiliser, consultez l'exemple de script de test MinimalSparkConnectorTest.scala on GitHub, qui indique les options de connexion que vous devez normalement fournir dans une connexion.

  3. Après avoir fourni les informations requises, vous pouvez afficher le schéma de données résultant pour votre source de données en choisissant l'onglet Output schema (Schéma de sortie) dans le panneau des détails du nœud.

Gestion des connecteurs et des connexions

Vous utilisez la page Connexions dans AWS Glue pour gérer vos connecteurs et connexions.

Affichage des détails du connecteur et de la connexion

Vous pouvez afficher des informations récapitulatives sur vos connecteurs et connexions dans les tableaux de ressources Your connectors (Vos connecteurs) et Your connections (Vos connexions) sur la page Connectors (Connecteurs). Pour afficher les informations détaillées, procédez comme suit.

Pour afficher les détails des connecteurs ou des connexions
  1. Dans la console AWS Glue Studio Glue Studio, sélectionnez Connectors (Connecteurs) dans le panneau de navigation de la console.

  2. Choisissez le connecteur ou la connexion dont vous souhaitez afficher les informations détaillées.

  3. Sélectionnez Actions, puis View details (Afficher les détails) pour ouvrir la page de détail de ce connecteur ou de cette connexion.

  4. Sur la page détaillée, vous pouvez choisir de Edit (Modifier) ou de Delete (Supprimer) le connecteur ou la connexion.

    • Pour les connecteurs, vous pouvez sélectionner Create connecton (Créer une connexion) pour créer une connexion qui utilise le connecteur.

    • Pour les connexions, vous pouvez sélectionner Create job (Créer une tâche) pour créer une tâche qui utilise la connexion.

Modification des connecteurs et des connexions

Vous utilisez la page Connectors (Connecteurs) pour modifier les informations stockées dans vos connecteurs et connexions.

Pour modifier un connecteur ou une connexion
  1. Dans la console AWS Glue Studio Glue Studio, sélectionnez Connectors (Connecteurs) dans le panneau de navigation de la console.

  2. Sélectionnez le connecteur ou la connexion que vous souhaitez modifier.

  3. Sélectionnez Actions, puis Edit (Modifier).

    Vous pouvez également sélectionner View details (Afficher les détails) et sur la page des détails du connecteur ou de la connexion, vous pouvez sélectionner Edit (Modifier).

  4. Sur la page Edit connector (Modifier le connecteur) ou Edit connection (Modifier la connexion), mettez à jour les informations, puis sélectionnez Save (Enregistrer).

Suppression des connecteurs et des connexions

Vous pouvez utiliser la page Connectors (Connecteurs) pour supprimer les connecteurs et les connexions. Si vous supprimez un connecteur, toutes les connexions créées pour ce connecteur doivent également être supprimées.

Pour retirer des connecteurs de AWS Glue Studio
  1. Dans la console AWS Glue Studio Glue Studio, sélectionnez Connectors (Connecteurs) dans le panneau de navigation de la console.

  2. Sélectionnez le connecteur ou la connexion que vous souhaitez supprimer.

  3. Sélectionnez Actions, puis sélectionnez Delete (Supprimer).

    Vous pouvez également sélectionner View details (Afficher les détails), puis sur la page détaillée du connecteur ou de la connexion, vous pouvez sélectionnez Delete (Supprimer).

  4. Vérifiez que vous souhaitez supprimer le connecteur ou la connexion en saisissant Delete, puis sélectionnez Delete (Supprimer).

    Lors de la suppression d'un connecteur, toutes les connexions créées pour celui-ci sont également supprimées.

Toutes les tâches qui utilisent une connexion supprimée ne fonctionneront plus. Vous pouvez modifier les tâches pour utiliser un autre magasin de données ou les supprimer. Pour plus d'informations sur la suppression d'une tâche, veuillez consulter Supprimer une tâche.

Si vous supprimez un connecteur, cela n'annule pas l'abonnement au connecteur dans AWS Marketplace. Pour supprimer un abonnement à un connecteur supprimé, suivez les instructions de la rubrique Annuler un abonnement pour un connecteur.

Annuler un abonnement pour un connecteur

Après avoir supprimé les connexions et le connecteurAWS Glue Studio, vous pouvez annuler votre abonnement AWS Marketplace si vous n'en avez plus besoin.

Note

Si vous annulez votre abonnement à un connecteur, cela ne supprime pas le connecteur ou la connexion de votre compte. Toutes les tâches qui utilisent le connecteur et les connexions associées ne pourront plus utiliser le connecteur et échoueront.

Avant de vous désabonner ou de vous réabonner à un connecteur de AWS Marketplace, vous devez supprimer les connexions existantes et les connecteurs associés à ce AWS Marketplace produit.

Pour vous désabonner d'un connecteur dans AWS Marketplace
  1. Connectez-vous à la AWS Marketplace console à l'adresse https://console.aws.amazon.com/marketplace.

  2. Sélectionnez Manage subscriptions (Gérer les abonnements).

  3. Depuis la page Manage subscriptions (Gérer les abonnements), sélectionnez Manage (Gérer) en regard de l'abonnement au connecteur que vous souhaitez annuler.

  4. Sélectionnez Actions, puis Cancel subscription (Annuler l'abonnement).

  5. Cochez la case pour confirmer que les instances en cours d'exécution sont facturées sur votre compte, puis sélectionnez Yes, cancel subscription (Oui, annuler l'abonnement).

Développement de connecteurs personnalisés

Vous pouvez écrire le code qui lit ou écrit des données dans votre magasin de données et formate les données à utiliser avec les tâches AWS Glue Studio Glue Studio. Vous pouvez créer des connecteurs pour les magasins de données Spark, Athena et JDBC. L'exemple de code publié sur GitHub fournit un aperçu des interfaces de base que vous devez implémenter.

Vous aurez besoin d'un environnement de développement local pour créer votre code de connecteur. Vous pouvez utiliser n'importe quel IDE ou même simplement un éditeur de ligne de commande pour écrire votre connecteur. Voici quelques exemples d'environnements de développement :

Développement de connecteurs Spark

Vous pouvez créer un connecteur Spark avec DataSource l'API Spark V2 (Spark 2.4) pour lire les données.

Pour créer un connecteur Spark personnalisé

Suivez les étapes de la bibliothèque AWS Glue GitHub d'exemples pour développer des connecteurs Spark, qui se trouve à l'adresse https://github.com/aws-samples/ aws-glue-samples /tree/master/ /development/Spark/README.md GlueCustomConnectors.

Développement de connecteurs Athena

Vous pouvez créer un connecteur Athena à utiliser par AWS Glue et AWS Glue Studio Glue Studio pour interroger une source de données personnalisée.

Pour créer un connecteur Athena personnalisé

Suivez les étapes de la bibliothèque AWS Glue GitHub d'exemples pour développer des connecteurs Athena, qui se trouve à l'adresse https://github.com/aws-samples/ aws-glue-samples /tree/master/ GlueCustomConnectors /development/Athena.

Développement de connecteurs JDBC

Vous pouvez créer un connecteur qui utilise JDBC pour accéder à vos magasins de données.

Pour créer un connecteur JDBC personnalisé
  1. Installez les bibliothèques d'exécution Spark AWS Glue dans votre environnement de développement local. Reportez-vous aux instructions de la bibliothèque d'AWS Glue GitHub exemples à l'adresse https://github.com/aws-samples/ aws-glue-samples /tree/master/ /development/ GlueCustomConnectors /README.md. GlueSparkRuntime

  2. Implémentez le pilote JDBC chargé de récupérer les données de la source de données. Reportez-vous à la documentation Java pour Java SE 8.

    Créez un point d'entrée dans votre code qu'AWS Glue Studio Glue Studio utilise pour localiser votre connecteur. Le champ Class name (Nom de classe) doit être le chemin complet de votre pilote JDBC.

  3. Utilisation de l'API GlueContext pour lire les données avec le connecteur. Les utilisateurs peuvent ajouter plus d'options d'entrée dans la console AWS Glue Studio Glue Studio pour configurer la connexion à la source de données, si nécessaire. Pour un exemple de code qui montre comment lire et écrire dans une base de données JDBC avec un connecteur JDBC personnalisé, voir Valeurs personnalisées et ConnectionType. AWS Marketplace

Exemples d'utilisation de connecteurs personnalisés avec AWS Glue Studio Glue Studio

Vous pouvez consulter les blogs suivants pour des exemples d'utilisation de connecteurs personnalisés :

Développement de AWS Glue connecteurs pour AWS Marketplace

En tant que AWS partenaire, vous pouvez créer des connecteurs personnalisés et les télécharger AWS Marketplace pour les vendre aux AWS Glue clients.

Le processus de développement du code du connecteur est le même que pour les connecteurs personnalisés, mais le processus de téléchargement et de vérification du code du connecteur est plus détaillé. Reportez-vous aux instructions de la section Création de connecteurs pour AWS Marketplace sur le GitHub site Web.

Restrictions d'utilisation des connecteurs et des connexions dans AWS Glue Studio Glue Studio

Lorsque vous utilisez des connecteurs personnalisés ou des connecteurs provenant de AWS Marketplace, prenez note des restrictions suivantes :

  • L'API testConnection n'est pas prise en charge avec les connexions créées pour les connecteurs personnalisés.

  • Le chiffrement du mot de passe de connexion Data Catalog n'est pas pris en charge avec les connecteurs personnalisés.

  • Vous ne pouvez pas utiliser de marque-pages de tâche si vous spécifiez un prédicat de filtre pour un nœud de source de données qui utilise un connecteur JDBC.

  • La création d'une connexion Marketplace n'est pas prise en charge en dehors de l'interface AWS Glue Studio utilisateur.