Azure-SQL-Verbindungen - AWS Glue

Die vorliegende Übersetzung wurde maschinell erstellt. Im Falle eines Konflikts oder eines Widerspruchs zwischen dieser übersetzten Fassung und der englischen Fassung (einschließlich infolge von Verzögerungen bei der Übersetzung) ist die englische Fassung maßgeblich.

Azure-SQL-Verbindungen

Sie können AWS Glue für Spark zum Lesen und Schreiben in Tabellen in Azure SQL Managed Instances in AWS Glue 4.0 und späteren Versionen verwenden. Sie können definieren, was mit einer SQL-Abfrage aus Azure SQL gelesen werden soll. Sie können eine Verbindung zu Azure SQL herstellen, indem Sie Benutzer und Passwörter verwenden, die über eine AWS-Glue-Verbindung in AWS Secrets Manager gespeichert sind.

Weitere Informationen zu Azure SQL finden Sie in der Azure-SQL-Dokumentation.

Konfigurieren von Azure-SQL-Verbindungen

Um von AWS Glue aus eine Verbindung mit Azure SQL herzustellen, müssen Sie Ihre Azure-SQL-Anmeldeinformationen erstellen, in einem AWS Secrets Manager-Secret speichern und dieses Secret dann einer Verbindung von Azure SQL und AWS Glue zuordnen.

Eine Verbindung zu Azure SQL konfigurieren Sie wie folgt:
  1. Erstellen Sie in AWS Secrets Manager ein Secret mit Ihren Azure-SQL-Anmeldeinformationen. Um ein Geheimnis im Secrets Manager zu erstellen, befolgen Sie das Tutorial unter Erstellen eines AWS Secrets Manager-Secrets in der AWS Secrets Manager-Dokumentation. Behalten Sie nach dem Erstellen des Secrets den Namen des Secrets, secretName für den nächsten Schritt bei.

    • Erstellen Sie bei der Auswahl von Schlüssel/Wert-Paaren ein Paar für den Schlüssel user mit dem Wert azuresqlUsername.

    • Erstellen Sie bei der Auswahl von Schlüssel/Wert-Paaren ein Paar für den Schlüssel password mit dem Wert azuresqlPassword.

  2. Erstellen Sie in der AWS-Glue-Konsole eine Verbindung, indem Sie die Schritte in Hinzufügen einer AWS Glue-Verbindung befolgen. Behalten Sie nach dem Erstellen der Verbindung den Verbindungsnamen connectionName zur künftigen Verwendung in AWS Glue bei.

    • Wählen Sie als Verbindungstyp Azure SQL aus.

    • Wenn Sie eine Azure-SQL-URL angeben, geben Sie eine JDBC-Endpunkt-URL an.

      Die URL muss das folgende Format aufweisen: jdbc:sqlserver://databaseServerName:databasePort;databaseName=azuresqlDBname;.

      AWS Glue benötigt die folgenden URL-Eigenschaften:

      • databaseName – Eine Standarddatenbank in Azure SQL, mit der eine Verbindung hergestellt werden kann.

      Weitere Informationen zu JDBC-URLs für Azure SQL Managed Instances finden Sie in der Microsoft-Dokumentation.

    • Geben Sie als AWS-Secret die Option secretName an.

Nachdem Sie eine Verbindung von AWS Glue und Azure SQL hergestellt haben, müssen Sie die folgenden Schritte durchführen, bevor Sie Ihren AWS-Glue-Auftrag ausführen:

  • Erteilen Sie der mit Ihrem AWS Glue-Auftrag verknüpften IAM-Rolle die Berechtigung, secretName zu lesen.

  • Geben Sie in Ihrer AWS-Glue-Auftragskonfiguration connectionName als zusätzliche Netzwerkverbindung an.

Lesen in Azure-SQL-Tabellen

