Replizieren von Daten mit SQL

Objective

After completing this lesson, you will be able to replizieren Sie Daten mithilfe von SQL-Anweisungen.

SQL-Anweisungen zum Verwalten der Replikation

Um die Replikation zu implementieren, empfiehlt SAP, dass Sie Quelldateien in Ihrem Projekt definieren, um die Replikationseinstellungen zu beschreiben, und diese Dateien anschließend implementieren, um die Laufzeitobjekte in der Datenbank zu generieren. Diesen Ansatz werden wir später behandeln.

Vorerst implementieren wir die Replikation, indem SQL-Anweisungen in der SQL-Konsole der Web IDE ausgeführt werden. Auf diese Weise können wir jeden einzelnen Schritt bei der Einrichtung der Replikation verstehen.

Für diesen Ansatz müssen Sie zunächst eine virtuelle Tabelle basierend auf den Quelldaten anlegen. Außerdem benötigen Sie eine Zieltabelle in SAP HANA Cloud.

Nachdem Sie diese Objekte angelegt haben, können Sie die folgenden Schritte ausführen:

  1. Legen Sie die Remote-Subskription an, um die Zieltabelle als Empfänger der Quelldaten zu registrieren.

    Code Snippet
    123
    CREATE REMOTE SUBSCRIPTION <subscription_name> ON <virtual_table_name> TARGET <target_table_name>;

  2. Stellen Sie die Remote-Subskription (außer RTR) in die Warteschlange, um alle erforderlichen Objekte in der Quelle anzulegen. (Trigger, Schattentabellen usw.)

    Code Snippet
    1
    ALTER REMOTE SUBSCRIPTION <subscription_name> QUEUE;

  3. Führen Sie die Erstdatenübernahme durch (außer RTR), wenn Sie die vorhandenen Quelldaten abrufen möchten.

    Code Snippet
    12
    ‌INSERT INTO <target_table_name> (SELECT * FROM <virtual_table_name>);

  4. Verteilen Sie das Abonnement, um die eigentliche Replikation von Modifikationen zu starten.

    Code Snippet
    1
    ALTER REMOTE SUBSCRIPTION <subscription_name> DISTRIBUTE;

Nachdem Sie der Quelle einige Zeilen hinzugefügt haben, können Sie die Zieltabelle abfragen, um nach den neuen Daten zu suchen.

Starten Sie zunächst dieses Video, um ein Beispiel mit einer Smart-Data-Integration-Verbindung (SDI-Verbindung) zu sehen:

Starten Sie nun das folgende Video, um ein Beispiel mit der Remote-Tabellen-Replikation über eine Smart-Data-Access-SDA-Verbindung zu sehen:

Weitere Funktionen

Sie können nur bestimmte Spalten und/oder Partitionen replizieren. Wir nennen dies eine Subreplikation.

Sie müssen die folgenden Anweisungen ausführen, um die Remote-Subskription anzulegen/zu ändern:

  • Für eine auf Spalten basierende Unterreplikation:
    Code Snippet
    12
    CREATE REMOTE SUBSCRIPTION <subscription_name> {AS SELECT (<column_list>) FROM <virtual_table_name> TARGET TABLE <target_table_name>};
  • Für eine auf Partitionen basierende Unterreplikation:
    Code Snippet
    12
    ALTER REMOTE SUBSCRIPTION <subscription_name> { PARTITIONS ( <partition_number> [ {, <partition_number> }...] ) | ALL PARTITIONS }

Die anderen Schritte bleiben unverändert.

Starten Sie dieses Video, um zu erfahren, wie Sie die Unterreplikation einrichten: