Tabellenplatzierung durchführen

Objective

After completing this lesson, you will be able to tabellenplatzierungsaufgaben ausführen

Tabellenplatzierung

Tabellenplatzierung

Die Tabellenklassifizierung und Tabellenplatzierungskonfiguration, erweitert durch Partitionierung, bilden die Grundlage für die Steuerung der Datenverteilung in einer SAP-HANA-Scale-Out-Umgebung.

Zusammengehörende Tabellen können in Tabellengruppen zusammengefasst werden. Tabellengruppen helfen dabei, knotenübergreifende Kommunikation zu vermeiden, indem Gruppen in einen Knoten verschoben werden.

Assoziierte Tabellen können durch eine gemeinsame Tabellengruppe klassifiziert werden.

Die SQL-Schnittstelle von SAP HANA bietet drei mögliche Arten von Klassifizierungen: Gruppenname, Gruppentyp und Subtyp. Tabellen, die mit Gruppeninformationen klassifiziert wurden, sind in der Tabelle SYS.TABLE_GROUPS enthalten, und Sie können die Klassifizierungsdetails in der Monitoring-Sicht SYS.TABLE_GROUPS überprüfen (siehe Details unten). Tabellen mit demselben Gruppennamen werden auf demselben Host gehalten, oder bei partitionierten Tabellen, die auf mehrere Hosts verteilt sind, werden entsprechende Partitionen der ersten Ebene auf die gleiche Weise für alle Tabellen verteilt.

Eine Tabelle in der Gruppe ist als führende Tabelle definiert, und ihre Tabellenplatzierungseinstellungen werden auf alle anderen Tabellen in der Gruppe angewendet. Dies kann z.B. der Speicherort oder bei partitionierten Tabellen (wenn SAME_PARTITION_COUNT in SYS.TABLE_PLACEMENT gesetzt ist, siehe unten) die Anzahl der Partitionen der ersten Ebene sein.

Notiz

Bestimmte Anwendungen, wie z. B. SAP BW, klassifizieren Objekte automatisch beim Anlegen. Diese Klassifizierungen dürfen nicht manuell geändert werden.

Für native Anwendungen kann der Anwendungsentwickler eine Gruppierung manuell definieren, z.B. durch Gruppieren von Tabellen, die häufig verknüpft werden. Die folgenden Anweisungen zeigen Beispiele für das Setzen von Tabellengruppenattributen mit CREATE - und ALTER -Anweisungen:

Code Snippet
1234567
CREATE COLUMN TABLE "HA201_DEMO"."HA201_TABLE"( HAY INT, GEORG INT, HAKAN INT, PRIMARY KEY (HAY, GEORG)) GROUP NAME DEMO GROUP TYPE EXAMPLE GROUP SUBTYPE TEST GROUP LEAD;

Diese create table-Anweisung erzeugt eine Tabelle namens HA201_TABLE, setzt den Gruppennamen auf DEMO, den Gruppentyp auf EXAMPLE, den Gruppen-Subtyp auf TESTund macht diese zur führenden Tabelle in der Gruppe DEMO.

Code Snippet
123456
ALTER TABLE "HA201_DEMO"."HA201_TABLE" SET GROUP NAME DEMO GROUP TYPE EXAMPLE GROUP SUBTYPE TEST GROUP LEAD;

Diese alter table -Anweisung setzt den Gruppennamen auf DEMO, den Gruppentyp auf EXAMPLEund den Gruppenuntertyp auf TESTund macht diesen zu der führenden Tabelle in der Gruppe DEMO für eine vorhandene Tabelle.

Dies kann auch dynamisch basierend auf den im SQL-Plan-Cache, mit dem Werkzeug Join-Pfadanalyse im Datenverteilungsoptimierer oder mit dem ABAP-Gruppierungsreport (SHDBSO_TABLE_GROUPING) für SAP S/4HANA Scale-Out durchgeführt werden. Siehe SAP-Hinweis 2447004 - "Tabellengruppierungsreport für S/4 HANA in Scale-Out-Systemen".

