Den Replikationsprozess verstehen

Objective

After completing this lesson, you will be able to beschreiben Sie die Replikationskomponenten und -technologien.

Der Replikationsprozess

Replikation bedeutet in der Regel, dass Daten in Echtzeit direkt von einem System in ein anderes kopiert werden. Dies erfolgt in der Regel auf Tabellenebene.

Es gibt einige Gründe, warum Sie eine Replikation in Erwägung ziehen können:

  • Sie möchten Daten in ein anderes System duplizieren, das unterschiedliche Werkzeuge und Technologiemöglichkeiten hat. In diesem System können Sie eine bestimmte Anwendung anlegen.

  • Sie möchten Daten in Echtzeit an ein oder mehrere Ziele verteilen, um Informationen auszutauschen.

  • Sie möchten Daten aus einem alten System in ein neues System migrieren.

  • Sie haben remote (ohne Persistenz) auf Daten zugegriffen, aber die Performance ist inakzeptabel geworden, möglicherweise aufgrund steigender Datenmengen.

Um die Datenreplikation mit SAP HANA einzurichten, ist es wichtig, den zugrunde liegenden Prozess und die damit verknüpften Datenbankobjekte zu verstehen.

Replikationskomponenten

Um eine Quelltabelle zu replizieren, müssen Sie den Zugriff auf diese Tabelle einrichten. Dies erfolgt durch das Anlegen einer Remote-Source und einer virtuellen Tabelle, wie im vorherigen Kapitel beschrieben.

Darüber hinaus müssen Sie die Zieltabelle anlegen, um die replizierten Daten zu speichern. Die Zieltabelle kann entweder dieselbe Struktur wie die Quelltabelle haben, eine Teilmenge der Quelltabelle mit weniger Spalten sein oder Variationen in den Spaltendefinitionen aufweisen, z.B. um lange Zeichenfolgen zu reduzieren, bei denen nicht alle Zeichen benötigt werden.

Nachdem Sie die virtuelle Tabelle und die Zieltabelle angelegt haben, können Sie die Remote-Subskription definieren. Die Zieltabelle subskribiert dann die Änderungen, die an den Daten vorgenommen wurden, auf die die virtuelle Tabelle zugreift.

Diese Folie zeigt alle erforderlichen Replikationskomponenten.

Abhängig von der Methode, die zur Implementierung dieser Replikation verwendet wird, werden diese Objekte (virtuelle Tabelle, Zieltabelle, Remote-Subskription) entweder automatisch angelegt oder müssen manuell angelegt werden.

Replikationstechnologien

Abhängig von Ihrem SAP-HANA-System: On-Premise oder Cloud, und abhängig von der Art der Datenquelle, aus der Sie replizieren möchten, sind verschiedene Replikationstechnologien verfügbar.

Die häufigsten Replikationstechnologien sind:

  • Protokollbasierte Tabellenreplikation

    Verwendet das Datenbank-Redo-Log, um Änderungen in der Quelltabelle abzurufen und zu reproduzieren. Es ist nicht aufdringlich, und die Transaktionsintegrität ist gewährleistet, da nur festgeschriebene Transaktionen repliziert werden.

  • Triggerbasierte Tabellenreplikation

    Auslöser werden in der Quelldatenbank angelegt, um die Quelltabelle zu überwachen und alle geänderten (aktualisierten oder gelöschten) und neuen Zeilen zu erfassen. Die erfassten Daten werden in einer Schattentabelle gespeichert. Außerdem wird eine Queue-Tabelle angelegt, um alle Modifikationen in der richtigen Reihenfolge aufzuzeichnen. Diese Technologie ist unabhängig von der Quelldatenbankversion und bietet möglicherweise mehr Funktionen als die protokollbasierte Replikation, z.B. die Replikation großer Objekte (LOBs).

  • Dateireplikation

    Dies ist die vom Datei-Adapter implementierte Technologie, die zum Replizieren neuer Zeilen in einer Datei verwendet wird. Es wird nur Append unterstützt.

Welche Technologie wird verwendet?

Abhängig von Quelle und Ziel sowie dem gewählten Adapter stehen verschiedene Technologien zur Verfügung, wie im Folgenden dargestellt:

Diese Folie zeigt die verschiedenen Technologien, die für die Replikation verwendet werden können.

Nicht alle SDI-Adapter unterstützen die Echtzeitreplikation. Die Echtzeitreplikation wird manchmal als Änderungsdatenerfassung in Echtzeit bezeichnet.

Einige Adapter verwenden die protokollbasierte Replikation. Diese erhalten in der Regel das Suffix Log.

Es gibt Adapter, die die triggerbasierte Replikation verwenden, z.B. SAP-HANA-Adapter.

Eine Reihe von Adaptern verwenden spezifische, proprietäre Technologien, z.B. FileAdapter.

Einige Adapter erfordern ein spezifisches Setup im Quellsystem, um Replikationsfunktionen zu implementieren.

Notiz

Eine Liste der Adapter und ihrer Funktionen finden Sie in der Hilfedokumentation: SAP HANA Smart Data Integration und SAP HANA Smart Data Quality - Configuration Guide for other SAP HANA Scenarios.

Wenn Sie in eine On-Premise-SAP-HANA-Datenbank replizieren, müssen Sie Smart Data Integration (SDI) verwenden, um eine Verbindung zur Datenquelle herzustellen. Mit der SAP-HANA-Cloud-Datenbank als Replikationsziel können Sie jedoch auch Smart Data Access (SDA) verwenden, um Daten aus einer SAP-HANA-Datenbank zu replizieren. Die verwendete Technologie ist eine optimierte protokollbasierte Replikation. Diese Art der Replikation wird als Remote-Tabellenreplikation (RTR) bezeichnet.

Benötigte Berechtigungen

Um die Tabellenreplikation zu implementieren, sind einige spezifische Berechtigungen erforderlich:

  • Für den in der Remote-Source-Definition angegebenen Benutzer:

    Vollständiger Zugriff auf das Quellschema.

    Wenn die Quelle beispielsweise eine SAP-HANA-Datenbank ist, muss der Benutzer das CREATE ANY -Privileg für das Quellschema haben.

  • Für den Benutzer, der die Replikation in der SAP-HANA-Zieldatenbank implementiert:
    • CREATE VIRTUAL TABLE und CREATE REMOTE SUBSCRIPTION auf der Remote-Source.
    • CREATE TABLE für das Zielschema.

Replikationsimplementierungsschritte

Im Folgenden finden Sie die grundlegenden Schritte zum Implementieren der Replikation:

  1. Legen Sie eine Remote-Quelle an.
  2. Legen Sie eine virtuelle Tabelle basierend auf der Remote-Quelle an.
  3. Legen Sie die Zieltabelle an – dies kann vor den Schritten 1 und 2 erfolgen.
  4. Definieren Sie die Remote-Subskription mit der virtuellen Tabelle als Provider und der Zieltabelle als Empfänger.
  5. Stellen Sie die Remote-Subskription in eine Queue. Dazu gehören das Anlegen von Quell-Triggern, Schattentabellen und Queue-Tabellen für die triggerbasierte Replikation (gilt nur für SDI-Remote-Quellen).
  6. Wenn Sie SDI-Remote-Sources verwenden, kopieren Sie die initialen Quelldaten in das Ziel.
  7. Verteilen Sie die Daten, und initiieren Sie die Änderungsdatenerfassung in Echtzeit.

In den folgenden Lektionen erfahren Sie, wie Sie diese Schritte mit den verschiedenen Werkzeugen von SAP HANA implementieren.