Voraussetzungen:

  • Eine Azure-SQL-Tabelle, aus der gelesen werden soll. Sie benötigen Identifikationsinformationen für die Tabelle, databaseName und tableIdentifier.

    Eine Azure-SQL-Tabelle wird anhand ihrer Datenbank, ihres Schemas und ihres Tabellennamens identifiziert. Sie müssen den Datenbanknamen und den Tabellennamen angeben, wenn Sie eine Verbindung zu Azure SQL herstellen. Sie müssen auch das Schema angeben, falls es sich nicht um das Standardschema „public“ handelt. Die Datenbank wird über eine URL-Eigenschaft in connectionName bereitgestellt, das Schema und der Tabellenname über dbtable.

  • Eine Verbindung von AWS Glue und Azure SQL, die für die Bereitstellung von Authentifizierungsinformationen konfiguriert ist. Gehen Sie wie im vorherigen Verfahren beschrieben vor, um eine Verbindung zu Azure SQL zu konfigurieren, um Ihre Authentifizierungsinformationen zu konfigurieren. Sie benötigen den Namen der AWS-Glue-Verbindung, connectionName.

Beispiele:

azuresql_read_table = glueContext.create_dynamic_frame.from_options( connection_type="azuresql", connection_options={ "connectionName": "connectionName", "dbtable": "tableIdentifier" } )

Sie können auch eine SELECT-SQL-Abfrage angeben, um die an Ihren DynamicFrame zurückgegebenen Ergebnisse zu filtern. Sie müssen query konfigurieren.

Beispiele:

azuresql_read_query = glueContext.create_dynamic_frame.from_options( connection_type="azuresql", connection_options={ "connectionName": "connectionName", "query": "query" } )

Schreiben in Azure-SQL-Tabellen

In diesem Beispiel werden Informationen aus einem vorhandenen DynamicFrame, dynamicFrame, in Azure SQL geschrieben. Wenn die Tabelle bereits Informationen enthält, hängt AWS Glue Daten aus Ihrem DynamicFrame an.

Voraussetzungen:

  • Eine Azure-SQL-Tabelle, in die Sie schreiben möchten. Sie benötigen Identifikationsinformationen für die Tabelle, databaseName und tableIdentifier.

    Eine Azure-SQL-Tabelle wird anhand ihrer Datenbank, ihres Schemas und ihres Tabellennamens identifiziert. Sie müssen den Datenbanknamen und den Tabellennamen angeben, wenn Sie eine Verbindung zu Azure SQL herstellen. Sie müssen auch das Schema angeben, falls es sich nicht um das Standardschema „public“ handelt. Die Datenbank wird über eine URL-Eigenschaft in connectionName bereitgestellt, das Schema und der Tabellenname über dbtable.

  • Azure-SQL-Authentifizierungsinformationen. Gehen Sie wie im vorherigen Verfahren beschrieben vor, um eine Verbindung zu Azure SQL zu konfigurieren, um Ihre Authentifizierungsinformationen zu konfigurieren. Sie benötigen den Namen der AWS-Glue-Verbindung, connectionName.

Beispiele:

azuresql_write = glueContext.write_dynamic_frame.from_options( connection_type="azuresql", connection_options={ "connectionName": "connectionName", "dbtable": "tableIdentifier" } )

Referenz zur Azure-SQL-Verbindungsoption

  • connectionName – Erforderlich. Wird für Lesen/Schreiben verwendet. Der Name einer Verbindung von AWS Glue und Azure SQL, die so konfiguriert ist, dass sie Authentifizierungsinformationen für Ihre Verbindungsmethode bereitstellt.

  • databaseName – Wird zum Lesen/Schreiben verwendet. Zulässige Werte: Azure-SQL-Datenbanknamen. Der Name der Datenbank in Azure SQL, mit der eine Verbindung hergestellt werden soll.

  • dbtable – Zum Schreiben erforderlich, zum Lesen erforderlich, sofern query nicht angegeben ist. Wird für Lesen/Schreiben verwendet. Gültige Werte: Namen von Azure-SQL-Tabellen oder durch Punkte getrennte Kombinationen aus Schema und Tabellennamen. Wird verwendet, um die Tabelle und das Schema anzugeben, die die Tabelle identifizieren, zu der eine Verbindung hergestellt werden soll. Das Standardschema ist „public“. Wenn sich Ihre Tabelle nicht in einem Standardschema befindet, geben Sie diese Informationen in das Formular schemaName.tableName ein.

  • query – Wird zum Lesen verwendet. Eine Transact-SQL-SELECT-Abfrage, die definiert, was beim Lesen aus Azure SQL abgerufen werden soll. Weitere Informationen finden Sie in der Microsoft-Dokumentation.