Freigeben über


Konfigurieren von SQL Server in einer Copy-Aktivität

In diesem Artikel wird beschrieben, wie Sie die Copy-Aktivität in einer Datenpipeline verwenden, um Daten aus und in SQL Server zu kopieren.

Unterstützte Konfiguration

Die Konfiguration der einzelnen Registerkarten unter der Kopieraktivität finden Sie in den folgenden Abschnitten.

Allgemein

Informationen zum Konfigurieren der Registerkarte Allgemein finden Sie unter Allgemeine Einstellungen.

Quelle

Die folgenden Eigenschaften werden für SQL Server auf der Registerkarte Quelle einer Copy-Aktivität unterstützt.

Screenshot der Registerkarte „Quelle“ mit der Liste der Eigenschaften.

Die folgenden Eigenschaften sind erforderlich:

  • Datenspeichertyp: Wählen Sie Extern aus.

  • Verbindung: Wählen Sie in der Verbindungsliste eine SQL Server-Verbindung aus. Falls die Verbindung nicht vorhanden ist, erstellen Sie eine neue SQL Server-Verbindung, indem Sie Neu auswählen.

  • Verbindungstyp: Wählen Sie SQL Server aus.

  • Abfrage verwenden: Geben Sie die Methode zum Lesen von Daten an. Sie können Tabelle, Abfrage oder Gespeicherte Prozedur auswählen. In der folgenden Liste wird die Konfiguration der einzelnen Einstellungen beschrieben:

    • Tabelle: Liest Daten aus der angegebenen Tabelle. Wählen Sie in der Dropdownliste Ihre Quelltabelle aus, oder wählen Sie Bearbeiten aus, um sie manuell einzugeben.

    • Abfrage: Geben Sie die benutzerdefinierte SQL-Abfrage zum Lesen der Daten an. z. B. select * from MyTable. Oder wählen Sie das Stiftsymbol aus, das im Code-Editor bearbeitet werden soll.

      Screenshot: Einstellungen für die Abfrage.

    • Gespeicherte Prozedur: Verwenden Sie die gespeicherte Prozedur, die Daten aus der Quelltabelle liest. Die letzte SQL-Anweisung muss eine SELECT-Anweisung in der gespeicherten Prozedur sein.

      • Name der gespeicherten Prozedur: Wählen Sie die gespeicherte Prozedur aus, oder geben Sie den Namen der gespeicherten Prozedur manuell an, wenn Sie Bearbeiten auswählen, um Daten aus der Quelltabelle zu lesen.

      • Parameter für gespeicherte Prozeduren: Geben Sie Werte für die Parameter der gespeicherten Prozedur an. Zulässige Werte sind Namen oder Name-Wert-Paare. Die Namen und die Groß-/Kleinschreibung von Parametern müssen den Namen und der Groß-/Kleinschreibung der Parameter der gespeicherten Prozedur entsprechen. Sie können Parameter importieren auswählen, um die Parameter Ihrer gespeicherten Prozedur abzurufen.

        Screenshot: Einstellungen der gespeicherten Prozedur

