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 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
-
Créez le code de votre connecteur personnalisé. Pour de plus amples informations, veuillez consulter Développement de connecteurs personnalisés.
-
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 typeInteger
en colonnes de typeString
lors de l'analyse des enregistrements et de la création du fichierDynamicFrame
. 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 lesecretId
à 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")
-
-
Empaquetez le connecteur personnalisé en tant que fichier JAR et téléchargez le fichier sur Amazon S3.
-
Testez votre connecteur personnalisé. Pour plus d'informations, consultez les instructions sur GitHub at Glue Custom Connectors : Local Validation Tests Guide
. -
Dans la console AWS Glue Studio Glue Studio, sélectionnez Connectors (Connecteurs) dans le panneau de navigation de la console.
-
Sur la page Connectors (Connecteurs), sélectionnez Create custom connector (Créer un connecteur personnalisé).
-
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é.
-
-
Sélectionnez Create connector (Créer un connecteur).
-
Depuis la page Connectors (Connecteurs), créez une connexion qui utilise ce connecteur, comme décrit dans Création de connexions pour les connecteurs.
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
-
Dans la console AWS Glue Studio Glue Studio, sélectionnez Connectors (Connecteurs) dans le panneau de navigation de la console.
-
Sur la page Connectors (Connecteurs), sélectionnez Go to AWS Marketplace (Accéder à MKT).
-
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.
-
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).
-
Fournissez les informations de paiement, puis sélectionnez Continue to Configure (Continuer pour configurer).
-
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).
-
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.
-
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.