Write to DB

Der Schritt Write to DB schreibt die Ausgabe eines Datenflusses in eine Datenbank.

Anmerkung: Es lassen sich erhebliche Leistungsverbesserungen erzielen, wenn mehrere Laufzeitinstanzen von „Write to DB“ verwendet werden. Klicken Sie auf die Schaltfläche Laufzeit, um mehrere Laufzeitinstanzen anzugeben.

Registerkarte „Allgemein“

Name der Option

Beschreibung

Verbindung

Wählen Sie die Verbindung für die Datenbank aus, die Sie verwenden möchten. Klicken Sie auf Verwalten, um eine neue Datenbankverbindung herzustellen. Weitere Informationen zum Erstellen von Datenbankverbindungen finden Sie unter Datenbankverbindungs-Manager.

Relation/Ansicht

Geben Sie nach der Auswahl einer Verbindung die Relation oder Ansicht ein, in der geschrieben werden soll. Klicken Sie auf die Schaltfläche zum Durchsuchen ([...]), um zur gewünschten Relation oder Ansicht zu navigieren, oder klicken Sie auf Tabelle erstellen, um eine neue Relation in der Datenbank zu erstellen.

Anmerkung: Wenn Sie in eine SQL-Datenbank schreiben, können Sie nicht in Ansichten schreiben, die mehr als eine Relation referenzieren. Das liegt an einer Einschränkung von SQL Server.

Relation erstellen

Erstellt eine neue Relation in der ausgewählten Datenbank. Wählen Sie im Feld Relationsbesitzer den Besitzer der Relation aus, und geben Sie im Feld Relationsname den Namen für die neue Relation an. Bei Relationsnamen wird die Groß-/Kleinschreibung beachtet. Geben Sie einen Primärschlüssel an. Aktivieren Sie dazu ein Kästchen in der Spalte Primärschlüssel. Geben Sie außerdem die Felder an, die Sie in die neue Relation schreiben möchten, indem Sie jeweils das zugehörige Kästchen in der Spalte Einschließen aktivieren. Die Spalte Breite gibt die Länge des Feldes für den Datentyp Zeichenfolge an. Der Standardwert ist 512. Falls die Spalte NULL zulassen aktiviert ist und die Eingabefelder einen Nullwert enthalten, schreibt der Datenfluss den Nullwert in die Datenbank. Beachten Sie, dass Sie den Spaltennamen bearbeiten können, indem Sie den Wert in der Spalte „Ausgabefelder“ ändern.

Die Schaltfläche Relation erstellen unterstützt die Relationserstellung in den folgenden Datenbanken:

  • Axion
  • DB2
  • Derby/Cloudscape
  • Firebird
  • HSQLDB
  • Interbase
  • MaxDB/SapDB
  • McKoi
  • MySQL
  • Oracle
  • PostgreSQL
  • SQL Server
  • Sybase
Anmerkung: Für DB2-Datenbanken gilt: Wenn Sie versuchen, eine Relation zu erstellen und die Seitengröße kleiner als die Gesamtlänge aller Zeichenfolgenspalten ist, erhalten Sie die Fehlermeldung „Fehler beim Erstellen von Text aus Inhalt. Serialisierbare Klasse nicht für Broker verfügbar.“

Schrittfelder

In der Spalte „Schrittfelder“ können Sie das Feld angeben, das Sie in das in der Spalte „Datenbankfeld“ angezeigte Datenbankfeld schreiben möchten.

Einschließen

Die Spalte „Einschließen“ ermöglicht Ihnen ebenfalls, die Felder auszuwählen, in die Sie schreiben möchten.

Anmerkung: Um schlechte Leistung zu verhindern, sollte ein sortierter Index oder Schlüssel in der Datenbankrelation vorhanden sein.
Anmerkung: Der Schritt Write to DB schreibt alle Werte des Datentyps date als String-Werte. Dieses Verhalten beruht auf dem von Spectrum verwendeten Standardtreiber, dem jTDS-Treiber. Um alle date-Datentypenwerte unverändert zu verarbeiten, verwenden Sie den JDBC-Treiber von Microsoft.

Datenbankverbindungs-Manager

Der Datenbankverbindungs-Manager ermöglicht Ihnen, registrierte Datenbankverbindungen zu verwalten. So können Sie Verbindungen hinzufügen, ändern, löschen und testen:

  1. Klicken Sie im Dialogfeld „Write to DB“-Optionen auf Verwalten.
  2. Klicken Sie auf Hinzufügen, Ändern oder Löschen.
  3. Wenn Sie eine Datenbankverbindung hinzufügen oder ändern, füllen Sie diese Felder aus:
    • Verbindungsname: Geben Sie den Namen der neuen Verbindung ein.
    • Datenbanktreiber: Wählen Sie den passenden Datenbanktyp aus.
    • Verbindungsoptionen: Geben Sie alle Optionen an, normalerweise Host, Port, Instanz, Benutzername und Kennwort.
    Anmerkung: Sie können die Verbindung per Klick auf Testen testen.
  4. Wenn Sie eine Datenbankverbindung löschen möchten, wählen Sie die gewünschte Verbindung aus und klicken Sie auf „Löschen“.

Registerkarte „Laufzeit“

Name der Option

Beschreibung

Schreibmodus

