Allgemeine Informationen zu Openflow Connector for SQL Server

Bemerkung

This connector is subject to the Snowflake Connector Terms.

This topic describes the basic concepts, workflow, and limitations of the Openflow Connector for SQL Server.

Use the Openflow Connector for SQL Server to connect multiple SQL Server databases in a single SQL Server instance to a Snowflake database and replicate data in near real-time or on a specified schedule.

The connector performs CDC replication of Microsoft SQL Server data with Snowflake for comprehensive, centralized reporting.

Workflow

Der folgende Workflow beschreibt die Schritte zur Einrichtung und Ausführung des Openflow Connector for SQL Server:

  1. Ein SQL-Server Datenbankadministrator führt die folgenden Aufgaben aus:

    1. Configures SQL Server replication settings and enables change tracking on the databases and tables being replicated.

    2. Erzeugt Anmeldeinformationen für den Konnektor.

    3. (Optional) Provides the SSL certificate to connect to the SQL Server instance over SSL.

  2. Ein Snowflake-Kontoadministrator führt folgende Aufgaben aus:

    1. Erstellt einen Servicebenutzer für den Konnektor, eine Zieldatenbank zum Speichern replizierter Daten und ein Warehouse für den Konnektor.

    2. Installiert den Konnektor.

    3. Gibt die erforderlichen Parameter für die Definition des Konnektorablaufs an.

    4. Führt den Flow aus.

The connector does the following when run in Openflow:

  1. Erstellt die Schemas und Zieltabellen, die mit den für die Replikation konfigurierten Quelltabellen übereinstimmen.

  2. Begins replication according to the table replication lifecycle.

    Weitere Informationen dazu finden Sie unter Replizieren von Tabellen.

Replizieren von Daten aus Tabellen in mehreren SQL-Serverdatenbanken

Der Konnektor unterstützt das Replizieren von Tabellen aus mehreren SQL-Serverdatenbanken in einer einzigen SQL-Serverinstanz. Der Konnektor erstellt replizierte Tabellen aus verschiedenen Datenbanken in separaten Schemas innerhalb der Snowflake-Zieldatenbank.

Referenziert replizierte Tabellen, indem der Name der Quelldatenbank, der Name des Quellschemas und der Tabellennamen im folgenden Format kombiniert werden:

<database_name>.<schema_name>.<table_name>

Für jedes Schema in jeder zu replizierenden Quelldatenbank erstellt der Konnektor ein separates Schema in der Snowflake-Zieldatenbank. Der Name des Zielschemas ist eine Kombination aus dem Namen der Quelldatenbank und dem Namen des Quellschemas, getrennt durch einen Unterstrich (_), wie im folgenden Beispiel gezeigt:

<source_database_name>_<source_schema_name>

Der Konnektor erstellt im Zielschema Tabellen mit demselben Namen wie der Name der Quelltabelle, wie im folgenden Beispiel gezeigt:

<destination_database>_<destination_schema_name>.<source_table_name>

Replizieren von Tabellen

The connector replicates tables in the following stages:

  1. Schema introspection: The connector discovers the columns in the source table, including the column names and types, then validates them against Snowflake’s and the connector’s limitations. Validation failures cause this stage to fail, and the cycle completes. After successful completion of this stage, the connector creates an empty destination table.

  2. Snapshot load: The connector copies all data available in the source table into the destination table. If this stage fails, the connector stops replicating data. After successful completion, the data from the source table is available in the destination table.

  3. Inkrementelles Laden: Der Konnektor verfolgt Änderungen in der Quelltabelle und wendet diese Änderungen auf die Zieltabelle an. Dieser Vorgang wird fortgesetzt, bis die Tabelle aus der Replikation entfernt wird. Bei einem Fehler in diesem Schritt wird die Replikation der Quelltabelle dauerhaft gestoppt, bis das Problem behoben ist.

    Informationen zum Umgehen des Snapshot-Ladens und zur Verwendung des inkrementellen Ladeprozesses finden Sie unter Inkrementelle Replikation.

Bemerkung

Interim failures, such as connection errors, do not prevent table replication. However, permanent failures, such as unsupported data types, prevent table replication. If a permanent failure prevents table replication, remove the table from the list of tables to be replicated. After you address the problem that caused the failure, you can add the table back to the list of tables to be replicated.

Unterstützte SQL-Server-Versionen

In der folgenden Tabelle finden Sie die getesteten und offiziell unterstützten SQL-Server-Versionen:

Plattform

Dienst/Version

Edition/Stufe

Unterstützt

Lokal

Microsoft SQL Server 2022

Developer, Enterprise, Standard

✔ unterstützt

Microsoft SQL Server 2019

Developer, Enterprise, Standard

✔ unterstützt

Microsoft SQL Server 2017

Developer, Enterprise, Standard

✔ unterstützt

Microsoft SQL Server 2016

Developer, Enterprise, Standard

✔ unterstützt

Microsoft SQL Server 2014

Alle

Nicht getestet

Microsoft SQL Server 2012

Alle

Nicht getestet

Azure

Azure SQL-Datenbank

Alle Instanztypen

Not yet supported

Azure SQL Verwaltete Instanz

Alle Instanztypen

✔ unterstützt

SQL-Server auf Azure-VM

Alle

Nicht getestet

AWS

AWS RDS für SQL-Server

Alle Instanztypen

✔ unterstützt

SQL-Server für Amazon EC2

Alle

✔ unterstützt

Google Cloud

Google Cloud SQL für SQL Server

Alle

Nicht getestet

Openflow-Anforderungen

  • Die Laufzeitgröße muss mindestens „Medium“ sein. Verwenden Sie eine größere Laufzeit, wenn Sie große Datenmengen replizieren, insbesondere wenn die Zeilen groß sind.

  • Der Konnektor unterstützt keine Openflow-Laufzeitumgebungen mit mehreren Knoten. Konfigurieren Sie die Laufzeit für diesen Konnektor, indem Sie Min nodes und Max nodes auf 1 setzen.

Einschränkungen

  • Sie können nicht mehrere Konnektoren desselben Typs in einer einzigen Laufzeitinstanz ausführen.

  • Der Konnektor unterstützt nur die Authentifizierung mit Benutzernamen und Kennwort über SQL-Server.

  • Der Konnektor repliziert nur Tabellen mit Datentypen, die von Snowflake unterstützt werden. Eine Liste dieser Datentypen finden Sie unter Zusammenfassung der Datentypen.

  • The connector only replicates database tables that contain primary keys.

  • The connector does not update existing records in the Snowflake database when a new NOT NULL column with a default value is added to one of the source databases.

  • Der Konnektor aktualisiert keine bestehenden Datensätze in der Snowflake-Datenbank, wenn eine neue Spalte zur Liste der einbezogenen Spalten Column Filter JSON hinzugefügt wird.

  • After you delete a column in one of the source databases and add it back with the same name, additional deletes cause errors.

  • After you include a column in Column Filter JSON and exclude it, additional include attempts cause errors.

  • The connector supports source table schema changes, except for changing primary key definitions, changing the precision, or the scale of a numeric column.

  • Der Konnektor unterstützt die Operation „Tabelle kürzen“ nicht.

  • The connector does not support re-adding a column after it is dropped.

Bemerkung

You can bypass limitations affecting certain table columns by excluding these specific columns from replication.

Nächste Schritte

Einrichten von Openflow Connector for SQL Server