Die SAP-HANA-Cockpit-Tools für die Tabellenumverteilung enthalten auch einen optionalen Vorbereitungsschritt, um das Tool Group Advisor in den Plangenerierungsprozess zu integrieren, um Tabellengruppen dynamisch anzulegen.

Tabellenklassifizierung und -platzierung

Anwendungsdaten werden in der Regel in einer Vielzahl von Datenbanktabellen gespeichert, und Daten aus mehreren dieser Tabellen werden bei der Abfrage über SQL-Operationen wie Join oder Union kombiniert. Da diese Beziehungen zwischen verschiedenen Tabellen im Anwendungscode definiert sind, sind diese Informationen in SAP HANA nicht verfügbar. Die Tabellenklassifizierungsfunktion bietet die Möglichkeit, diese semantischen Informationen in die Datenbank zu verlagern, indem Administratoren die Definition von Gruppen von Tabellen ermöglichen. Diese Informationen können beispielsweise bei der Ermittlung der Anzahl der anzulegenden Partitionen oder im Falle einer Scale-Out-Landschaft des Knotens verwendet werden, auf dem die Tabellen oder Partitionen zu finden sind.

Tabellenplatzierungsinformationen

  • Die Tabelle SYS.TABLE_GROUPS enthält die Tabellenklassifizierungsdetails:

    1. Gruppenname
    2. Gruppentyp 
    3. Gruppen-Subtyp
  • Die Tabelle SYS.TABLE_PLACEMENT enthält die Tabellenplatzierungsregeln:

    1. Klassifizierung
    2. Konfigurationseinstellungen pro Regel
    3. Speicherort der Tabelle oder Partition pro Regel
  • Die View M_EFFECTIVE_TABLE_PLACEMENT zeigt den Speicherort der Tabelle an.

  • Tabellenumverteilung mit:

    • SAP HANA Cockpit
    • SQL Console
    • SAP-HANA-Studio (veraltet)
  • SAP-Hinweise sind für ERP, BW, S/4HANA und BW/4HANA verfügbar.

Die Klassifizierung erfolgt, indem jede Tabelle mit einem Gruppennamen, einem Gruppentyp und einem Subtyp versehen wird. Basierend auf Kombinationen dieser Elemente sowie der Tabellennamen und Schemanamen kann eine Reihe von Konfigurationswerten als Tabellenplatzierungsregeln definiert werden. Diese Regeln werden verwendet, um z.B. die Platzierung von Partitionen oder die Anzahl der Partitionen während Operationen wie Tabellenerstellung oder Neuverteilung zu steuern. Dadurch werden assoziierte oder stark verwandte Tabellen so platziert, dass die erforderliche knotenübergreifende Kommunikation für SQL-Operationen auf Tabellen innerhalb der Gruppe minimiert wird.

Tabellenplatzierungsregeln werden während der Systemmigration oder beim Anlegen von Tabellen angewendet, aber es kann auch erforderlich sein, den Speicherort oder die Anzahl der Partitionen fortlaufend anzupassen, um das Datenwachstum zu verarbeiten. Daher kann die Tabellenumverteilung auch bei Bedarf ausgeführt werden, um die Landschaft während der Systementwicklung zu optimieren. Eine Repartitionierung ist immer erforderlich, z.B. für jede Tabelle oder Partition in der Datenbank, die die maximale Anzahl von 2 Milliarden Zeilen erreicht.

Die folgenden Werkzeuge stehen für die Tabellenrepartitionierung und -umverteilung zur Verfügung. Diese Werkzeuge werten die aktuelle Landschaft aus und ermitteln eine optimierte Verteilung:

  • SAP-HANA-Tabellenumverteilung

  • Data Distribution Optimizer (Teil von SAP HANA Data Warehousing Foundation)

Der Ausgleich einer SAP-HANA-Scale-Out-Landschaft mit diesen Werkzeugen erfolgt in zwei Phasen:

  1. Generierung eines Plans auf der Grundlage von Tabellenplatzierungsregeln (in einem späteren Abschnitt ausführlich beschrieben). Nachdem Sie den Plan generiert haben, können Sie ihn überprüfen und die Definition der Regeln bei Bedarf anpassen.
  2. Ausführung des Plans, der die Partitionierungs- und Verteilungsänderungen implementiert.

