Einheitliche Verbindungen
AWS hat kürzlich ein neues Feature namens „SageMaker LakeHouse Connections“ oder „AWS Glue Unified Connections“ eingeführt. Mit diesem Feature können Sie Verbindungen erstellen, die von mehreren AWS-Diensten wie AWS Glue und Amazon Athena verwendet werden können. Wenn Sie eine Datenquelle in Amazon Athena erstellen, wird Ihnen ein Abschnitt angezeigt, der sich auf AWS Glue-Verbindungseingaben bezieht. In diesem Fall erstellt Amazon Athena eine AWS Glue-Verbindung für Sie, einschließlich aller Amazon Athena-spezifischen Eigenschaften im Abschnitt „AthenaProperties“ der Verbindung.
Wenn Sie dagegen eine Verbindung direkt in AWS Glue erstellen, werden Sie nur zur Eingabe von Eigenschaften aufgefordert, die für AWS Glue und Apache Spark spezifisch sind und in den Abschnitten „ConnectionProperties“ und „SparkProperties“ der Verbindung gespeichert werden.
Beide Szenarien führen zur Erstellung einer „vereinheitlichten Verbindung“, aber die in Amazon Athena erstellten Verbindungen sind nur für die Verwendung innerhalb von Amazon Athena konfiguriert, während die in AWS Glue erstellten Verbindungen nur für die Verwendung innerhalb von AWS Glue konfiguriert sind. Es ist jedoch möglich, diese Verbindungen mit den fehlenden Eigenschaften (entweder Amazon Athena- oder Spark-Eigenschaften) zu aktualisieren, sodass sie von beiden Diensten verwendet werden können. Amazon SageMaker AI Unified Studio erledigt dies automatisch, indem es alle erforderlichen Eigenschaften (ConnectionProperties, AthenaProperties und SparkProperties) für die AWS Glue-Verbindung ausfüllt und sicherstellt, dass die Verbindung sowohl von AWS Glue als auch von Amazon Athena verwendet werden kann.
Es ist wichtig zu beachten, dass wir diese zwar als „vereinheitlichte Verbindungen” bezeichnen, die in AWS Glue oder Amazon Athena einzeln erstellten Verbindungen jedoch nicht wirklich vereinheitlicht sind, sofern sie nicht ordnungsgemäß für die Verwendung durch beide Dienste konfiguriert sind. Nur die über SageMaker Unified Studio erstellten Verbindungen sind wirklich vereinheitlicht und können von mehreren sofort einsatzbereiten Diensten genutzt werden.
Darüber hinaus sind in AWS Glue erstellte Verbindungen in Amazon Athena nicht sichtbar, da Amazon Athena-Datenquellen anzeigt, die einen Verweis auf eine AWS Glue-Verbindung enthalten, aber nicht die AWS Glue-Verbindung selbst sind. Ebenso sind Verbindungen, die in Amazon Athena hergestellt wurden, in AWS Glue Studio nicht sichtbar, da AWS Glue Studio alle Verbindungen herausfiltert, die nicht mit den erforderlichen Einstellungen für AWS Glue konfiguriert wurden.
AWS Glue Studio erstellt standardmäßig einheitliche Verbindungen. In der AWS Glue-Konsole können Sie die Version der Verbindung in der Verbindungstabelle auf der Verbindungsseite, auf der Verbindungsdetailseite und in der Verbindungstabelle auf der Auftragsdetailseite einsehen.
Die Verbindungsversion wird unter Verbindungsdetails angezeigt:
Die Verbindungsversion wird auch angezeigt, wenn Sie alle Verbindungen anzeigen.
Schließlich wird die Verbindungsversion auf der Registerkarte „Auftragsdetails“ für einen Auftrag angezeigt.
Bei Verbindungen der Version 2 stehen Ihnen die folgenden erweiterten Datenkonnektivitätsfunktionen zur Verfügung:
-
Erkennung von Verbindungstypen: Support für das Erstellen von Verbindungen mithilfe standardisierter Vorlagen. AWS Glue erkennt automatisch die Verbindungstypen, auf die Sie zugreifen können, sowie die erforderlichen und optionalen Eingaben für einen bestimmten Verbindungstyp.
-
Wiederverwendbarkeit: Verbindungsdefinitionen, die in allen AWS-Datenverarbeitungsmodulen und Tools wie AWS Glue, Amazon Athena und Amazon SageMaker AIwiederverwendet werden können. Verbindungen enthalten jetzt AthenaProperties, SparkProperties und PythonProperties, die es ermöglichen, zusätzlich zu den allgemeinen Eigenschaften, die in ConnectionProperties gespeichert sind, die spezifischen Verbindungseigenschaften für die Rechenumgebung/den Dienst anzugeben. Athena erstellt nun Verbindungen in AWS Glue, indem es Athena-spezifische Eigenschaften in der Eigenschaftszuordnung AthenaProperties angibt.
-
Datenvorschau: Möglichkeit, Metadaten zu durchsuchen und eine Vorschau von Daten aus verbundenen Quellen anzuzeigen.
-
Connector-Metadaten: Wiederverwendbare Verbindungen können verwendet werden, um Tabellenmetadaten zu ermitteln.
-
Mit Diensten verknüpfte Geheimnisse: Benutzer können in der
CreateConnection-Anfrage die erforderlichen OAuth-, Standard- oder benutzerdefinierten Anmeldeinformationen angeben. Die CreateConnection-API erstellt ein Service Linked Secret in Ihrem Konto und speichert die Anmeldeinformationen in Ihrem Namen.
Unterstützte Authentifizierungsmethoden
Für einheitliche Verbindungen werden die folgenden Authentifizierungstypen unterstützt:
-
BASIC: Die meisten Datenbankverbindungstypen und vorhandenen AWS Glue-Verbindungstypen unterstützen die Standardauthentifizierung, bei der es sich um einen Benutzernamen und ein Passwort handelt. Bisher waren die Namen der Schlüssel in SecretsManager connectorspezifisch und könnten beispielsweise user, username, userName, opensearch.net.http.auth.user usw. lauten. Hier wurden durch einheitliche Verbindungen die grundlegenden Verbindungsarten für die Authentifizierung anhand der Schlüssel USERNAME und PASSWORD standardisiert.
-
OAUTH2: Die meisten neu eingeführten SaaS-Verbindungstypen unterstützen das OAuth2-Protokoll.
-
BENUTZERDEFINIERT: Einige Verbindungstypen verfügen über andere Authentifizierungsmechanismen, wie beispielsweise Google BigQuery, bei denen Benutzer die JSON-Datei bereitstellen müssen, die sie von Google BigQuery erhalten.
Überlegungen
Wenn Sie eine einheitliche Verbindung für Datenquellen erstellen, sollten Sie die folgenden Unterschiede berücksichtigen:
-
Wenn Sie eine einheitliche Verbindung über AWS Glue Studio herstellen, werden Benutzeranmeldeinformationen in AWS Secrets Manager und nicht in der Verbindung selbst gespeichert. Das bedeutet, dass Aufträge jetzt Zugriff auf Secrets Manager benötigen.
-
Wenn Aufträge in einer VPC ausgeführt werden, benötigen sie entweder einen VPC-Endpunkt oder ein NAT-Gateway, um auf AWS Secrets Manager und den Secure Token Service (STS) zuzugreifen, was zusätzliche Kosten verursacht.
-
Für bestimmte Datenquellen (Redshift, SQL Server, MySQL, Oracle, PostgreSQL) erfordert die Erstellung einer einheitlichen Verbindung über AWS Glue Studio den Zugriff auf AWS STS und AWS Secrets Manager. Dies ist erforderlich, um eine sichere Verbindung herzustellen und die erforderlichen Anmeldeinformationen für den Zugriff auf diese Datenquellen innerhalb Ihrer Virtual Private Cloud (VPC) abzurufen.
-
Um eine einheitliche Verbindung über AWS Glue Studio herzustellen, ist eine IAM-Rolle mit Berechtigungen für den Zugriff auf AWS Secrets Manager und die Verwaltung von VPC-Ressourcen (bei Verwendung einer VPC) erforderlich:
secretsmanager:GetSecretValue
secretsmanager:PutSecretValue
secretsmanager:DescribeSecret
ec2:CreateNetworkInterface
ec2:DeleteNetworkInterface
ec2:DescribeNetworkInterfaces
ec2:DescribeSubnets