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.
Verwenden von Erweiterungspaketen mit AWS Schema Conversion Tool
Ein AWS SCT Erweiterungspaket ist ein Zusatzmodul, das Funktionen emuliert, die in einer Quelldatenbank vorhanden sind und für die Konvertierung von Objekten in die Zieldatenbank erforderlich sind. Bevor Sie ein AWS SCT Erweiterungspaket installieren können, konvertieren Sie Ihr Datenbankschema.
Jedes AWS SCT Erweiterungspaket umfasst die folgenden Komponenten:
DB-Schema — Enthält SQL Funktionen, Prozeduren und Tabellen zur Emulation bestimmter Datenbankobjekte für die Online-Transaktionsverarbeitung (OLTP) und Online-Analyseverarbeitung (OLAP), wie z. B. Sequenzen. Außerdem emuliert Dateien, die built-in-functions von der Quelldatenbank nicht unterstützt werden. Der Name dieses Schemas hat das folgende Format:.
aws_
database_engine_name
_extAWS Lambda Funktionen (für bestimmte OLTP Datenbanken) — Beinhaltet AWS Lambda Funktionen, die komplexe Datenbankfunktionen emulieren, z. B. die Auftragsplanung und das Senden von E-Mails.
Benutzerdefinierte Bibliotheken für OLAP Datenbanken — Enthält eine Reihe von Java- und Python-Bibliotheken, mit denen Sie Microsoft SQL Server Integration Services (SSIS) -Skripts zum Extrahieren, Transformieren und Laden (ETL) nach AWS Glue oder migrieren können AWS Glue Studio.
Java-Bibliotheken umfassen die folgenden Module:
spark-excel_2.11-0.13.1.jar
— Um die Funktionalität von Excel-Quell- und Zielkomponenten zu emulieren.spark-xml_2.11-0.9.0.jar
poi-ooxml-schemas-4.1.2.jar
, undxmlbeans-3.1.0.jar
— Um die Funktionalität der XML Quellkomponente zu emulieren.
Python-Bibliotheken umfassen die folgenden Module:
sct_utils.py
— Um Quelldatentypen zu emulieren und Parameter für die SQL Spark-Abfrage vorzubereiten.ssis_datetime.py
— Um integrierte Funktionen für Datum und Uhrzeit zu emulieren.ssis_null.py
— Um dieISNULL
und dieREPLACENULL
integrierten Funktionen zu emulieren.ssis_string.py
— Um eingebaute Zeichenkettenfunktionen zu emulieren.
Weitere Informationen zu diesen Bibliotheken finden Sie unter Verwenden von benutzerdefinierten Bibliotheken für AWS SCT Erweiterungspakete.
Sie können AWS SCT Erweiterungspakete auf zwei Arten anwenden:
AWS SCT kann ein Erweiterungspaket automatisch anwenden, wenn Sie ein Zieldatenbankskript anwenden, indem Sie im Kontextmenü Auf Datenbank anwenden wählen. AWS SCT wendet das Erweiterungspaket an, bevor es alle anderen Schemaobjekte anwendet.
Um ein Erweiterungspaket manuell anzuwenden, wählen Sie die Zieldatenbank aus und wählen Sie dann im Kontextmenü (Rechtsklick) die Option Erweiterungspaket anwenden für aus. In den meisten Situationen ist eine automatische Anwendung ausreichend. Möglicherweise möchten Sie das Paket jedoch manuell anwenden, falls es versehentlich gelöscht wurde.
Jedes Mal, wenn Sie ein AWS SCT Erweiterungspaket auf einen Zieldatenspeicher anwenden, werden die Komponenten überschrieben, und es AWS SCT wird eine entsprechende Benachrichtigung angezeigt. Um diese Benachrichtigungen zu deaktivieren, wählen Sie Einstellungen, Allgemeine Einstellungen, Benachrichtigungen und dann die Option Warnung zum Austausch des Erweiterungspakets ausblenden aus.
Für eine Konvertierung von Microsoft SQL Server zu Postgre SQL können Sie das SQL Erweiterungspaket SQL Server to Postgre verwenden. AWS SCT Dieses Erweiterungspaket emuliert SQL Server-Agent und SQL Server-Datenbank-Mail. Weitere Informationen erhalten Sie unter Emulieren des SQL Server-Agents in Postgre SQL mit einem Erweiterungspaket und Emulieren von SQL Server-Datenbank-Mail in Postgre SQL mit einem Erweiterungspaket.
Im Folgenden finden Sie weitere Informationen zum Arbeiten mit AWS SCT Erweiterungspaketen.
Themen
- Berechtigungen für die Verwendung des AWS SCT Erweiterungspakets
- Verwenden Sie das Erweiterungspaket-Schema
- Verwenden von benutzerdefinierten Bibliotheken für AWS SCT Erweiterungspakete
- Verwenden Sie die AWS Lambda Funktionen aus dem AWS SCT Erweiterungspaket
- Funktionen für das AWS SCT Erweiterungspaket konfigurieren
Berechtigungen für die Verwendung des AWS SCT Erweiterungspakets
Das AWS SCT Erweiterungspaket für Amazon Aurora emuliert das Senden von E-Mails, die Auftragsplanung, das Einstellen von Warteschlangen und andere Operationen mithilfe von AWS Lambda Funktionen. Wenn Sie das AWS SCT Erweiterungspaket auf Ihre Aurora-Zieldatenbank anwenden, AWS SCT erstellt es eine neue Rolle AWS Identity and Access Management (IAM) und eine IAM Inline-Richtlinie. Als Nächstes AWS SCT erstellt es eine neue Lambda-Funktion und konfiguriert Ihren Aurora-DB-Cluster für ausgehende Verbindungen zu. AWS Lambda Um diese Operationen auszuführen, stellen Sie sicher, dass Sie Ihrem Benutzer die folgenden erforderlichen Berechtigungen gewähren: IAM
iam:CreateRole
— um eine neue IAM Rolle für Ihr AWS Konto zu erstellen.iam:CreatePolicy
— um eine neue IAM Richtlinie für Ihr AWS Konto zu erstellen.iam:AttachRolePolicy
— um die angegebene Richtlinie an Ihre IAM Rolle anzuhängen.iam:PutRolePolicy
— um ein integriertes Richtliniendokument zu aktualisieren, das in Ihre IAM Rolle eingebettet ist.iam:PassRole
— um die angegebene IAM Rolle an die Regel-Engine zu übergeben.iam:TagRole
— um einer IAM Rolle Tags hinzuzufügen.iam:TagPolicy
— um einer IAM Richtlinie Tags hinzuzufügen.lambda:ListFunctions
— um die Liste Ihrer Lambda-Funktionen zu sehen.lambda:ListTags
— um die Liste der Tags Ihrer Lambda-Funktionen zu sehen.lambda:CreateFunction
— um eine neue Lambda-Funktion zu erstellen.rds:AddRoleToDBCluster
— um Ihrem Aurora-DB-Cluster eine IAM Rolle zuzuordnen.
Das AWS SCT Erweiterungspaket für Amazon Redshift emuliert Quell-Data Warehouse-Basisfunktionen, die erforderlich sind, wenn konvertierte Objekte auf Amazon Redshift angewendet werden. Bevor Sie Ihren konvertierten Code auf Amazon Redshift anwenden, müssen Sie das Erweiterungspaket für Amazon Redshift anwenden. Nehmen Sie dazu die iam:SimulatePrincipalPolicy
Aktion in Ihre IAM Richtlinie auf.
AWS SCT verwendet den IAM Policy Simulator, um die erforderlichen Berechtigungen für die Installation des Amazon Redshift Redshift-Erweiterungspakets zu überprüfen. Der IAM Policy Simulator kann eine Fehlermeldung anzeigen, auch wenn Sie Ihren IAM Benutzer korrekt konfiguriert haben. Dies ist ein bekanntes Problem des IAM Policy Simulators. Außerdem zeigt der IAM Richtliniensimulator eine Fehlermeldung an, wenn Sie die iam:SimulatePrincipalPolicy
Aktion nicht in Ihrer IAM Richtlinie festgelegt haben. In diesen Fällen können Sie die Fehlermeldung ignorieren und das Erweiterungspaket mithilfe des Erweiterungspaket-Assistenten anwenden. Weitere Informationen finden Sie unter Anwenden des Erweiterungspakets.
Verwenden Sie das Erweiterungspaket-Schema
Wenn Sie Ihr Datenbank- oder Data Warehouse-Schema konvertieren, fügt AWS SCT ein zusätzliches Schema zur Zieldatenbank hinzu. Dieses Schema implementiert SQL Systemfunktionen der Quelldatenbank, die beim Schreiben Ihres konvertierten Schemas in Ihre Zieldatenbank erforderlich sind. Dieses Zusätzliche Schema wird als Erweiterungspaketschema bezeichnet.
Das Erweiterungspaket-Schema für OLTP Datenbanken ist entsprechend der Quelldatenbank wie folgt benannt:
-
SQLMicrosoft-Server:
AWS_SQLSERVER_EXT
-
MeinSQL:
AWS_MYSQL_EXT
-
Oracle:
AWS_ORACLE_EXT
-
Postfach: SQL
AWS_POSTGRESQL_EXT
Das Erweiterungspaket-Schema für OLAP Data Warehouse-Anwendungen ist entsprechend dem Quelldatenspeicher wie folgt benannt:
-
Greenplum:
AWS_GREENPLUM_EXT
-
SQLMicrosoft-Server:
AWS_SQLSERVER_EXT
-
Netezza:
AWS_NETEZZA_EXT
-
Oracle:
AWS_ORACLE_EXT
-
Teradata:
AWS_TERADATA_EXT
-
Vertica:
AWS_VERTICA_EXT
Verwenden von benutzerdefinierten Bibliotheken für AWS SCT Erweiterungspakete
In einigen Fällen AWS SCT können Quelldatenbank-Features nicht in äquivalente Features in Ihrer Zieldatenbank konvertiert werden. Das entsprechende AWS SCT Erweiterungspaket enthält benutzerdefinierte Bibliotheken, die einige Funktionen der Quelldatenbank in Ihrer Zieldatenbank emulieren.
Informationen zum Konvertieren einer Transaktionsdatenbank finden Sie unter. Verwenden Sie die AWS Lambda Funktionen aus dem AWS SCT Erweiterungspaket
Anwenden des Erweiterungspakets
Sie können das AWS SCT Erweiterungspaket mithilfe des Erweiterungspaket-Assistenten anwenden oder wenn Sie den konvertierten Code auf Ihre Zieldatenbank anwenden.
Um das Erweiterungspaket mit dem Erweiterungspaket-Assistenten anzuwenden
-
Öffnen Sie in der Zieldatenbankstruktur das Kontextmenü (Rechtsklick), wählen Sie Erweiterungspaket anwenden für und wählen Sie dann Ihre Quelldatenbankplattform aus. AWS Schema Conversion Tool
Der Assistent des Erweiterungspakets wird angezeigt.
-
Lesen Sie die Seite Welcome und wählen Sie dann Next aus.
-
Gehen Sie auf der Seite mit den AWS Profileinstellungen wie folgt vor:
-
Wenn Sie das Erweiterungspaketschema lediglich erneut installieren, wählen Sie Skip this step for now und Next aus. Die Option „Diesen Schritt vorerst überspringen“ ist nur für Datenbanken zur Online-Transaktionsverarbeitung (OLTP) verfügbar.
-
Wenn Sie eine neue Bibliothek hochladen, geben Sie die Anmeldeinformationen ein, um eine Verbindung zu Ihrer AWS-Konto Bibliothek herzustellen. Verwenden Sie diesen Schritt nur, wenn Sie OLAP Datenbanken oder ETL Skripts konvertieren. Sie können Ihre Anmeldeinformationen AWS Command Line Interface (AWS CLI) verwenden, wenn Sie das AWS CLI installiert haben. Sie können auch die Anmeldeinformationen verwenden, die Sie zuvor in einem Profil in den globalen Anwendungseinstellungen gespeichert und mit dem Projekt verknüpft haben. Wählen Sie bei Bedarf Navigate to Global Settings aus, um Ihr AWS SCT Projekt zu konfigurieren oder einem anderen Profil zuzuordnen. Weitere Informationen finden Sie unter Profile verwalten in AWS Schema Conversion Tool.
-
-
Wenn Sie eine neue Bibliothek hochladen, wählen Sie auf der Seite zum Hochladen der Bibliothek die Option Ich muss eine Bibliothek hochladen. Verwenden Sie diesen Schritt nur, wenn Sie OLAP Datenbanken oder ETL Skripts konvertieren. Geben Sie als Nächstes den Amazon S3 S3-Pfad an und wählen Sie dann Bibliothek auf S3 hochladen.
Wenn Sie die Bibliothek bereits hochgeladen haben, wählen Sie Ich habe bereits Bibliotheken hochgeladen und verwenden Sie meinen vorhandenen S3-Bucket auf der Seite zum Hochladen der Bibliothek. Geben Sie als Nächstes den Amazon S3-Pfad an.
Klicken Sie anschließend auf Next.
-
Wählen Sie auf der Seite Funktionsemulation die Option Erweiterungspaket erstellen aus. Es werden Nachrichten zum Status der Operationen des Erweiterungspakets angezeigt.
Wenn Sie fertig sind, wählen Sie Finish aus.
Um das Erweiterungspaket beim Anwenden des konvertierten Codes anzuwenden
-
Geben Sie den Amazon S3 S3-Bucket in Ihrem AWS Serviceprofil an. Verwenden Sie diesen Schritt nur, wenn Sie OLAP Datenbanken oder ETL Skripts konvertieren. Weitere Informationen finden Sie unter Profile verwalten in AWS Schema Conversion Tool.
Stellen Sie sicher, dass Ihre Amazon S3 S3-Bucket-Richtlinie die folgenden Berechtigungen umfasst:
{ "Version": "2012-10-17", "Statement": [ { "Effect": "Allow", "Action": ["s3:ListBucket"], "Resource": ["*"] }, { "Effect": "Allow", "Action": ["s3:PutObject"], "Resource": ["*"] }, { "Effect": "Allow", "Action": ["iam:SimulatePrincipalPolicy"], "Resource": ["*"] }, { "Effect": "Allow", "Action": ["iam:GetUser"], "Resource": ["arn:aws:iam::
111122223333:user/DataExtractionAgentName
"] } ] }Ersetzen Sie im vorherigen Beispiel
111122223333:user/DataExtractionAgentName
durch den Namen Ihres IAM Benutzers. -
Konvertieren Sie Ihre Data Warehouse-Quellschemas. Weitere Informationen finden Sie unter Data Warehouse-Schemas konvertieren.
-
Wählen Sie im rechten Bereich das konvertierte Schema aus.
-
Öffnen Sie das Kontextmenü (rechte Maustaste) für das Schema-Element und wählen Sie Apply to database aus.
-
AWS SCT generiert Erweiterungspakete mit den erforderlichen Komponenten und fügt das
aws_
Schema in die Zielstruktur ein. AWS SCT Wendet als Nächstes den konvertierten Code und das Erweiterungspaket-Schema auf Ihr Ziel-Data Warehouse an.database_engine_name
_extWenn Sie eine Kombination aus Amazon Redshift und AWS Glue als Zieldatenbankplattform verwenden, AWS SCT fügt dem Erweiterungspaket ein zusätzliches Schema hinzu.
Verwenden Sie die AWS Lambda Funktionen aus dem AWS SCT Erweiterungspaket
AWS SCT bietet ein Erweiterungspaket, das Lambda-Funktionen für E-Mail, Jobplanung und andere Funktionen für auf Amazon EC2 gehostete Datenbanken enthält.
Verwendung von AWS Lambda Funktionen zur Emulierung von Datenbankfunktionen
In einigen Fällen können Datenbankfunktionen nicht in äquivalente RDS Amazon-Funktionen konvertiert werden. Beispielsweise sendet Oracle E-Mail-Anrufe, die einen Job Scheduler verwendenUTL_SMTP
, und Microsoft SQL Server kann verwenden. Wenn Sie eine Datenbank bei Amazon hosten und selbst verwaltenEC2, können Sie diese Funktionen emulieren, indem Sie sie durch Dienste ersetzen AWS .
Der AWS SCT Erweiterungspaket-Assistent hilft Ihnen bei der Installation, Erstellung und Konfiguration von Lambda-Funktionen, um E-Mail, Jobplanung und andere Funktionen zu emulieren.
Anwenden des Erweiterungspakets zur Unterstützung von Lambda-Funktionen
Sie können das Erweiterungspaket zur Unterstützung von Lambda-Funktionen mithilfe des Erweiterungspaket-Assistenten anwenden oder wenn Sie den konvertierten Code auf Ihre Zieldatenbank anwenden.
Wichtig
Die Funktionen zur AWS Service-Emulation werden nur für Datenbanken unterstützt, die bei Amazon installiert und selbst verwaltet werden. EC2 Installieren Sie die Service-Emulationsfunktionen nicht, wenn sich Ihre Zieldatenbank auf einer RDS Amazon-DB-Instance befindet.
Um das Erweiterungspaket mit dem Erweiterungspaket-Assistenten anzuwenden
-
Öffnen Sie in der Zieldatenbankstruktur das Kontextmenü (Rechtsklick), wählen Sie Erweiterungspaket anwenden für und wählen Sie dann Ihre Quelldatenbankplattform aus. AWS Schema Conversion Tool
Der Assistent des Erweiterungspakets wird angezeigt.
-
Lesen Sie die Seite Welcome und wählen Sie dann Next aus.
-
Gehen Sie auf der Seite mit den AWS Profileinstellungen wie folgt vor:
-
Wenn Sie das Erweiterungspaketschema lediglich erneut installieren, wählen Sie Skip this step for now und Next aus.
-
Wenn Sie AWS Dienste installieren, geben Sie die Anmeldeinformationen ein, um eine Verbindung zu Ihrem herzustellen AWS-Konto. Sie können Ihre AWS CLI Anmeldeinformationen verwenden, wenn Sie die AWS CLI installiert haben. Sie können auch die Anmeldeinformationen verwenden, die Sie zuvor in einem Profil in den globalen Anwendungseinstellungen gespeichert und mit dem Projekt verknüpft haben. Wählen Sie bei Bedarf Navigate to Project Settings aus, um ein anderes Profil mit dem Projekt zu verknüpfen. Wählen Sie bei Bedarf Global Settings aus, um ein neues Profil zu erstellen. Weitere Informationen finden Sie unter Profile verwalten in AWS Schema Conversion Tool.
-
-
Führen Sie auf der Seite Email Sending Service folgende Schritte aus:
-
Wenn Sie das Erweiterungspaketschema lediglich erneut installieren, wählen Sie Skip this step for now und Next aus.
-
Wenn Sie AWS Dienste installieren und bereits über eine Lambda-Funktion verfügen, können Sie diese bereitstellen. Andernfalls erstellt der Assistent eine für Sie. Klicken Sie anschließend auf Next.
-
-
Führen Sie auf der Seite Job Emulation Service folgende Schritte aus:
-
Wenn Sie das Erweiterungspaketschema lediglich erneut installieren, wählen Sie Skip this step for now und Next aus.
-
Wenn Sie AWS Dienste installieren und bereits über eine Lambda-Funktion verfügen, können Sie diese bereitstellen. Andernfalls erstellt der Assistent eine für Sie. Klicken Sie anschließend auf Next.
-
-
Wählen Sie auf der Seite Funktionsemulation die Option Erweiterungspaket erstellen aus. Es werden Nachrichten zum Status der Operationen des Erweiterungspakets angezeigt.
Wenn Sie fertig sind, wählen Sie Finish aus.
Anmerkung
Um ein Erweiterungspaket zu aktualisieren und die alten Erweiterungspaket-Komponenten zu überschreiben, stellen Sie sicher, dass Sie die neueste Version von verwenden. AWS SCT Weitere Informationen finden Sie unter Installation und Konfiguration AWS Schema Conversion Tool.
Funktionen für das AWS SCT Erweiterungspaket konfigurieren
Das Erweiterungspaket enthält Funktionen, die Sie vor der Verwendung konfigurieren müssen. Die Konstante CONVERSION_LANG
definiert die Sprache, die das Service Pack verwendet. Die Funktionen sind für Englisch und Deutsch verfügbar.
Um die Sprache auf Englisch oder Deutsch einzustellen, nehmen Sie die folgende Änderung im Funktionscode vor. Suchen Sie die folgende Konstantendeklaration:
CONVERSION_LANG CONSTANT VARCHAR := '';
Um die Einstellung CONVERSION_LANG
auf Englisch zu ändern, ändern Sie die Zeile wie folgt:
CONVERSION_LANG CONSTANT VARCHAR := 'English';
Um die Einstellung CONVERSION_LANG
auf Englisch einzustellen, ändern Sie die Zeile wie folgt:
CONVERSION_LANG CONSTANT VARCHAR := 'Deutsch';
Stellen Sie diese Einstellung für die folgenden Funktionen ein:
aws_sqlserver_ext.conv_datetime_to_string
aws_sqlserver_ext.conv_date_to_string
aws_sqlserver_ext.conv_string_to_date
aws_sqlserver_ext.conv_string_to_datetime
aws_sqlserver_ext.conv_string_to_datetime
aws_sqlserver_ext.parse_to_date
aws_sqlserver_ext.parse_to_datetime
aws_sqlserver_ext.parse_to_time