Da Split-Tabelle und Move-Tabelle Vorgänge sind, die Tabellensperren erfordern, sollte die Ausführung des Plans nicht in einem Zeitraum durchgeführt werden, in dem die Datenbank stark belastet ist.

Tabellenklassifizierung und Tabellenplatzierungsregeln

Tabellenplatzierungsregeln werden in der Tabelle SYS.TABLE_PLACEMENT definiert. Zur Pflege dieser Einstellungen ist die Systemberechtigung TABLE ADMIN erforderlich. Die Platzierungsregeln beziehen sich im Wesentlichen auf folgende Bereiche:

  • Klassifizierung, d.h. zusammengehörige Tabellen, die zusammen liegen müssen, sind in Gruppen organisiert

  • Konfigurationseinstellungen zur Verwaltung der Partitionierung (Anzahl der initialen Partitionen, Split-Schwellenwert usw.)

  • Physische Verteilung oder Speicherort von Tabellen oder Partitionen in der Serverlandschaft

Wenn beim Anlegen einer Tabelle die definierten Regeln mit einer Tabelle oder einer Tabellengruppe übereinstimmen, berücksichtigt SAP HANA diese beim Anlegen der Tabelle. Beachten Sie, dass Partitionsspezifikationen weiterhin von der Anwendung definiert werden müssen.

Tabellenplatzierungsregeln

Die Tabelle TABLE_PLACEMENT stellt eine Customizing-Schnittstelle bereit, die für die dynamische Verwaltung von Partitionen und Lokationen verwendet werden kann.

Die Partitionierungsparameter werden verwendet, um zu definieren, wie eine Tabelle oder eine Gruppe von Tabellen partitioniert wird, wenn die Tabelle eine Partitionierungsspezifikation der ersten Ebene von Hash oder Round-Robin hat. Die Range-Partitionierung wird auf diese Weise nicht behandelt.

Wenn die Anzahl der Zeilen kleiner als MIN_ROWS_FOR_PARTITIONING ist, besteht die Tabelle nur aus einer Partition. Wenn diese minimale Zeilengrenze überschritten wird, wird die Tabelle in so vielen Teilen partitioniert, wie die folgenden Integritätsregeln erfüllen:

  • Die Anzahl der Partitionen ist größer oder gleich dem Wert von (Zeilenanzahl der Tabelle) / REPARTITIONING_THRESHOLD.

  • Die Anzahl der Partitionen ist ein Vielfaches von INITIAL_PARTITIONS.

  • Die Anzahl der Partitionen ist kleiner oder gleich der Anzahl der Hosts, wenn der Parameter max_partitions_limited_by_locations nicht auf false gesetzt ist und die Anzahl der Partitionen kleiner als der Wert des Parameters max_partitions ist (siehe Details unten).

Wenn die Tabelle also mehr als eine Partition hat, gibt es mindestens INITIAL_PARTITIONS-Partitionen, und jede Partition hat weniger als REPARTITIONING_THRESHOLD-Datensätze. Partitionen beziehen sich in diesem Zusammenhang auf Partitionen der ersten Ebene (vom Typ HASH oder ROUNDROBIN).

Beachten Sie, dass beim Erstellen einer partitionierten Tabelle ohne geschätzte Zeilenanzahl (Standardverhalten) eine partitionierte Tabelle mit INITIAL_PARTITIONS Partitionen der ersten Ebene erstellt wird. Während bei einer Umverteilung eine einzige Partition der ersten Ebene (unter der Annahme von MIN_ROWS_FOR_PARTITIONING > 0) angestrebt wird. In bestimmten Anwendungen wird das Anlegen mit einer geschätzten Zeilenanzahl durchgeführt, z.B. BW mit 1 Million, und daher wird es mit nur einer ersten Ebenenpartition angelegt (unter der Annahme von MIN_ROWS_FOR_PARTITIONING > 1,000,000).

Repartitionierung