Unter Erweitert können Sie die folgenden Felder angeben:

  • Abfragetimeout (Minuten): Geben Sie den Timeout für die Ausführung von Abfragebefehlen an, der Standardwert ist 120 Minuten. Wenn für diese Eigenschaft ein Parameter festgelegt wird, sind Timespan-Werte zulässig, z. B. „02:00:00“ (120 Minuten).

  • Isolationsstufe: Gibt das Sperrverhalten für Transaktionen für die SQL-Quelle an. Zulässige Werte sind: None, ReadCommitted, ReadUncommitted, RepeatableRead, Serializable oder Snapshot. Ohne Angabe wird die Standardisolationsstufe der Datenbank verwendet. Weitere Informationen finden Sie unter IsolationLevel-Enumeration.

    Screenshot: Einstellungen für die Isolationsstufe

  • Partitionsoption: Geben Sie die Datenpartitionierungsoptionen für das Laden von Daten aus SQL Server an. Zulässige Werte sind: Keine (Standard), Physische Partitionen der Tabelle und Dynamischer Bereich. Wenn eine Partitionierungsoption aktiviert ist (d. h. nicht Keine), wird der Parallelitätsgrad für das gleichzeitige Laden von Daten aus SQL Server durch die Einstellung Parallelitätsgrad für Kopiervorgänge auf der Registerkarte mit den Einstellungen der Copy-Aktivität gesteuert.

    • Keine: Wählen Sie diese Einstellung aus, um keine Partition zu verwenden.

    • Physische Partitionen der Tabelle: Wenn Sie eine physische Partition verwenden, werden die Partitionsspalte und der Mechanismus automatisch auf der Grundlage Ihrer physischen Tabellendefinition bestimmt.

    • Dynamischer Bereich: Bei Verwendung der Abfrage mit aktivierter Parallelität wird der Parameter für die Bereichspartition (?DfDynamicRangePartitionCondition) benötigt. Beispielabfrage: SELECT * FROM <TableName> WHERE ?DfDynamicRangePartitionCondition.

      • Partitionsspaltenname: Geben Sie den Namen der Quellspalte als „integer“ oder „date/datetime“ (int, smallint, bigint, date, smalldatetime, datetime, datetime2 oder datetimeoffset) an, der bei der Bereichspartitionierung für das parallele Kopieren verwendet wird. Ohne Angabe wird der Index oder der Primärschlüssel der Tabelle automatisch erkannt und als Partitionsspalte verwendet.

        Wenn Sie die Quelldaten mithilfe einer Abfrage abrufen, integrieren Sie ?DfDynamicRangePartitionCondition in die WHERE-Klausel. Ein Beispiel finden Sie im Abschnitt Paralleles Kopieren aus SQL-Datenbank.

      • Partitionsobergrenze: ‚Geben Sie den maximalen Wert der Partitionsspalte für das Teilen des Partitionsbereichs an. Dieser Wert wird zur Entscheidung über den Partitionssprung verwendet, nicht zum Filtern der Zeilen in der Tabelle. Alle Zeilen in der Tabelle oder im Abfrageergebnis werden partitioniert und kopiert. Wenn nicht angegeben, wird der Wert für die Kopieraktivität automatisch erkannt. Ein Beispiel finden Sie im Abschnitt Paralleles Kopieren aus SQL-Datenbank.

      • Partitionsuntergrenze: Geben Sie den Mindestwert der Partitionsspalte für das Teilen des Partitionsbereichs an. Dieser Wert wird zur Entscheidung über den Partitionssprung verwendet, nicht zum Filtern der Zeilen in der Tabelle. Alle Zeilen in der Tabelle oder im Abfrageergebnis werden partitioniert und kopiert. Wenn nicht angegeben, wird der Wert für die Kopieraktivität automatisch erkannt. Ein Beispiel finden Sie im Abschnitt Paralleles Kopieren aus SQL-Datenbank.

  • Zusätzliche Spalten: Fügen Sie zusätzliche Datenspalten hinzu, um den relativen Pfad oder statischen Wert der Quelldateien zu speichern. Für Letzteres wird ein Ausdruck unterstützt.

Beachten Sie folgende Punkte:

  • Wenn als Quelle Abfrage angegeben ist, führt die Copy-Aktivität diese Abfrage für die SQL Server-Quelle aus, um die Daten abzurufen. Sie können auch eine gespeicherte Prozedur festlegen, indem Sie Name der gespeicherten Prozedur und Parameter der gespeicherten Prozedur angeben, sofern die gespeicherte Prozedur Parameter akzeptiert.
  • Wenn Sie eine gespeicherte Prozedur in der Quelle zum Abrufen von Daten verwenden und Ihre gespeicherte Prozedur so konzipiert ist, dass sie bei der Übergabe eines anderen Parameterwerts ein anderes Schema zurückgibt, kann es beim Importieren eines Schemas über die Benutzeroberfläche oder beim Kopieren von Daten in eine SQL-Datenbank mit automatischer Tabellenerstellung zu einem Fehler oder einem unerwarteten Ergebnis kommen.

Destination

Die folgenden Eigenschaften werden für SQL Server auf der Registerkarte Ziel einer Copy-Aktivität unterstützt.

Screenshot der Registerkarte „Ziel“

