Amazon Redshift unterstützt ab dem 1. November 2025 nicht mehr die Erstellung neuer Python-UDFs. Wenn Sie Python-UDFs verwenden möchten, erstellen Sie die UDFs vor diesem Datum. Bestehende Python-UDFs funktionieren weiterhin wie gewohnt. Weitere Informationen finden Sie im Blog-Posting
Einschränkungen beim Zugriff auf Verbunddaten mit Amazon Redshift
Einige Amazon-Redshift-Funktionen unterstützen den Zugriff auf Verbunddaten nicht. Im Folgenden finden Sie zugehörige Einschränkungen und Überlegungen.
Bei der Verwendung von Verbundabfragen in Amazon Redshift gelten folgende Einschränkungen und Überlegungen:
Verbundabfragen unterstützen den Lesezugriff auf externe Datenquellen. In der externen Datenquelle können Sie keine Datenbankobjekte schreiben oder erstellen.
In einigen Fällen können Sie auf eine Amazon-RDS- oder Aurora-DB-Clusterdatenbank in einer anderen AWS-Region als Amazon Redshift zugreifen. In diesen Fällen fallen in der Regel Netzwerklatenz- und Abrechnungsgebühren für den Datentransfer über AWS-Regionen hinweg an. Wir empfehlen die Verwendung einer globalen Aurora-Datenbank mit einem lokalen Endpunkt in derselben AWS-Region wie Ihr Amazon-Redshift-Cluster. Die globalen Datenbanken von Aurora nutzen eine dedizierte Infrastruktur für die speicherbasierte Replikation in zwei beliebigen AWS-Regionen mit einer typischen Latenzzeit von unter 1 Sekunde.
Berücksichtigen Sie die Kosten für den Zugriff auf Amazon-RDS- oder Aurora-DB-Cluster. Wenn Sie dieses Feature beispielsweise für den Zugriff auf Aurora-DB-Cluster verwenden, basieren die Gebühren für Aurora-DB-Cluster auf IOPS.
Verbundabfragen unterstützen den Zugriff auf Amazon Redshift über RDS- oder Aurora-DB-Cluster nicht.
Verbundabfragen sind nur in AWS-Regionen verfügbar, in denen sowohl Amazon Redshift als auch Amazon-RDS- oder Aurora-DB-Cluster verfügbar sind.
Verbundabfragen unterstützen derzeit nicht
ALTER SCHEMA. Um ein Schema zu ändern, verwenden SieDROPund dannCREATE EXTERNAL SCHEMA.Verbundabfragen funktionieren nicht mit der Parallelitätsskalierung.
Verbundabfragen unterstützen derzeit keinen Zugriff über einen PostgreSQL-Fremddaten-Wrapper.
Verbundabfragen an RDS MySQL oder Aurora MySQL unterstützen die Transaktionsisolierung auf der Ebene READ COMMITTED.
Sofern nicht anders angegeben, stellt Amazon Redshift eine Verbindung mit RDS for MySQL oder Aurora MySQL auf Port 3306 her. Bestätigen Sie die MySQL-Portnummer, bevor Sie ein externes Schema für MySQL erstellen.
Sofern nicht anders angegeben, stellt Amazon Redshift eine Verbindung mit RDS PostgreSQL oder Aurora PostgreSQL auf Port 5432 her. Bestätigen Sie die PostgreSQL-Portnummer, bevor Sie ein externes Schema für PostgreSQL erstellen.
Beim Abrufen der Datentypen TIMESTAMP und DATE aus MySQL werden Nullwerte als NULL behandelt.
-
Wenn ein Reader-Endpunkt einer Aurora-DB-Clusterdatenbank verwendet wird, kann der Fehler „Ungültiger Snapshot“ auftreten. Dies lässt sich über eine der folgenden Methoden vermeiden:
Verwenden Sie einen spezifischen Endpunkt der Aurora-DB-Cluster-Instance (anstelle des Endpunkts des Aurora-DB-Clusters). Bei dieser Methode wird die Transaktionsisolation REPEATABLE READ für die Ergebnisse aus der PostgreSQL-Datenbank verwendet.
Verwenden Sie einen Reader-Endpunkt des Aurora-DB-Clusters und legen Sie
pg_federation_repeatable_readfür die Sitzung auf „false“ fest. Bei dieser Methode wird die Transaktionsisolation READ COMMITTED für die Ergebnisse aus der PostgreSQL-Datenbank verwendet. Weitere Informationen zu Reader-Endpunkten in Aurora-DB-Clustern finden Sie unter Typen von Endpunkten in Aurora-DB-Clustern im Amazon-Aurora-Benutzerhandbuch. Weitere Informationen zupg_federation_repeatable_readfinden Sie unter pg_federation_repeatable_read.
Für Transaktionen beim Arbeiten mit Verbundabfragen an PostgreSQL-Datenbanken gelten folgende Überlegungen:
-
Wenn eine Abfrage aus Verbundtabellen besteht, startet der Leader-Knoten eine READ ONLY REPEATABLE READ-Transaktion in der fernen Datenbank. Diese Transaktion bleibt für die Dauer der Amazon-Redshift-Transaktion bestehen.
Der Leader-Knoten erstellt einen Snapshot der fernen Datenbank durch Aufruf von
pg_export_snapshotund setzt eine Lesesperre auf die betroffenen Tabellen.Ein Datenverarbeitungsknoten startet eine Transaktion und verwendet den Snapshot, der am Leader-Knoten erstellt wurde, um Abfragen an die ferne Datenbank auszugeben.
Unterstützte Versionen von Verbunddatenbanken
Ein externes Amazon-Redshift-Schema kann auf eine Datenbank in einem externen RDS PostgreSQL oder Aurora PostgreSQL verweisen. Dabei gelten die folgenden Einschränkungen:
Wenn Sie ein externes Schema mit Verweis auf Aurora-DB-Cluster erstellen, muss die Aurora-PostgreSQL-Datenbank in der Version 9.6 oder höher vorliegen.
Wenn Sie ein externes Schema mit Verweis auf Amazon RDS erstellen, muss die Amazon-RDS-PostgreSQL-Datenbank in der Version 9.6 oder später vorliegen.
Ein externes Amazon-Redshift-Schema kann auf eine Datenbank in einem externen RDS MySQL oder Aurora MySQL verweisen. Dabei gelten die folgenden Einschränkungen:
Wenn Sie ein externes Schema mit Verweis auf Aurora-DB-Cluster erstellen, muss die Aurora-MySQL-Datenbank in der Version 5.6 oder höher vorliegen.
Wenn Sie ein externes Schema mit Verweis auf Amazon RDS erstellen, muss die RDS-MySQL-Datenbank in der Version 5.6 oder später vorliegen.