SQL Server-Quelldatenbank

Diese Seite enthält Informationen zu folgenden Themen:

  • Das Verhalten bei der Verarbeitung von Daten, die aus einer SQL Server-Quelldatenbank abgerufen werden.
  • Die von Datastream unterstützten Versionen von SQL Server-Datenbanken.
  • Bekannte Einschränkungen bei der Verwendung einer SQL Server-Datenbank als Quelle.

Verhalten

Datastream verfolgt Änderungen der Datenbearbeitungssprache (Data Manipulation Language, DML) mit einer der folgenden CDC-Methoden:

Transaktionslogs

Bei Verwendung dieser CDC-Methode liest Datastream Änderungen in der Quelle direkt aus Transaktionslogs. Diese Methode erfordert weniger Ressourcen und ermöglicht einen schnelleren Datenabruf, hat jedoch mehr Einschränkungen.

Um Datenverluste zu vermeiden, ist es wichtig, dass die Logs nicht abgeschnitten werden, bevor Datastream sie liest. Wenn Sie die Logdateien hingegen zu lange aufbewahren, belegen sie Speicherplatz. Dies kann dazu führen, dass die Datenbankinstanz in den Lesemodus wechselt.

Damit der CDC-Leser genügend Zeit hat, die Logs zu lesen und gleichzeitig durch das Abschneiden von Logs Speicherplatz freigegeben wird, müssen Sie zusätzliche Konfigurationsschritte ausführen, z. B. Abfrageintervalle ändern und einen Schutz vor Kürzung einrichten. Diese Schritte bieten eine zusätzliche Schutzebene, damit Datastream die Daten auch dann lesen kann, wenn es auf der Datastream-Seite zu Ausfallzeiten oder einem Konnektivitätsproblem zwischen der Quelldatenbank und Datastream kommt.

Eine ausführliche Anleitung zum Anwenden dieser zusätzlichen Messwerte finden Sie auf der Seite SQL Server-Quelldatenbank konfigurieren. Wählen Sie dort Ihren Datenbanktyp aus.

Tabellen ändern

Mit der CDC-Methode für Änderungstabellen können Nutzer Logs für eine kürzere Zeit aufbewahren und so Speicherplatz sparen. Allerdings wird im Vergleich zur Methode der Transaktionslogs ein geringerer Durchsatz unterstützt. Die Methode hat weniger Einschränkungen als Transaktionslogs. Sie beseitigt beispielsweise das Risiko, dass Logs abgeschnitten werden, sodass Streams dauerhaft ausfallen, und unterstützt die Replikation verschlüsselter Tabellen. Weitere Informationen finden Sie unter Bekannte Einschränkungen.

Bei dieser CDC-Methode werden Änderungen an der Quelle mithilfe spezieller Änderungstabellen verfolgt. Transaktionslogs werden weiterhin verwendet, aber in begrenztem Umfang, und Sie müssen sie nicht länger aufbewahren. Beim Anwenden von DML-Ereignissen auf die Quelltabellen werden die Änderungen in die entsprechenden Änderungstabellen repliziert. Die Änderungstabellen haben die gleiche Struktur wie die Quelltabellen, haben aber zusätzliche Spalten, in denen die Metadaten für die Änderungen enthalten sind. Zu den Änderungstabellen werden nur mit Commit durchgeführte Transaktionen zusammen mit der Logsequenznummer (LSN) des Commit-Vorgangs hinzugefügt.

Versionen

Datastream unterstützt die folgenden Versionen und Versionen von SQL Server-Datenbanken:

  • Selbstverwaltet (lokal oder in der Cloud gehostet) mit den folgenden Versionen:
    • Enterprise: 2008 und höher
    • Standard: 2016 SP1 und höher
    • Entwickler: ab 2008
  • Amazon RDS for SQL Server
  • Azure SQL-Datenbank (Stufe S3 und höher).

  • Cloud SQL for SQL Server

Datastream unterstützt die folgenden Versionen von SQL Server-Datenbanken nicht:

  • SQL Server Standard Edition von Version 2008 bis 2014
  • SQL Server Express
  • SQL Server Web

Bekannte Einschränkungen