Bei Überschreitung von Schwellenwerten findet keine automatische Repartitionierung statt. Stattdessen wird dies bei der nächsten Ausführung des Rückverteilungsprozesses vorgeschlagen.

Die für die Partitionierung eingegebenen Werte müssen mit der physischen Landschaft konsistent sein, insbesondere die Anzahl der verfügbaren Serverknoten:

  • Wenn eine Repartitionierung erforderlich ist, werden Tabellen nur repartitioniert, indem die Anzahl der vorhandenen (initialen) Partitionen verdoppelt wird. Dies geschieht aus Performancegründen. Die maximale Anzahl von Partitionen (erste Ebene), die von diesem Prozess erreicht wird, wird durch den Parameter global.ini > [table_placement] > max_partitions (default: 12)definiert.
  • Standardmäßig legt das System nicht mehr Partitionen als die Anzahl der verfügbaren Hosts (oder genauer mögliche Speicherorte) an. Wenn INITIAL_PARTITIONS beispielsweise auf 3 gesetzt ist, die verteilte SAP-HANA-Datenbank jedoch fünf mögliche Speicherorte hat, findet keine Repartitionierung von drei bis sechs Partitionen statt. Eine Tabelle kann mehr als eine Partition pro Host haben, wenn der Parameter global.ini > [table_placement] > max_partitions_limited_by_locations auf false gesetzt ist (Standard: true). Diese Regel wird ignoriert, wenn eine höhere Anzahl von Partitionen der ersten Ebene erforderlich ist, um Gruppen mit mehr als 2 Milliarden Datensätzen (global.ini > [table_placement] > max_rows_per_partition, default: 2,000,000,000) zu partitionieren.

Ablageort

Es gibt folgende vordefinierte Werte für mögliche Lokationen:

  • Koordinator: stellt den Primärknoten dar

  • Arbeitnehmer (oder Arbeitnehmer): stellt alle Arbeitnehmerknoten dar, die zur Arbeitnehmergruppe „Standard" gehören

  • Alle: stellt alle Knoten dar, die zur Worker-Gruppe „Standard" gehören, d.h. den Koordinatorknoten und die Worker-Knoten

Die Arbeitergruppenzuordnung befindet sich im Eintrag WORKER_ACTUAL_GROUPS der View M_LANDSCAPE_HOST_CONFIGURATION und kann wie folgt aufgerufen werden:

Code Snippet
1
call SYS.UPDATE_LANDSCAPE_CONFIGURATION('GET WORKERGROUPS','<hostname>')

Darüber hinaus ist es auch möglich, benutzerdefinierte Lokationsdefinitionen anzulegen, indem Sie die folgende Vorgehensweise verwenden, um einem Host Arbeitnehmergruppen zuzuordnen:

Code Snippet
1
call SYS.UPDATE_LANDSCAPE_CONFIGURATION('SET WORKERGROUPS','<hostname>','<name1> <name2> <name3>')

Notiz

Wenn ein Host mehreren Arbeitergruppen zugeordnet ist, müssen diese durch ein Leerzeichen getrennt werden.

Anwendung von Regeln

Die Tabelle TABLE_PLACEMENT wird so gelesen, dass eine spezifischere Regel eine allgemeinere ersetzt. Eine vollständige Matrix der Prioritäten finden Sie im SAP-Hinweis 1908082 – Tabellenplatzierungsprioritäten.

Beispielsweise gilt ein Eintrag mit nur einem Schema für alle Tabellen dieses Schemas; zusätzliche Einträge für dieses Schema und bestimmte Gruppentypen übersteuern die allgemeinere Regel.

Sicht "Monitoring"

Sie können die tatsächlichen Tabellenplatzierungseinstellungen pro Tabelle anzeigen, indem Sie die Systemsicht M_EFFECTIVE_TABLE_PLACEMENT abfragen. Sie können die gültigen Lokationen gemäß der Konfiguration und für jeden Partitionierungsparameter die tatsächlichen Werte und in den entsprechenden _MATCH-Spalten den Grund (Abgleichsregel) für diese anzeigen.

Die Informationen zur Klassifizierung einer Tabelle können in der Überwachungsansicht SYS.TABLE_GROUPS überprüft werden.