Die folgenden Eigenschaften sind erforderlich:

  • Datenspeichertyp: Wählen Sie Extern aus.

  • Verbindung: Wählen Sie in der Verbindungsliste eine SQL Server-Verbindung aus. Falls die Verbindung nicht vorhanden ist, erstellen Sie eine neue SQL Server-Verbindung, indem Sie Neu auswählen.

  • Verbindungstyp: Wählen Sie SQL Server aus.

  • Tabellenoption: Sie können Vorhandene verwenden auswählen, um die angegebene Tabelle zu verwenden. Alternativ können Sie Tabelle automatisch erstellen auswählen, um automatisch eine Zieltabelle zu erstellen, wenn die Tabelle nicht im Quellschema vorhanden ist. Beachten Sie, dass diese Option nicht unterstützt wird, wenn „Gespeicherte Prozedur“ als Schreibverhalten verwendet wird.

    Bei Auswahl von Vorhandene verwenden:

    • Tabelle: Wählen Sie in der Dropdownliste die Tabelle in Ihrer Zieldatenbank aus. Sie können auch Bearbeiten aktivieren, um den Tabellennamen manuell einzugeben.

    Bei Auswahl von Tabelle automatisch erstellen:

    • Tabelle: Geben Sie den Namen für die automatisch erstellte Zieltabelle an.

Unter Erweitert können Sie die folgenden Felder angeben:

  • Schreibverhalten: Legt das Schreibverhalten fest, wenn die Quelle Dateien aus einem dateibasierten Datenspeicher sind. Sie können Einfügen, Upsert oder Gespeicherte Prozedur auswählen.

    • Einfügen: Wählen Sie diese Option aus, um das Schreibverhalten „Einfügen“ zum Laden von Daten in SQL Server zu verwenden.

    • Upsert ausführen: Wählen Sie diese Option aus, um das Schreibverhalten „Upsert ausführen“ zum Laden von Daten in SQL Server zu verwenden.

      • TempDB verwenden: Geben Sie an, ob eine globale temporäre Tabelle oder physische Tabelle als Zwischentabelle für Upserts verwendet werden soll. Standardmäßig verwendet der Dienst eine globale temporäre Tabelle als Zwischentabelle, und diese Eigenschaft ist ausgewählt.

        Screenshot: Auswahl von „TempDB verwenden“

      • Benutzerdatenbankschema auswählen: Wenn TempDB verwenden nicht aktiviert ist, geben Sie das Zwischenschema für das Erstellen einer Zwischentabelle an, sofern eine physische Tabelle verwendet wird.

        Hinweis

        Sie benötigen die Berechtigung zum Erstellen und Löschen von Tabellen. Standardmäßig wird eine Zwischentabelle das gleiche Schema wie eine Zieltabelle haben.

        Screenshot: „TempDB verwenden“ nicht aktivieren

      • Schlüsselspalten: Geben Sie die Spaltennamen für die eindeutige Zeilenidentifikation an. Es kann entweder ein einzelner Schlüssel oder eine Reihe von Schlüsseln verwendet werden. Bei fehlender Angabe wird der Primärschlüssel verwendet.

    • Gespeicherte Prozedur: Verwenden Sie die gespeicherte Prozedur, die definiert, wie Quelldaten in eine Zieltabelle übernommen werden können. Diese gespeicherte Prozedur wird pro Batch aufgerufen. Für Vorgänge, die nur einmal ausgeführt werden und nicht mit Quelldaten in Zusammenhang stehen (etwa Löschen oder Kürzen), verwenden Sie die Eigenschaft Skript vor Kopiervorgang.

      • Name der gespeicherten Prozedur: Wählen Sie die gespeicherte Prozedur aus, oder geben Sie den Namen der gespeicherten Prozedur manuell an, wenn Sie Bearbeiten aktivieren, um Daten aus der Quelltabelle zu lesen.

      • Parameter gespeicherter Prozeduren:

        • Tabellentyp: Geben Sie den Namen des Tabellentyps an, der in der gespeicherten Prozedur verwendet werden soll. Die Kopieraktivität macht die verschobenen Daten in einer temporären Tabelle mit diesem Tabellentyp verfügbar. Der gespeicherte Prozedurcode kann dann die kopierten Daten mit vorhandenen Daten zusammenführen.
        • Tabellentyp-Parametername: Geben Sie den Parameternamen des Tabellentyps an, der in der gespeicherten Prozedur angegeben ist.
        • Parameter: Geben Sie Werte für Parameter der gespeicherten Prozedur an. Zulässige Werte sind Namen oder Name-Wert-Paare. Die Namen und die Groß-/Kleinschreibung von Parametern müssen den Namen und der Groß-/Kleinschreibung der Parameter der gespeicherten Prozedur entsprechen. Sie können Parameter importieren auswählen, um die Parameter Ihrer gespeicherten Prozedur abzurufen.

        Screenshot der Einstellungen für gespeicherte Prozeduren im Zielschreibverhalten.

  • Tabellensperre für Masseneinfügung: Wählen Sie Ja oder Nein (Standardeinstellung) aus. Verwenden Sie diese Einstellung, um die Kopierleistung während eines Masseneinfügevorgangs in eine Tabelle ohne Index von mehreren Clients aus zu verbessern. Sie können diese Eigenschaft angeben, wenn Sie Einfügen oder Upsert ausführen als Schreibverhalten auswählen. Weitere Informationen finden Sie unter BULK INSERT (Transact-SQL).

  • Skript vor Kopiervorgang: Geben Sie ein Skript für die Copy-Aktivität an, das bei jeder Ausführung vor dem Schreiben von Daten in eine Zieltabelle ausgeführt wird. Sie können diese Eigenschaft nutzen, um die vorab geladenen Daten zu bereinigen.

  • Zeitlimit für Batchschreibvorgang: Geben Sie die Wartezeit an, bis der Batch-Einfügevorgang beendet ist, bevor er eine Zeitüberschreitung verursacht. Der zulässige Wert ist ein Timespan-Wert. Wenn kein Wert festgelegt ist, wird für das Timeout der Standardwert „02:00:00“ verwendet.

  • Schreibbatchgröße: Geben Sie die Anzahl der Zeilen an, die pro Batch in die SQL-Tabelle eingefügt werden sollen. Zulässiger Wert: integer (Anzahl der Zeilen) Standardmäßig bestimmt der Dienst die geeignete Batchgröße dynamisch auf der Grundlage der Zeilengröße.

  • Maximale Anzahl gleichzeitiger Verbindungen: Die Obergrenze der gleichzeitigen Verbindungen zum Datenspeicher, die während des Ausführens der Aktivität hergestellt werden. Geben Sie diesen Wert nur an, wenn Sie die Anzahl der gleichzeitigen Verbindungen begrenzen möchten.

