Création de tâches avec des connecteurs personnalisés - 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.

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 ETL tâche en ajoutant des transformations, des magasins de données supplémentaires et des cibles de données, comme décrit dansDémarrage de ETL tâches visuelles dans 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 : choisissez de fournir un nom de table ou une SQL requête 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 : entrez une SQL requête à utiliser pour récupérer un ensemble de données spécifique à partir de la source de données. Voici un exemple de SQL requête 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.

    • Répartition des types de données : si la source de données utilise des types de données qui ne sont pas disponibles dansJDBC, utilisez cette section pour spécifier comment un type de données de la source de données doit être converti en types de JDBC données. 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 la source de données comporte trois colonnes qui utilisent le type de Float données et que vous indiquez que le type de Float données doit être converti en type de JDBC String données, les trois colonnes qui utilisent le type de Float données sont converties en types de String données.

    • 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 signet. AWS Glue Studioutilise les touches de signet pour suivre les données qui ont déjà été traitées lors d'une exécution précédente de la ETL tâche. 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 : Tutoriel : Utilisation du AWS Glue connecteur 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 IAM rôle pour accéder aux données. L'utilisation de cette fonctionnalité entraîne un coût, et la facturation commence dès que vous fournissez un IAM rôle.

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 : Tutoriel : Utilisation du AWS Glue connecteur 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.