Tabellen in einem SAP-HANA-System mit mehreren Hosts neu verteilen

In einem verteilten SAP-HANA-System werden Tabellen und Tabellenpartitionen zum Zeitpunkt ihrer Erstellung einem Index-Server auf einem bestimmten Host zugeordnet, diese Zuordnung kann jedoch geändert werden. In bestimmten Situationen ist es sogar notwendig. Sie können das SAP HANA Cockpit oder den SQL-Editor verwenden, um automatische Umverteilungsvorgänge auszuführen.

Es gibt mehrere Fälle, in denen Tabellen oder Partitionen einer Tabelle auf andere Server verschoben werden müssen. Wenn Sie beispielsweise einen Host aus Ihrem System entfernen möchten, müssen Sie zuerst alle Daten auf diesem Host auf die anderen Hosts im System verschieben. Eine Neuverteilung von Tabellen kann auch dann sinnvoll sein, wenn Sie vermuten, dass die aktuelle Verteilung nicht mehr optimal ist.

Zur Unterstützung der folgenden Situationen stehen Umverteilungsvorgänge zur Verfügung:

  • Sie planen, einen Host aus Ihrem System zu entfernen.

  • Sie haben Ihrem System einen neuen Host hinzugefügt.

  • Sie möchten die aktuelle Tabellenverteilung optimieren.

  • Sie möchten die Tabellenpartitionierung optimieren.

Obwohl es möglich ist, Tabellen und Tabellenpartitionen manuell von einem Host auf einen anderen zu verschieben, ist dies weder praktisch noch für eine umfangreiche Neuverteilung von Daten möglich.

Tabellenverteilung

Suchen Sie im SAP HANA Cockpit nach der Karte Tabellenverteilung. Wählen Sie auf dieser Karte Aktuelle Tabellenverteilung anzeigen. Die Anwendung Tabellenverteilung beschreibt Partitionierungs- und Verteilungsinformationen von Tabellen in einem verteilten System. Sie können die Anzahl der angezeigten Tabellen reduzieren, indem Sie die Filterfunktion verwenden.

Verwenden Sie die Tabellenverteilungsanwendung im SAP HANA Cockpit, um Tabellen zu partitionieren und zwischen den Scale-Out-Knoten zu verschieben.

Darüber hinaus können Sie in der Anwendung Tabellenverteilung zusätzliche Aktionen auswählen.

Folgende Operationen stehen zur Verfügung:

  • Tabellenverteilung anzeigen

  • Tabellen-Rückverteilungsplan generieren

  • Aktuelle Tabellenverteilung sichern

  • Gespeicherten Verteilungsplan wiederherstellen

  • Tabellenverteilungsplan erneut ausführen

Tabellenumverteilung mit SAP HANA Cockpit

Tabellen können mit dem Tabellenumverteilungsplan-Generator im SAP HANA Cockpit partitioniert, repartitioniert oder zusammengeführt werden.

SAP HANA unterstützt mehrere Umverteilungsvorgänge, die komplexe Algorithmen sowie konfigurierbare Tabellenplatzierungsregeln und Umverteilungsparameter verwenden, um die aktuelle Verteilung auszuwerten und je nach Situation eine bessere Verteilung zu ermitteln. Administratoren können die Funktion zur Neuverteilung von Tabellen im SAP HANA Cockpit verwenden, um einen Plan für die Neuverteilung und Repartitionierung von Tabellen anzulegen. Der Administrator kann den Plan prüfen und ausführen.

Saldentabellenverteilung

Die Last auf einem Scale-Out-System ändert sich im Laufe der Zeit mit der Verwendung des Systems. Diese Option generiert einen Plan zum Verschieben von Tabellen und Partitionen auf ihre richtigen Hosts, wenn sie sich derzeit auf ungültigen Hosts gemäß den in der Tabelle TABLE_PLACEMENT angegebenen Regeln befinden. Der Plan prüft, ob ein Split oder Merge notwendig ist und berechnet optimale Positionen für die Teile und Tabellen. Alle Arten von Tabellen und Teilen können verschoben werden. Es sind jedoch nur die Tabellen betroffen, für die Sie die Berechtigung zum Anzeigen als Katalogobjekte haben.