Zuordnung

Wenn Sie für die Konfiguration der Registerkarte Zuordnung nicht SQL Server mit sich automatisch erstellender Tabelle als Ziel verwenden, wechseln Sie zu Zuordnung.

Wenn Sie SQL Server mit sich automatisch erstellender Tabelle als Ziel verwenden, können Sie mit Ausnahme der Konfiguration in Zuordnung den Typ für Ihre Zielspalten bearbeiten. Nach dem Auswählen von Importschemas können Sie den Spaltentyp in Ihrem Ziel angeben.

Der Typ für die Spalte ID in der Quelle ist z. B. „int“, und Sie können ihn beim Zuordnen zur Zielspalte in den Typ „Float“ ändern.

Screenshot des Zielspalten-Zuordnungstyps.

Einstellungen

Wechseln Sie für die Konfiguration der Registerkarte Einstellungen zu Konfigurieren der anderen Einstellungen auf der Registerkarte „Einstellungen“.

Paralleles Kopieren aus SQL-Datenbank

Der SQL Server-Connector in der Kopieraktivität verfügt über eine integrierte Datenpartitionierung zum parallelen Kopieren von Daten. Die Datenpartitionierungsoptionen befinden sich auf der Registerkarte Quelle der Kopieraktivität.

Wenn Sie partitioniertes Kopieren aktivieren, führt die Kopieraktivität parallele Abfragen für Ihre SQL Server-Quelle aus, um Daten anhand von Partitionen zu laden. Der Parallelitätsgrad wird über die Einstellung Parallelitätsgrad für Kopiervorgänge auf der Registerkarte mit den Einstellungen der Copy-Aktivität gesteuert. Wenn Sie Parallelitätsgrad für Kopiervorgänge z. B. auf 4 festlegen, generiert der Dienst basierend auf der von Ihnen angegebenen Partitionsoption und Ihren Einstellungen gleichzeitig vier Abfragen und führt sie aus. Dabei ruft jede Abfrage einen Teil der Daten von SQL Server ab.

