Erstellen einer temporären Staging-Tabelle - Amazon Redshift

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.

Erstellen einer temporären Staging-Tabelle

Die Staging-Tabelle ist eine temporäre Tabelle, die alle Daten enthält, die für Änderungen der Zieltabelle verwendet werden, einschließlich Aktualisierungen und Einfügungen.

Eine Zusammenführungsoperation erfordert einen Join zwischen der Staging-Tabelle und der Zieltabelle. Um die Join-Zeilen zusammenzufassen, legen Sie den Verteilungsschlüssel der Staging-Tabelle auf dieselbe Spalte wie den Verteilungsschlüssel der Zieltabelle fest. Wenn die Zieltabelle beispielsweise eine Fremdschlüsselspalte als Verteilungsschlüssel verwendet, verwenden Sie dieselbe Spalte für den Verteilungsschlüssel der Staging-Tabelle. Wenn Sie die Staging-Tabelle mittels einer CREATE TABLE LIKE-Anweisung erstellen, erbt die Staging-Tabelle den Verteilungsschlüssel aus der übergeordneten Tabelle. Wenn Sie eine CREATE TABLE AS-Anweisung verwenden, erbt die neue Tabelle den Verteilungsschlüssel nicht. Weitere Informationen finden Sie unter Arbeiten mit Datenverteilungsstilen

Wenn der Verteilungsschlüssel nicht mit dem primären Schlüssel identisch ist und der Verteilungsschlüssel im Rahmen der Zusammenführungsoperation nicht aktualisiert wird, fügen Sie für die Verteilungsschlüsselspalten ein redundantes Join-Prädikat hinzu, um einen zusammengefassten Join zu ermöglichen. Beispiel:

where target.primarykey = stage.primarykey and target.distkey = stage.distkey

Um zu überprüfen, ob die Abfrage einen zusammengefassten Join verwendet, führen Sie die Abfrage mit EXPLAIN aus und suchen für alle Joins nach DS_DIST_NONE. Weitere Informationen finden Sie unter Auswerten des Abfrageplans