Zu den bekannten Einschränkungen bei der Verwendung einer SQL Server-Datenbank als Quelle gehören:

  • Streams sind auf 10.000 Tabellen beschränkt.
  • Für eine Tabelle mit mehr als 500 Millionen Zeilen kann kein Backfill ausgeführt werden, es sei denn, die folgenden Bedingungen sind erfüllt:
    1. Die Tabelle hat einen eindeutigen Index.
    2. Keine der Indexspalten kann Nullwerte enthalten.
    3. Alle Spalten des Index sind im Stream enthalten.
  • Datenbanken mit aktivierter verzögerter Langlebigkeit oder aktivierter beschleunigter Datenbankwiederherstellung (Accelerated Database Recovery, ADR) werden nicht unterstützt.
  • Das Streaming von Änderungen an Systemtabellen wird nicht unterstützt.
  • Die Windows Active Directory-Authentifizierung wird nicht unterstützt.
  • Datastream unterstützt nicht die Verbindungsmethode des Weiterleitungs-SSH-Tunnels für SQL Server-Quellen.
  • Die folgenden Datentypen werden nicht unterstützt und nicht in das Ziel repliziert:
    • SQL_VARIANT
    • HIERARCHYID
    • GEOMETRY
    • GEOGRAPHY
  • Datastream repliziert benutzerdefinierte Datentypen. Es ist jedoch der Basisdatentyp, von dem Sie Ihren benutzerdefinierten Typ ableiten, der im Ziel gespeichert ist. Wenn Sie beispielsweise einen USERNAME-Datentyp basierend auf dem Datentyp VARCHAR(50) definieren, werden die Daten im Ziel als VARCHAR(50) gespeichert.
  • Datastream unterstützt CDC nicht für große Objektspalten (TEXT, NTEXT, XML, IMAGE) und Spalten mit maximaler variabler Länge (VARCHAR(MAX), VARBINARY(MAX), NVARCHAR(MAX)) in Tabellen ohne eindeutigen Index.

    Wenn große Objektspalten nicht im Stream enthalten sind, wird CDC unterstützt.

  • Datastream unterstützt keine Datenmaskierung. Die Daten werden ohne Maskierung repliziert.

  • Das Replizieren von Änderungen, die mit dem DACPAC-Paket (Data Tier Application Package) auf die Datenbank angewendet wurden, wird von Datastream nicht unterstützt.

  • Datastream repliziert keine Änderungen, die über die Anweisungen WRITETEXT oder UPDATETEXT vorgenommen wurden.

  • In Datastream wird das Replizieren von berechneten Spalten nicht unterstützt.

  • Datastream unterstützt nicht die Verwendung von vom Kunden verwalteten Verschlüsselungsschlüsseln (CMEK) für Streams mit SQL Server-Quellen.

  • Datastream unterstützt die Komprimierungstypen PAGE, COLUMNSTORE und COLUMNSTORE ARCHIVE nicht.

  • Die Streamwiederherstellung wird für SQL Server-Quellen nicht unterstützt.

Zusätzliche Einschränkungen bei der Verwendung der Methode „Transaktionslogs“

Wenn Sie die CDC-Methode für Transaktionslogs verwenden, gelten die folgenden zusätzlichen Einschränkungen:

  • Transparent Data Encryption (TDE) wird nicht unterstützt.
  • Die Verschlüsselung auf Spaltenebene wird nicht unterstützt. Daten in diesen Spalten werden durch NULL-Werte ersetzt.
  • Die Anweisung ROLLBACK TO SAVEPOINT wird von Datastream nicht unterstützt. Solche Rollback-Ereignisse werden ignoriert und nicht in das Ziel repliziert.
  • Datastream unterstützt CDC nicht für Zeilen mit mehr als 8 KB in den folgenden Tabellentypen:
    • Tabellen ohne eindeutigen Index
    • Tabellen, die nur einen eindeutigen, nicht geclusterten Index mit einer oder mehreren Spalten mit variabler Länge (VARCHAR, VARBINARY, NVARCHAR) enthalten
  • Datastream unterstützt CDC nicht für große Objektspalten (TEXT, NTEXT, XML, IMAGE) in den folgenden Tabellentypen:

    • Tabellen ohne eindeutigen Index
    • Tabellen, die nur einen eindeutigen, nicht geclusterten Index mit einer oder mehreren Spalten mit variabler Länge (VARCHAR, VARBINARY, NVARCHAR) enthalten

    Wenn große Objektspalten nicht im Stream enthalten sind, wird CDC für solche Tabellen nur unterstützt, wenn sie gültige Indexe haben.