Es wird empfohlen, das parallele Kopieren mit Datenpartitionierung zu aktivieren. Das gilt insbesondere, wenn Sie große Datenmengen aus Ihrer SQL Server-Instanz laden. Im Anschluss finden Sie empfohlene Konfigurationen für verschiedene Szenarien. Beim Kopieren von Daten in einen dateibasierten Datenspeicher wird empfohlen, mehrere Dateien in einen Ordner zu schreiben (nur den Ordnernamen anzugeben). In diesem Fall ist die Leistung besser als beim Schreiben in eine einzelne Datei.

Szenario Empfohlene Einstellungen
Vollständiges Laden aus einer großen Tabelle mit physischen Partitionen Partitionsoption: Physische Partitionen der Tabelle.

Während der Ausführung erkennt der Dienst automatisch die physischen Partitionen und kopiert Daten nach Partitionen.

Um zu überprüfen, ob Ihre Tabelle eine physische Partition besitzt oder nicht, können Sie auf diese Abfrage verweisen.
Vollständiges Laden aus einer großen Tabelle ohne physische Partitionen, aber mit einer integer- oder datetime-Spalte für die Datenpartitionierung. Partitionsoptionen: Dynamische Bereichspartitionierung
Partitionsspalte (optional): Geben Sie die Spalte für die Datenpartitionierung an. Ohne Angabe wird die Primärschlüsselspalte verwendet.
Obergrenze der Partition und Untergrenze der Partition (optional): Geben Sie an, ob Sie den Partitionssprung bestimmen möchten. Dies dient nicht zum Filtern der Zeilen in der Tabelle; alle Zeilen in der Tabelle werden partitioniert und kopiert. Wenn keine Angabe erfolgt, erkennt die Copy-Aktivität die Werte automatisch und kann je nach MIN- und MAX-Werten lange dauern. Es wird empfohlen, Ober- und Untergrenzen anzugeben.

Wenn Ihre Partitionsspalte "ID" beispielsweise einen Wertebereich von 1 bis 100 hat und Sie die untere Grenze auf 20 und die obere Grenze auf 80 und die Parallelkopie auf 4 setzen, ruft der Dienst Daten nach 4 Partitionen ab - IDs im Bereich <=20, [21, 50], [51, 80] bzw. >=81.
Laden einer großen Datenmenge unter Verwendung einer benutzerdefinierten Abfrage ohne physische Partitionen, aber mit einer integer- oder date/datetime-Spalte für die Datenpartitionierung. Partitionsoptionen: Dynamische Bereichspartitionierung
Abfrage: SELECT * FROM <TableName> WHERE ?DfDynamicRangePartitionCondition AND <your_additional_where_clause>
Partitionsspalte: Geben Sie die Spalte für die Datenpartitionierung an.
Obergrenze der Partition und Untergrenze der Partition (optional): Geben Sie an, ob Sie den Partitionssprung bestimmen möchten. Dies dient nicht zum Filtern der Zeilen in der Tabelle; alle Zeilen im Abfrageergebnis werden partitioniert und kopiert. Wenn nicht angegeben, wird der Wert für die Kopieraktivität automatisch erkannt.

Wenn Ihre Partitionsspalte „ID“ beispielsweise einen Wertebereich von 1 bis 100 hat und Sie die untere Grenze auf 20, die obere Grenze auf 80 und die Parallelkopie auf 4 festlegen, ruft der Dienst Daten nach 4 Partitionen ab – IDs im Bereich <=20, [21, 50], [51, 80] bzw. >=81.