Anzahl der Partitionen prüfen

In einem Scale-Out-System werden partitionierte Tabellen auf verschiedene Index-Server verteilt. Der Speicherort der verschiedenen Partitionen kann manuell angegeben oder von der Datenbank bestimmt werden, wenn die Tabelle initial partitioniert wird. Diese initiale Partitionierung kann im Laufe der Zeit nicht mehr optimal sein, z.B. wenn eine Partition deutlich gewachsen ist.

Diese Option wertet aus, ob partitionierte Tabellen neu partitioniert werden müssen. Der Plan gibt an, wie partitionierte Tabellen repartitioniert (aufgeteilt oder zusammengeführt) werden und wie neu angelegte Partitionen verteilt werden. Beachten Sie, dass dies nur für Spaltenspeichertabellen relevant ist. Systemtabellen, temporäre Tabellen und Zeilenspeichertabellen werden nicht berücksichtigt.

Tabellen nach Hinzufügen von Host(s) neu verteilen

Nachdem Sie einem Scale-Out-System einen oder mehrere Worker-Hosts hinzugefügt haben, müssen Sie die Tabellen möglicherweise auf die aktiven Index-Server umverteilen. Diese Option prüft, ob neue Partitionen angelegt werden können, und generiert einen Plan zum Verschieben der Tabellen und Tabellenpartitionen nach Bedarf.

Prüfen Sie den korrekten Speicherort der Tabellen und Partitionen.

Diese Option generiert einen Plan zum Verschieben von Tabellen und Partitionen auf ihre richtigen Hosts, wenn sie sich auf ungültigen Hosts gemäß den in der Tabelle TABLE_PLACEMENT angegebenen Regeln befinden. Betroffen sind nur die Tabellen, für die Sie die Berechtigung zum Anzeigen als Katalogobjekte haben.

Routineaufgaben

Einige regelmäßige Vorgänge müssen von Zeit zu Zeit durchgeführt werden. Mit dieser Option können Sie verschiedene Operationen im System ausführen, z.B. Komprimierungen optimieren, defrag, Tabelle laden und Delta zusammenführen. Betroffen sind nur die Tabellen, für die Sie die Berechtigung zum Anzeigen als Katalogobjekte haben. Außerdem müssen Sie über die entsprechenden Berechtigungen verfügen, um bestimmte Routineaufgaben wie Delta-Merge auszuführen.

Tabellenneuverteilung mit SQL-Editor

Der Tabellenumverteilungsplan kann mit SQL-Befehlen im SQL-Editor des SAP-HANA-Datenbank-Explorers generiert werden.

Die Tabellenumverteilung kann auch mit den SQL-Befehlen durchgeführt werden. Sie können ein SQL-Skript anlegen, das alle erforderlichen Schritte ausführt, oder Sie können den SQL-Editor verwenden, der vom SAP-HANA-Datenbank-Explorer bereitgestellt wird.

Die Tabellenumverteilung basiert auf den Tabellenplatzierungsregeln, die in der Tabelle TABLE_PLACEMENT definiert sind. Diese Regeln bestimmen z.B. Tabellengrößen, Partitionierungsschwellenwerte und bevorzugte Partitionslokationen. Die Neuverteilung ist ein zweistufiger Prozess: zum einen zum Generieren des Plans und zum anderen zum Ausführen des Plans. In jeder Stufe werden separate Befehle verwendet:

  1. Der Befehl zur Plangenerierung ist ein Mehrzweckwerkzeug, das eine Algorithmusnummer als Parameter benötigt, um festzulegen, welche Aktionen ausgeführt werden. Je nach ausgewähltem Algorithmus können auch zusätzliche optionale Parameterwerte verfügbar sein, um mehr Kontrolle über die Ausführung zu geben.
  2. Der Planausführungsbefehl verwendet einen einzelnen Parameter, bei dem es sich um den numerischen Plan-ID-Wert handelt. Sie können diesen Wert (REORG_ID) aus der Systemsicht REORG_OVERVIEW abrufen (siehe Systemsichten im Folgenden).

