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 Azure SQL
Vous pouvez utiliser AWS Glue for Spark pour lire et écrire dans des tables sur les instances gérées Azure SQL dans AWS Glue 4.0 et les versions ultérieures. Vous pouvez définir ce qu'il faut lire dans Azure SQL à l'aide d'une requête SQL. Vous vous connectez à Azure SQL à l'aide des informations d'identification utilisateur et de mot de passe stockées AWS Secrets Manager via une connexion AWS Glue.
Pour plus d'informations sur Azure SQL, consultez la documentation Azure SQL
Configuration des connexions Azure SQL
Pour vous connecter à Azure SQL depuis AWS Glue, vous devez créer et stocker vos informations d'identification Azure SQL dans un AWS Secrets Manager secret, puis associer ce secret à une connexion Azure SQL AWS Glue.
Pour configurer une connexion à Azure SQL :
Dans AWS Secrets Manager, créez un secret à l'aide de vos informations d'identification Azure SQL. Pour créer un secret dans Secrets Manager, suivez le didacticiel disponible dans la section Créer un AWS Secrets Manager secret de la AWS Secrets Manager documentation. Après avoir créé le secret, conservez le nom du secret
secretNamepour l'étape suivante.-
Lorsque vous sélectionnez des Key/value paires, créez une paire pour la clé
useravec la valeurazuresqlUsername. -
Lorsque vous sélectionnez des Key/value paires, créez une paire pour la clé
passwordavec la valeurazuresqlPassword.
-
Dans la console AWS Glue, créez une connexion en suivant les étapes décrites dansAjouter une AWS Glue connexion. Après avoir créé la connexion, conservez le nom de la connexion
connectionName, pour une utilisation ultérieure dans AWS Glue.Lorsque vous sélectionnez un type de connexion, sélectionnez Azure SQL.
-
Lorsque vous fournissez une URL Azure SQL, fournissez une URL de point de terminaison JDBC.
La URL doit avoir le format suivant :
jdbc:sqlserver://.databaseServerName:databasePort;databaseName=azuresqlDBname;AWS Glue nécessite les propriétés d'URL suivantes :
databaseName– une base de données par défaut dans Azure SQL à laquelle se connecter.
Pour plus d’informations sur les URL JDBC pour les instances gérées par Azure SQL, consultez la documentation Microsoft
. Lorsque vous sélectionnez un AWS secret, indiquez
secretName.
Après avoir créé une connexion SQL AWS Glue Azure, vous devez suivre les étapes suivantes avant d'exécuter votre tâche AWS Glue :
Autorisez le rôle IAM associé à votre job AWS Glue à lire
secretName.Dans la configuration de votre tâche AWS Glue, indiquez
connectionNamecomme connexion réseau supplémentaire.
Lire à partir de tables SQL Azure
Prérequis :
-
Une table Azure SQL à partir de laquelle vous souhaitez lire. Vous aurez besoin d'informations d'identification pour la table,
databaseNameettableIdentifier.Une table Azure SQL est identifiée par sa base de données, son schéma et son nom de table. Vous devez fournir le nom de la base de données et le nom de la table lorsque vous vous connectez à Azure SQL. Vous devez également fournir le schéma s'il n'est pas « public » par défaut. La base de données est fournie via une propriété URL dans
connectionName, un schéma et un nom de table via ledbtable. -
Une connexion SQL AWS Glue Azure configurée pour fournir des informations d'authentification. Suivez les étapes de la procédure précédente Pour configurer une connexion à Azure SQL afin de configurer vos informations d'authentification. Vous aurez besoin du nom de la connexion AWS Glue,
connectionName.
Par exemple :
azuresql_read_table = glueContext.create_dynamic_frame.from_options( connection_type="azuresql", connection_options={ "connectionName": "connectionName", "dbtable": "tableIdentifier" } )
Vous pouvez également fournir une requête SQL SELECT pour filtrer les résultats renvoyés à votre DynamicFrame. Vous devrez configurer query.
Par exemple :
azuresql_read_query = glueContext.create_dynamic_frame.from_options( connection_type="azuresql", connection_options={ "connectionName": "connectionName", "query": "query" } )
Écrire dans des tables Azure SQL
Cet exemple écrit des informations à partir d'un code existant DynamicFrame dynamicFrame dans Azure SQL. Si le tableau contient déjà des informations, AWS Glue ajoutera les données de votre DynamicFrame.
Prérequis :
-
Une table Azure SQL dans laquelle vous souhaitez écrire. Vous aurez besoin d'informations d'identification pour la table,
databaseNameettableIdentifier.Une table Azure SQL est identifiée par sa base de données, son schéma et son nom de table. Vous devez fournir le nom de la base de données et le nom de la table lorsque vous vous connectez à Azure SQL. Vous devez également fournir le schéma s'il n'est pas « public » par défaut. La base de données est fournie via une propriété URL dans
connectionName, un schéma et un nom de table via ledbtable. -
Informations d'authentification Azure SQL. Suivez les étapes de la procédure précédente Pour configurer une connexion à Azure SQL afin de configurer vos informations d'authentification. Vous aurez besoin du nom de la connexion AWS Glue,
connectionName.
Par exemple :
azuresql_write = glueContext.write_dynamic_frame.from_options( connection_type="azuresql", connection_options={ "connectionName": "connectionName", "dbtable": "tableIdentifier" } )
Référence des options de connexion Azure SQL
-
connectionName— Obligatoire. Utilisé pour Read/Write. Nom d'une connexion SQL AWS Glue Azure configurée pour fournir des informations d'authentification à votre méthode de connexion. -
databaseName— Utilisé pour Read/Write. Valeurs valides : noms des bases de données Azure SQL. Le nom de la base de données dans Azure SQL à laquelle se connecter. -
dbtable— obligatoire pour l'écriture, obligatoire pour la lecture à moins qu'unequeryne soit fournie. Utilisé pour Read/Write. Valeurs valides : noms des tables Azure SQL ou combinaisons de schema/table noms séparées par des points. Utilisées pour spécifier la table et le schéma qui identifient la table à laquelle se connecter. Le schéma par défaut est « public ». Si votre table n'est pas dans un schéma par défaut, fournissez ces informations dans le formulaire.schemaName.tableName -
query: utilisé pour la lecture. Une requête Transact-SQL SELECT définissant ce qui doit être récupéré lors de la lecture depuis Azure SQL. Pour plus d'informations, consultez la documentation Microsoft.