Hier finden Sie weitere Beispiele für verschiedene Szenarien:
• Abfrage der gesamten Tabelle:
SELECT * FROM <TableName> WHERE ?DfDynamicRangePartitionCondition
• Abfrage aus einer Tabelle mit Spaltenauswahl und zusätzlichen Where-Klausel-Filtern:
SELECT <column_list> FROM <TableName> WHERE ?DfDynamicRangePartitionCondition AND <your_additional_where_clause>
• Abfragen mit Unterabfragen:
SELECT <column_list> FROM (<your_sub_query>) AS T WHERE ?DfDynamicRangePartitionCondition AND <your_additional_where_clause>
• Abfrage mit Partition in Unterabfrage:
SELECT <column_list> FROM (SELECT <your_sub_query_column_list> FROM <TableName> WHERE ?DfDynamicRangePartitionCondition) AS T

Bewährte Methoden zum Laden von Daten mit Partitionierungsoption:

  • Wählen Sie eine aussagekräftige Spalte als Partitionsspalte (wie Primärschlüssel oder eindeutiger Schlüssel), um Datenabweichungen zu vermeiden.
  • Wenn die Tabelle eine integrierte Partition aufweist, verwenden Sie die Partitionsoption Physische Partitionen der Tabelle, um eine bessere Leistung zu erzielen.

Beispielabfrage zur Überprüfung der physischen Partition

SELECT DISTINCT s.name AS SchemaName, t.name AS TableName, pf.name AS PartitionFunctionName, c.name AS ColumnName, iif(pf.name is null, 'no', 'yes') AS HasPartition
FROM sys.tables AS t
LEFT JOIN sys.objects AS o ON t.object_id = o.object_id
LEFT JOIN sys.schemas AS s ON o.schema_id = s.schema_id
LEFT JOIN sys.indexes AS i ON t.object_id = i.object_id 
LEFT JOIN sys.index_columns AS ic ON ic.partition_ordinal > 0 AND ic.index_id = i.index_id AND ic.object_id = t.object_id 
LEFT JOIN sys.columns AS c ON c.object_id = ic.object_id AND c.column_id = ic.column_id 
LEFT JOIN sys.partition_schemes ps ON i.data_space_id = ps.data_space_id 
LEFT JOIN sys.partition_functions pf ON pf.function_id = ps.function_id 
WHERE s.name='[your schema]' AND t.name = '[your table name]'

Wenn die Tabelle eine physische Partition besitzt, würde „HasPartition“ wie folgt als „Yes“ (Ja) angezeigt werden.

Screenshot des SQL-Abfrageergebnisses.

Tabellenzusammenfassung

Eine Zusammenfassung und weitere Informationen zur SQL Server-Copy-Aktivität finden Sie in der folgenden Tabelle.

Quellinformationen