Für diese Befehle gibt es folgende Syntax:

  • CALL REORG_GENERATE(<algorithm integer>, <optional parameter string>);

  • CALL REORG_EXECUTE(<plan_id>);

Für den Aufruf von REORG_GENERATE() ist die Ressourcenadministratorberechtigung erforderlich. Der Befehl funktioniert nur für Tabellen und Partitionen, die der ausführende Benutzer als Katalogobjekte sehen darf.

Generierung des Plans: Algorithmen und Optionen

Die folgende Liste gibt einen Überblick über die am häufigsten benötigten Algorithmen:

  • Server hinzufügen: Algorithmusnummer: 1

    Führen Sie diese Prüfung aus, nachdem Sie der Landschaft einen oder mehrere Index-Server hinzugefügt haben. Wenn neue Partitionen angelegt werden können, wird ein Plan generiert, um die Tabellen aufzuteilen und die neuen Partitionen auf die neu hinzugefügten Index-Server zu verschieben.

    Optionen: SCHEMA_NAME | TABLE_NAME | GROUP_NAME | GROUP_TYPE | GROUP_SUBTYPE | RECALC | NO_PLAN

  • Clear server: Algorithmusnummer: 2

    Verschiebt alle Partitionen von einem benannten Server auf andere Server in der Landschaft.

    Optionen: USE_GROUP_ADVISOR

  • Speicheralgorithmusnummer: 4

    Sichern Sie die aktuelle Landschaftseinrichtung.

  • Wiederherstellungsalgorithmusnummer: 5

    Stellen Sie eine gesicherte Landschaftseinrichtung wieder her. Geben Sie den Plan-ID-Wert als optionalen Parameterwert ein.

  • Balance-Landschaft: Algorithmusnummer: 6

    Diese Funktion prüft, ob Tabellen in der Landschaft gemäß den Tabellenplatzierungsregeln auf ungültigen Servern platziert sind, und prüft, ob ein Split oder Merge erforderlich ist, um optimale Positionen für die Partitionen und Tabellen zu erreichen und Tabellen gleichmäßig auf die Index-Server-Hosts zu verteilen.

    Optionen: SCHEMA_NAME | TABLE_NAME | GROUP_NAME | GROUP_TYPE | GROUP_SUBTYPE | RECALC | NO_PLAN | NO_SPLIT | SCOPE

  • Anzahl der Partitionen prüfen Algorithmusnummer: 7

    Diese Funktion prüft, ob partitionierte Tabellen neu partitioniert werden müssen, und erstellt einen Plan zum Aufteilen von Tabellen, wenn die Partitionen einen konfigurierten Schwellenwert für die Zeilenanzahl überschreiten. Kein optionaler Parameter.

  • Gruppen-Advisor-Algorithmusnummer ausführen: 12

    Ruft den Group Advisor auf und erstellt aus seiner Ausgabe einen ausführbaren Plan.

    Der Group Advisor identifiziert Tabellen, die häufig zusammen verwendet werden, sodass sie bei der Neuverteilung zusammen auf demselben Knoten liegen können, um eine knotenübergreifende Kommunikation in der Landschaft zu vermeiden.

  • Prüftabellenplatzierung Algorithmusnummer: 14

    Prüfen Sie die aktuelle Landschaft anhand der Tabellenplatzierungsregeln, und stellen Sie (falls erforderlich) einen Plan zum Verschieben von Tabellen und Partitionen auf die richtigen Hosts bereit.

    Optionen: LEAVE_UNCHANGED_UNTOUCHED | KEEP_VALID | NO_SPLIT

  • Plan erneut ausführen Algorithmusnummer: 15

    Fehlgeschlagene Elemente aus zuvor ausgeführten Plänen erneut ausführen.

    Option: RERUN_ALL

  • Algorithmusnummer für periodische Aufgaben: 16

    Führen Sie Routineaufgaben aus. Für bestimmte Aktionen können zusätzliche Berechtigungen erforderlich sein.

    Optionen: OPTIMIZE_COMPRESSION | DEFRAG | LOAD_TABLE | MERGE_DELTA | ALLOptional

