2016-11-15 4 views
0

Ich versuche, einige der Tabellen in Rotverschiebung um Dist- und Sortierschlüssel zu erweitern.Dist- und Sortierschlüssel Redshift

Ich bemerke, dass vor dem Hinzufügen der Größe der Tabelle 0,50 ist und nach dem Hinzufügen wird auf 0,51 oder 0,52 erhöht. Ist das möglich ? Der Zweck von dist- und sort-Schlüsseln besteht darin, die Größe der Tabelle zu verringern und die Lese-/Schreibleistung zu erhöhen.

Antwort

4

Das ist nicht der Zweck, eine und SORTKEY zu haben.

Um die Speichergröße einer Tabelle zu verringern, verwenden Sie Komprimierung. Die DISTKEY wird verwendet, um Daten zwischen Slices zu verteilen. Durch die gemeinsame Suche nach Informationen in demselben Segment können Abfragen schneller ausgeführt werden. Zum Beispiel hatten, wenn Sie diese Tabellen:

  • customer Tisch, DISTKEY = customer_id
  • invoices Tisch, DISTKEY = customer_id

... dann würden diese Tabellen in der gleichen Art und Weise verteilt werden. Alle Datensätze in beiden Tabellen für eine gegebene customer_id würden sich auf demselben Slice befinden, wodurch die Notwendigkeit vermieden wird, Daten zwischen Slices zu übertragen. Der DISTKEY sollte die Spalte sein, die am häufigsten für JOINS verwendet wird.

Die SORTKEY verwendet zugunsten von Zone Karten zu sortieren Daten auf der Festplatte. Jeder Speicherblock auf der Festplatte ist 1 MB groß und enthält Daten für nur eine Spalte in einer Tabelle. Die Daten für diese Spalte werden sortiert und dann in mehreren Blöcken gespeichert. Die Zonenzuordnung, die jedem Block zugeordnet ist, identifiziert die minimalen und maximalen Werte, die in diesem Block gespeichert sind. Wenn eine Abfrage dann mit einer WHERE-Anweisung ausgeführt wird, muss Amazon Redshift nur die Blöcke lesen, die den gewünschten Datenbereich enthalten. Durch das Überspringen von Blöcken, die keine Daten in der WHERE-Klausel enthalten, kann Redshift Abfragen viel schneller ausführen.

Die oben genannten können alle zusammen arbeiten. Zum Beispiel, komprimierte Daten erfordert weniger Blöcke, die auch Redshift ermöglicht, mehr Daten auf der Grundlage der Zone Maps zu überspringen. Verwenden Sie DISTKEY, SORTKEY und die Komprimierung zusammen, um die bestmögliche Leistung aus Abfragen zu erzielen.

(Es wird empfohlen, häufig nicht die SORTKEY Spalte zu komprimieren, weil es zu viele Zeilen verursacht aus einem einzigen Block geladen werden.)

Siehe auch: Top 10 Performance Tuning Techniques for Amazon Redshift

Verwandte Themen