Name Beschreibung Wert Erforderlich JSON-Skripteigenschaft
Datenspeichertyp Ihr Datenspeichertyp Extern Ja /
Verbindung Ihre Verbindung mit dem Quelldatenspeicher < Ihre Verbindung > Ja Verbindung
Verbindungstyp Ihr Verbindungstyp. Wählen Sie SQL Server aus. SQL Server Ja /
Verwendungsabfrage Die benutzerdefinierte SQL-Abfrage zum Lesen von Daten. • Tabelle
• Abfrage
• Gespeicherte Prozedur
Nein /
Tabelle Ihre Quelldatentabelle. <Name Ihrer Tabelle> Nein schema
table
Abfrage Die benutzerdefinierte SQL-Abfrage zum Lesen von Daten. <Abfrage> Nein sqlReaderQuery
Name der gespeicherten Prozedur Diese Eigenschaft ist der Name der gespeicherten Prozedur, die Daten aus der Quelltabelle liest. Die letzte SQL-Anweisung muss eine SELECT-Anweisung in der gespeicherten Prozedur sein. <Name der gespeicherten Prozedur> Nein sqlReaderStoredProcedureName
Parameter der gespeicherten Prozedur Diese Parameter werden für die gespeicherte Prozedur verwendet. Zulässige Werte sind Namen oder Name-Wert-Paare. Die Namen und die Groß-/Kleinschreibung von Parametern müssen den Namen und der Groß-/Kleinschreibung der Parameter der gespeicherten Prozedur entsprechen. <Name- oder Wert-Paare> Nein storedProcedureParameters
Abfragetimeout Das Timeout für die Ausführung des Abfragebefehls. Zeitraum
(Die Standardeinstellung ist 120 Minuten.)
Nein queryTimeout
Isolationsstufe Gibt das Sperrverhalten für Transaktionen für die SQL-Quelle an. • Lesen zugesichert
• Lesen nicht zugesichert
• Wiederholbarer Lesevorgang
• Serializable
• Snapshot
Nein isolationLevel:
• ReadCommitted
• ReadUncommitted
• RepeatableRead
• Serializable
• Snapshot
Partitionsoption Die Datenpartitionierungsoptionen, die zum Laden von Daten aus SQL Server verwendet werden. • Keine (Standard)
• Physische Partitionen der Tabelle
• Dynamischer Bereich
Nein partitionOption:
• Keine (Standard)
• PhysicalPartitionsOfTable
• DynamicRange
Partitionsspaltenname Der Name der Quellspalte mit dem Typ „integer“ oder „date/datetime“ (int, smallint, bigint, date, smalldatetime, datetime, datetime2 oder datetimeoffset), der von der Bereichspartitionierung für das parallele Kopieren verwendet wird. Ohne Angabe wird der Index oder der Primärschlüssel der Tabelle automatisch erkannt und als Partitionsspalte verwendet. Wenn Sie die Quelldaten mithilfe einer Abfrage abrufen, integrieren Sie ?DfDynamicRangePartitionCondition in die WHERE-Klausel. <Namen Ihrer Partitionsspalten> Nein partitionColumnName
Partitionsobergrenze Der maximale Wert der Partitionsspalte für das Teilen des Partitionsbereichs. Dieser Wert wird zur Entscheidung über den Partitionssprung verwendet, nicht zum Filtern der Zeilen in der Tabelle. Alle Zeilen in der Tabelle oder im Abfrageergebnis werden partitioniert und kopiert. Wenn nicht angegeben, wird der Wert für die Kopieraktivität automatisch erkannt. <Ihre Partitionsobergrenze> Nein partitionUpperBound
Partitionsuntergrenze Der minimale Wert der Partitionsspalte für das Teilen des Partitionsbereichs. Dieser Wert wird zur Entscheidung über den Partitionssprung verwendet, nicht zum Filtern der Zeilen in der Tabelle. Alle Zeilen in der Tabelle oder im Abfrageergebnis werden partitioniert und kopiert. Wenn nicht angegeben, wird der Wert für die Kopieraktivität automatisch erkannt. <Ihre Partitionsuntergrenze> Nein partitionLowerBound
Zusätzliche Spalten Fügen Sie zusätzliche Datenspalten hinzu, um den relativen Pfad oder statischen Wert der Quelldateien zu speichern. Für Letzteres wird ein Ausdruck unterstützt. • Name
• Wert
Nein additionalColumns:
• Name
• Wert

Zielinformationen

Name Beschreibung Wert Erforderlich JSON-Skripteigenschaft
Datenspeichertyp Ihr Datenspeichertyp Extern Ja /
Verbindung Ihre Verbindung mit dem Zieldatenspeicher. < Ihre Verbindung > Ja Verbindung
Verbindungstyp Ihr Verbindungstyp. Wählen Sie SQL Server aus. SQL Server Ja /
Tabellenoption Gibt an, ob die Zieltabelle automatisch erstellt werden soll, wenn sie im Quellschema nicht vorhanden ist. • Vorhandene verwenden
• Tabelle automatisch erstellen
Nein tableOption:

