Connexions unifiées - 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 unifiées

AWS a récemment introduit une nouvelle fonctionnalité appelée « SageMaker LakeHouse Connections » ou « AWS Glue Unified Connections ». Cette fonctionnalité vous permet de créer des connexions qui peuvent être utilisées par plusieurs services AWS, comme AWS Glue et Amazon Athena. Lorsque vous créez une source de données dans Amazon Athena, vous remarquerez une section qui fait référence aux entrées de connexion AWS Glue. Dans ce cas, Amazon Athena créera une connexion AWS Glue pour vous, y compris toutes les propriétés propres à Amazon Athena dans la section `AthenaProperties` de la connexion.

En revanche, si vous créez une connexion directement dans AWS Glue, vous serez uniquement invité à saisir les propriétés propres à AWS Glue et à Apache Spark, qui seront stockées dans les sections `ConnectionProperties` et `SparkProperties` de la connexion.

Ces deux scénarios aboutissent à la création d’une « connexion unifiée », mais les connexions créées dans Amazon Athena ne sont configurées que pour une utilisation au sein d’Amazon Athena, tandis que les connexions créées dans AWS Glue ne sont configurées que pour une utilisation au sein d’AWS Glue. Cependant, il est possible de mettre à jour ces connexions avec les propriétés manquantes (propriétés Amazon Athena ou Spark) afin qu’elles puissent être utilisées par les deux services. Amazon SageMaker AI Unified Studio s’en charge automatiquement en renseignant toutes les propriétés nécessaires (`ConnectionProperties`, `AthenaProperties` et `SparkProperties`) sur la connexion AWS Glue, en veillant à ce que la connexion puisse être utilisée à la fois par AWS Glue et par Amazon Athena.

Il est important de noter que même si nous les appelons « connexions unifiées », les connexions créées dans AWS Glue ou Amazon Athena individuellement ne sont pas réellement unifiées, à moins qu’elles ne soient correctement configurées pour être utilisées par les deux services. Seules les connexions créées par le biais de SageMaker Unified Studio sont réellement unifiées et immédiatement utilisables par plusieurs services.

En outre, les connexions créées dans AWS Glue ne sont pas visibles dans Amazon Athena, car Amazon Athena affiche les sources de données, qui incluent une référence à une connexion AWS Glue, mais ne sont pas la connexion AWS Glue en soi. De même, les connexions créées dans Amazon Athena ne sont pas visibles dans AWS Glue Studio, car AWS Glue Studio filtre les connexions qui n’ont pas été configurées avec les paramètres nécessaires pour AWS Glue.

AWS Glue Studio crée des connexions unifiées par défaut. Dans la console AWS Glue, vous pouvez voir la version de la connexion dans la table des connexions sur la page des connexions, sur la page de détail des connexions, et la table des connexions sur la page des détails de la tâche.

La version de connexion est visible dans Détails de la connexion :

La capture d’écran montre le détail des connexions sur la connexion v2.

La version de connexion est également visible lorsque vous consultez toutes vos connexions.

La capture d’écran montre le détail des connexions sur la connexion v2.

Enfin, la version de connexion est visible dans l’onglet Détails de la tâche pour une tâche.

La capture d’écran montre le détail des connexions sur la connexion v2.

Avec les connexions version 2, vous disposez des fonctionnalités de connectivité de données étendues suivantes :

  • Découverte du type de connexion : prise en charge de la création de connexions à l’aide de modèles normalisés. AWS Glue découvre automatiquement les types de connexion auxquels vous avez accès, ainsi que les entrées requises et facultatives pour un type de connexion donné.

  • Réutilisabilité : définitions de connexion réutilisables sur tous les moteurs et outils de traitement des données AWS, tels qu’AWS Glue, Amazon Athena et Amazon SageMaker AI. Les connexions contiennent désormais des propriétés AthenaProperties, SparkProperties, PythonProperties qui permettent de spécifier des propriétés de connexion propres à l’environnement/au service de calcul en plus des propriétés communes stockées dans ConnectionProperties. Athena crée désormais des connexions dans AWS Glue en spécifiant des propriétés propres à Athena dans la carte des propriétés AthenaProperties.

  • Aperçu des données : possibilité de parcourir les métadonnées et les données d’aperçu à partir de sources connectées.

  • Métadonnées du connecteur : des connexions réutilisables peuvent être utilisées pour découvrir les métadonnées des tables.

  • Secrets liés au service : les utilisateurs peuvent fournir les informations d’identification OAuth, de base ou personnalisées nécessaires dans la demande CreateConnection. L’API CreateConnection crée un secret lié au service dans votre compte et stocke les informations d’identification en votre nom.

Types d’authentification pris en charge

Les connexions unifiées prennent en charge les types d’authentification suivants :

  • DE BASE : la plupart des types de connexion aux bases de données et des types de connexion AWS Glue existants prennent en charge l’authentification de base, qui consiste en un nom d’utilisateur et un mot de passe. Auparavant, le nom des clés dans SecretsManager était propre au connecteur et pouvait, par exemple, être user, username, UserName, opensearch.net.http.auth.user, etc. C’est là que les connexions unifiées ont normalisé les types de connexion d’authentification de base sur les clés USERNAME et PASSWORD.

  • OAUTH2 : la majorité des nouveaux types de connexion SaaS prennent en charge le protocole OAuth2.

  • PERSONNALISÉ : certains types de connexion disposent d’un autre mécanisme d’authentification, tel que Google BigQuery, où les utilisateurs sont tenus de fournir le JSON qu’ils reçoivent de Google BigQuery.

Considérations

Lorsque vous créez une connexion unifiée pour les sources de données, tenez compte des différences suivantes :

  • Lors de la création d’une connexion unifiée via AWS Glue Studio, les informations d’identification de l’utilisateur sont stockées dans AWS Secrets Manager au lieu de la connexion elle-même. Cela signifie que les tâches doivent désormais accéder à Secrets Manager.

  • Si les tâches sont exécutées dans un VPC, elles nécessitent soit un point de terminaison d’un VPC, soit une passerelle NAT pour accéder à AWS Secrets Manager, ainsi qu’un Secure Token Service (STS), ce qui entraîne des coûts supplémentaires.

  • Pour certaines sources de données (Redshift, SQL Server, MySQL, Oracle, PostgreSQL), la création d’une connexion unifiée via AWS Glue Studio nécessite l’accès à AWS STS et à AWS Secrets Manager. Cela est nécessaire pour établir une connexion sécurisée et récupérer les informations d’identification requises pour accéder à ces sources de données au sein de votre cloud privé virtuel (VPC).

  • La création d’une connexion unifiée via AWS Glue Studio nécessite un rôle IAM autorisé à accéder à AWS Secrets Manager et à gérer les ressources de VPC (si vous utilisez un VPC) :

    • secretsmanager:GetSecretValue

    • secretsmanager:PutSecretValue

    • secretsmanager:DescribeSecret

    • ec2:CreateNetworkInterface

    • ec2:DeleteNetworkInterface

    • ec2:DescribeNetworkInterfaces

    • ec2:DescribeSubnets