Gibt den Typ von Aktionen an, die beim Schreiben in die Datenbank ausgeführt werden sollen. Zur Auswahl stehen:

Einfügen
Fügt neue Datensätze in die Datenbank ein, aktualisiert aber keine vorhandenen Datensätze. Dies ist die Standardeinstellung.
Aktualisieren
Aktualisiert vorhandene Datensätze in der Datenbank, fügt aber keine neuen Datensätze ein.
Anmerkung: Wenn Sie Aktualisieren auswählen, muss der Name der Primärschlüsselspalte in der Eingaberelation dem Namen der Primärschlüsselspalte in der Ausgaberelation entsprechen. Wenn Sie versuchen, eine Relation zu aktualisieren, bei der der Name der Primärschlüsselspalte nicht der Eingabe entspricht oder bei der die Primärschlüsselspalte nicht definiert ist, funktioniert die Aktualisierung nicht.
Einfügen, wenn Aktualisieren nicht möglich
Fügt neue Datensätze in die Datenbank ein, wenn der Datensatz nicht vorhanden ist, und aktualisiert andernfalls den vorhandenen Datensatz.

Übergabe als Batch

Wählen Sie diese Option aus, um Änderungen an die Datenbank zu übergeben, nachdem eine angegebene Anzahl von Datensätzen verarbeitet wurde. Standardmäßig ist diese Option nicht ausgewählt, was bedeutet, dass Änderungen sofort übergeben werden, nachdem ein jeder Datensatz verarbeitet wurde. Durch Auswahl dieser Option kann sich die Leistung des „Write to DB“-Schrittes erheblich verbessern.

Batchgröße

Wenn Sie die Option Übergabe als Batch aktivieren, geben Sie damit die Anzahl von Datensätzen an, die in jedem Batch an die Datenbank übergeben werden sollen. Der Standardwert ist 1.000. Bei mit Spectrum™ Technology Platform 7.0 und älter erstellten Datenflüssen ist der Standardwert 100.

Eine größere Batchgröße bietet nicht immer eine bessere Leistung beim Laden. Berücksichtigen Sie die folgenden Faktoren, wenn Sie eine Batchgröße wählen:

  • Dateneingangsrate für Schritt „Write to DB“: Wenn Daten mit einer geringeren Rate eingehen, als die Datenbank verarbeiten kann, erzielen Sie durch Ändern der Batchgröße keine Verbesserung der Datenflussgesamtleistung. So profitieren beispielsweise Datenflüsse mit Adressenüberprüfung oder Geocoding nicht von größeren Batches.
  • Netzwerkverkehr: Bei langsamen Netzwerken bewirkt eine Erhöhung der Batchgröße auf eine mittlere Größe (1.000 bis 10.000) eine bessere Leistung.
  • Lade- und/oder Verarbeitungsgeschwindigkeit der Datenbank: Bei Datenbanken mit hoher Verarbeitungsleistung sorgen größere Batches für bessere Leistung.
  • Mehrere Laufzeitinstanzen: Wenn Sie mehrere Laufzeitinstanzen des Schrittes „Write to DB“ verwenden, verursachen große Batches einen hohen Speicherverbrauch. Verwenden Sie daher eine kleine oder mittlere Batchgröße (100 bis 10.000).
  • Datenbank-Rollbacks: Immer, wenn eine Anweisung fehlschlägt, wird der vollständige Batch rückgängig gemacht. Je größer der Batch, desto länger dauert es, die Rollback-Operation auszuführen.
Am Ende übergeben Wählen Sie diese Option aus, um sicherzustellen, dass die Übergabeoperation für die Datenbank ausgeführt wird, nachdem alle Datensätze an die Datenbank übertragen wurden.
Anzahl zu übergebender Batches Geben Sie einen Wert an, bei dessen Erreichen die Datensätze übergeben werden sollen. Datensätze werden immer dann an die Datenbank übergeben, wenn (Anzahl zu übergebender Batches * Batchgröße) Datensätze an die Datenbank übertragen wurden. Beispiel: Wenn Batchgröße auf 1.000 und Anzahl zu übergebender Batches auf 3 gesetzt ist, erfolgt die Übergabe immer, nachdem 3.000 Datensätze an die Datenbank übertragen wurden.

Relation vor dem Einfügen von Daten abschneiden

Wählen Sie diese Option aus, wenn Sie vor dem Schreiben in die Datenbank alle Daten aus der Relation löschen möchten.

Relation löschen und neu erstellen, wenn sie bereits vorhanden ist

Wählen Sie diese Option aus, um die Relation vor dem Schreiben der Ausgabe des Datenflusses in die Relation zu löschen und erneut zu erstellen. Diese Option ist nützlich, wenn Sie möchten, dass das Schema der Relation mit den Feldern aus dem Datenfluss übereinstimmt und keine fremden Schemadaten enthält.

Die Relation, die gelöscht und erneut erstellt wird, ist die Relation, die im Feld Relation/Ansicht auf der Registerkarte Allgemein angegeben ist. Beispiel: Wenn Sie die Relation „Customers“ im Feld Relation/Ansicht angeben und Relation löschen und neu erstellen, wenn sie bereits vorhanden ist auswählen, wird die Relation „Customers“ aus der Datenbank gelöscht und eine neue Relation namens „Customers“ erstellt – mit einem Schema, das genau den in die Relation geschriebenen Feldern entspricht.