Verteilungsschlüssel angeben

In Netezza Performance Server for Cloud Pak for Data und Netezza Performance Server for Cloud Pak for Data System wird der Tabellenverteilungsschlüssel verwendet, um zu bestimmen, wie die Tabellendaten über alle aktiven Daten-Slices im System verteilt (oder gestrippt) werden sollen. Das Netezza Performance Server System erfordert, dass alle Tabellen eine Verteilungsmethode haben, entweder Hash oder Random.

Wenn Sie die Befehle CREATE TABLE oder CREATE TABLE AS verwenden, können Sie entweder die Methode angeben oder den Netezza Performance Server eine Methode auswählen lassen.

  • Mit dem Befehl DISTRIBUTE ON (hash) können Sie bis zu vier Spalten als Verteilungsschlüssel angeben.
  • Wenn es keine offensichtliche Gruppe von Spalten gibt, die als Verteilungsschlüssel kombiniert werden können, können sie eine Zufallsverteilung angeben. Zufällige Verteilung bedeutet, dass der Netezza Performance Server die Daten zufällig auf die Daten-Slices verteilt.
    Eine Zufallsverteilung hat folgende Ergebnisse:
    • Beim Laden von Daten wird die ungleiche Verteilung verringert.
    • Beim Laden einer großen Datenbank mit vielen Tabellen mit wenigen Zeilen muss kein Verteilungsschlüssel ausgewählt werden. In solchen Fällen bietet die Auswahl eines guten Verteilungsschlüssels nur wenig Leistungsvorteile, es wird jedoch eine breite Verteilung der Daten erreicht.
    • Sie können einen guten Verteilungsschlüssel überprüfen, indem Sie die Daten zuerst zufällig laden und dann mit dem GENERATE STATISTICS-Befehl und durch die Ausführung von SELECT-Anweisungen für die Datenbankspalten das Minimum/Maximum und die Anzahlen ermitteln. Anhand dieser Informationen können Sie besser entscheiden, welche Spalten als Verteilungsschlüssel verwendet werden sollen.
    • Wenn Sie beim Erstellen einer Tabelle keinen Verteilungsschlüssel angeben, wählt das System einen Verteilungsschlüssel aus. Dieser Vorgang kann nicht beeinflusst werden.