Vordefinierte Tabellenplatzierungsszenarien

Für bestimmte Anwendungen gibt SAP Empfehlungen zu Partitionierungs- und Tabellenverteilungskonfigurationen.

SAP BW powered by SAP HANA

Alle erforderlichen Schritte und empfohlenen Einstellungen für SAP BW auf SAP HANA 2 sind im SAP-Hinweis 1908075 – „BW on SAP HANA: Tabellenplatzierung und Landschaftsumverteilung" beschrieben. Dazu gehört eine ZIP-Datei mit Dokumentation und SQL-Code, um verschiedene Szenarien zu konfigurieren, die eine Reihe von TABLE_PLACEMENT-Einstellungen abdecken, die von der Knotengröße (TB pro Knoten) und der Anzahl der Koordinator- und Worker-Knoten abhängen.

SAP Business Suite powered by SAP HANA

SAP-Hinweis 1899817 – „SAP Business Suite on SAP HANA database: Table Placement" enthält Konfigurationsskripte zum Einrichten der Partitionierung und Verteilung für Suite und S/4HANA für verschiedene Support-Package-Stack-Releases.

SAP S/4HANA

Ab SAP S/4HANA 1610 FPS1 wird Scale-Out unterstützt und kann in speziellen Szenarios angewendet werden. Anwendungsdatentabellen werden nach Anwendungsbereichen gruppiert und können als Tabellengruppe auf einem bestimmten Server platziert werden. Auf diese Weise ist es möglich, Scale-Out in SAP S/4HANA zu verwenden.

Um die Tabellenverteilung zu ermöglichen, liefert SAP S/4HANA vordefinierte Tabellengruppen für die verschiedenen Anwendungen aus.

Details zu Scale-Out-Optionen für SAP S/4HANA finden Sie im SAP-Hinweis 2408419 – „SAP S/4HANA – Unterstützung mehrerer Knoten". Dieser Hinweis enthält Skripte und Konfigurationseinstellungen sowie eine detaillierte Dokumentation zu Tabellengruppen und Migration.

In SAP S/4HANA kann die Tabellenverteilung gemäß den Richtlinien im SAP-Hinweis 2408419 durchgeführt werden.

Bei der gemischten Arbeitslast in einem SAP-S/4HANA-System ist es immer noch sinnvoll, zuerst so weit wie möglich zu skalieren, bevor Sie in den Scale-Out wechseln. Wenn also der erste Knoten größer als 6 TB und 8 CPU-Sockets ist, ist Scale-Out zulässig. Ein Beispiel finden Sie in der vorherigen Abbildung.

SAP BW/4HANA

Alle erforderlichen Schritte und empfohlenen Einstellungen für SAP BW/4HANA auf SAP HANA 2 werden im SAP-Hinweis 2334091 – „BW/4HANA: Tabellenplatzierung und Landschaftsumverteilung" beschrieben. Dazu gehört eine ZIP-Datei mit Dokumentation und SQL-Code, um verschiedene Szenarien zu konfigurieren, die eine Reihe von TABLE_PLACEMENT-Einstellungen abdecken, die von der Knotengröße (TB pro Knoten) und der Anzahl der Koordinator- und Worker-Knoten abhängen.

In SAP BW/4HANA kann die Tabellenverteilung gemäß den Richtlinien im SAP-Hinweis 2334091 durchgeführt werden.

SAP gibt Empfehlungen zur Konfiguration der Tabellenverteilung. Für diese Szenarien werden SQL-Implementierungsskripte und eine detaillierte Dokumentation in SAP-Hinweisen bereitgestellt.

Vordefinierte Tabellenplatzierungsszenarien

Vordefinierte TabellenplatzierungsszenarienSAP-Hinweis
SAP BW powered by SAP HANA1908075
SAP Business Suite powered by SAP HANA und S/4HANA1899817
SAP S/4HANA2408419
SAP BW/4HANA2334091
BPC-HANA-Tabellenverteilung aktivieren2003863