• autoCreate
Tabelle Ihre Zieldatentabelle. <Name Ihrer Tabelle> Ja schema
table
Verhalten bei Schreibvorgang Das Schreibverhalten für die Copy-Aktivität zum Laden von Daten in SQL Server-Datenbank. • Einfügen
• Upsert
• Gespeicherte Prozedur
Nein writeBehavior:
• Einfügen
• Upsert
sqlWriterStoredProcedureName, sqlWriterTableType, storedProcedureTableTypeParameterName, storedProcedureParameters
TempDB verwenden Gibt an, ob eine globale temporäre Tabelle oder physische Tabelle als Zwischentabelle für Upserts verwendet werden soll. Aktiviert (Standardwert) oder deaktiviert Nein useTempDB:
TRUE (Standardwert) oder FALSE
Benutzerdatenbankschema auswählen Das Zwischenschema zum Erstellen einer Zwischentabelle, wenn eine physische Tabelle verwendet wird. Hinweis: Benutzer müssen über die Berechtigung zum Erstellen und Löschen einer Tabelle verfügen. Standardmäßig nutzt eine Zwischentabelle das gleiche Schema wie eine Zieltabelle. Wenden Sie diese Einstellung an, wenn Sie nicht TempDB verwenden auswählen. Aktiviert (Standardwert) oder deaktiviert Nein interimSchemaName
Schlüsselspalten Die Spaltennamen für die eindeutige Zeilenidentifikation. Es kann entweder ein einzelner Schlüssel oder eine Reihe von Schlüsseln verwendet werden. Bei fehlender Angabe wird der Primärschlüssel verwendet. <Ihre Schlüsselspalte> Nein keys
Name der gespeicherten Prozedur Der Name der gespeicherten Prozedur, die definiert, wie Quelldaten auf eine Zieltabelle angewandt werden. Diese gespeicherte Prozedur wird pro Batch aufgerufen. Für Vorgänge, die nur einmal ausgeführt werden und nicht mit Quelldaten in Zusammenhang stehen (etwa Löschen oder Kürzen), verwenden Sie die Eigenschaft Skript vor Kopiervorgang. <Name Ihrer gespeicherten Prozedur> Nein sqlWriterStoredProcedureName
Tabellentyp Der Tabellentypname, der in der gespeicherten Prozedur verwendet werden soll. Die Kopieraktivität macht die verschobenen Daten in einer temporären Tabelle mit diesem Tabellentyp verfügbar. Der gespeicherte Prozedurcode kann dann die kopierten Daten mit vorhandenen Daten zusammenführen. <Name Ihres Tabellentyps> Nein sqlWriterTableType
Name des Parameters für den Tabellentyp Der Parametername des Tabellentyps, der in der gespeicherten Prozedur angegeben ist. <Ihr Parametername für den Tabellentyp> Nein storedProcedureTableTypeParameterName
Parameter Parameter für die gespeicherte Prozedur. Zulässige Werte: Name-Wert-Paare. Die Namen und die Groß-/Kleinschreibung von Parametern müssen denen der Parameter der gespeicherten Prozedur entsprechen. <Name-Wert-Paare> Nein storedProcedureParameters
Tabellensperre für Masseneinfügung Verwenden Sie diese Einstellung, um die Kopierleistung während eines Masseneinfügevorgangs in eine Tabelle ohne Index von mehreren Clients aus zu verbessern. „Ja“ oder „Nein“ (Standard) Nein sqlWriterUseTableLock:
TRUE oder FALSE (Standardwert)
Skript vor Kopiervorgang Ein Skript für die Copy-Aktivität, das bei jeder Ausführung vor dem Schreiben von Daten in eine Zieltabelle ausgeführt werden soll. Sie können diese Eigenschaft nutzen, um die vorab geladenen Daten zu bereinigen. <Skript vor Kopiervorgang>
(Zeichenfolge)
Nein preCopyScript
Zeitlimit für Batchschreibvorgang Wartezeit für den Abschluss der Batcheinfügung, bis das Timeout wirksam wird. Zeitraum
(Der Standardwert ist „02:00:00“.)
Nein writeBatchTimeout
Schreibbatchgröße Die Anzahl der Zeilen, die pro Batch in die SQL-Tabelle eingefügt werden sollen. Standardmäßig bestimmt der Dienst die geeignete Batchgröße dynamisch auf der Grundlage der Zeilengröße. < Anzahl von Zeilen >
(Integer)
Nein writeBatchSize
Maximal zulässige Anzahl paralleler Verbindungen Die Obergrenze gleichzeitiger Verbindungen mit dem Datenspeicher während der Aktivitätsausführung. Geben Sie diesen Wert nur an, wenn Sie die Anzahl der gleichzeitigen Verbindungen begrenzen möchten. < Obergrenze für gleichzeitige Verbindungen >
(Integer)
Nein maxConcurrentConnections