Zum Inhalt springen

Schlüsselkonzepte für Transformationen im Jitterbit Integration Studio

Diese Seite erklärt die Kernkonzepte, die Sie verstehen sollten, wenn Sie Transformationen entwerfen und Probleme beheben.

Schemata

Ein Schema definiert die Struktur und Datentypen Ihrer Eingabe- oder Ausgabedaten. Schemata geben an, welche Felder verfügbar sind, ihre Datentypen und wie die Felder organisiert sind:

Teile einer Transformation

Quellschemata

Das Quellschema beschreibt die Struktur der Daten, die in Ihre Transformation eingehen. Quellschemata können aus diesen Quellen stammen:

  • Aktivitätsgenerierte Schemata: Automatisch erstellt durch Connector-Aktivitäten wie Datenbankabfragen oder API-Aufrufe.

  • Benutzerdefinierte Schemata: Benutzerdefinierte Schemata, die Sie erstellen oder hochladen.

Quellschemata sind optional. Sie benötigen kein Quellschema, wenn Sie nur Variablen, benutzerdefinierte Werte oder skriptbasierte Logik in Ihren Zuordnungen verwenden.

Für weitere Informationen siehe Wählen Sie Schemasourcen.

Zielschemata

Das Zielschema beschreibt die Struktur der Daten, die Ihre Transformation verlassen. Wie Quellschemata können Zielschemata aktivitätsgeneriert oder benutzerdefiniert sein.

Zielschemata sind immer erforderlich. Jede Transformation muss ein Zielschema haben, das die Ausgabestruktur definiert.

Für detaillierte Anleitungen zum Erstellen und Konfigurieren von Schemata siehe Erstellen Sie eine Transformation und konfigurieren Sie Schemata.

Datenstrukturen

Datenstrukturen definieren, wie Informationen innerhalb von Schemata organisiert sind.

Flache Strukturen

Flache Strukturen enthalten Felder auf einer einzigen Ebene ohne Verschachtelung. Beispiele sind diese Formate:

  • CSV-Dateien mit Spalten
  • Einzelne Datenbanktabellen
  • Einfache XML-Dateien ohne verschachtelte Elemente

Beispiel

<customer>
    <id>10123</id>
    <fullname>ABC Co.</fullname>
    <street>1 Main St.</street>
    <city>Anytown</city>
    <state>NY</state>
    <zip>12345</zip>
</customer>

Hierarchische Strukturen

Hierarchische Strukturen enthalten verschachtelte Beziehungen zwischen Feldern und Datensätzen. Beispiele sind diese Formate:

  • Komplexe XML-Dateien mit verschachtelten Elementen
  • JSON-Objekte mit verschachtelten Eigenschaften
  • Datenbankverknüpfungen über mehrere Tabellen

Example

<customer>
    <id>10123</id>
    <name>ABC Co.</name>
    <addresses>
        <address>
            <street>1 Main St.</street>
            <city>Anytown</city>
            <state>NY</state>
            <zip>12345</zip>
        </address>
        <address>
            <street>1 Time Square</street>
            <city>New York City</city>
            <state>NY</state>
            <zip>54321</zip>
        </address>
    </addresses>
</customer>

Für weitere Informationen zur Arbeit mit Datenstrukturen siehe Daten abbilden.

Für komplexe hierarchische Datenszenarien siehe Mit hierarchischen Daten arbeiten.

Knoten und Felder

Schemas werden als Baumstrukturen angezeigt, die Knoten und Felder enthalten. Knoten sind Container, die Felder in hierarchischen Strukturen organisieren. Felder enthalten die tatsächlichen Datenwerte.

Jeder Knoten und jedes Feld zeigt diese visuellen Indikatoren:

visuals

  • Kardinalitäts-Schlüssel: Zeigt Auftretensregeln in Klammern an.
  • Name: Der Elementbezeichner aus dem Schema
  • Datentyp: Nur für Felder (String, Integer, Boolean usw.)
  • Attribut-/Wert-Indikatoren: Einige XML- oder JSON-Strukturen enthalten zusätzliche Symbole:

    Symbol Bedeutung Beispiel
    @ XML/JSON-Attribut @image für Attributdaten
    # XML/JSON-Wert # für den Textinhalt des Elements

Knoten

Knoten sind Container, die Felder in hierarchischen Strukturen organisieren:

  • Offenlegungsdreiecke: Erweitern und reduzieren Knoten.
  • Fette Namen: Zeigen Knoten an, die Zuordnungen enthalten, wenn sie reduziert sind.
  • Standarderweiterung: 8 Ebenen tief für Schemata mit weniger als 750 Knoten, 5 Ebenen tief für größere Schemata.

Sie können Daten nicht direkt auf Knoten abbilden. Stattdessen bilden Sie Daten auf die Felder ab, die Knoten enthalten.

Felder

Felder halten die tatsächlichen Datenwerte und haben diese Eigenschaften:

  • Name: Der Bezeichner des Feldes.
  • Datentyp: Der Datentyp, wie String, Integer, Boolean, Datum und andere.
  • Format: Optionale Formatierung für Daten oder Währungen.
  • Standardwerte: Wenn ein XSD- oder WSDL-Schema einen Standardwert für ein Element oder Attribut angibt, erscheint der Wert neben dem Feldnamen in der Transformationsoberfläche:

    Standardwert

Kardinalitätsnotation

Kardinalitätsschlüssel geben die Auftretensregeln mit UML-ähnlicher Notation an:

Kardinalitätsschlüssel Definition
[1] Genau ein Element (erforderlich)
[1+] Eins oder mehrere Elemente (erforderlich, wiederholbar)
[0,1] Null oder ein Element (optional)
[0+] Null oder mehr Elemente (optional, wiederholbar)

Zuordnungen

Eine Zuordnung verbindet Quelldaten mit Ziel-Feldern und definiert, wie Daten transformiert werden sollen.

Arten von Zuordnungen

Zuordnungsskripte

Alle Zuordnungen werden als Skripte auf Ziel-Feldern implementiert. Selbst visuelle Zuordnungen wie Drag-and-Drop erstellen zugrunde liegende Skripte. Sie können diese Skripte direkt für komplexe Transformationen bearbeiten.

Für die automatische Zuordnung ähnlicher Strukturen siehe Identische Strukturen zuordnen.

Schleifen-Knoten

Schleifen-Knoten verarbeiten wiederholende Daten, wie mehrere Datensätze oder Arrays. Wenn Sie Felder innerhalb von Schleifen-Knoten zuordnen, verarbeitet die Transformation jede Iteration der Daten.

Automatische Schleifenerzeugung

Schleifenknoten werden automatisch generiert, wenn Sie Felder aus sich wiederholenden Quelldaten auf sich wiederholende Zielstrukturen abbilden. Eine Iteratorzeile erscheint, die zeigt, wie die Transformation durch die Daten schleifen wird.

Manuelle Schleifendefinition

Sie können Schleifenknoten manuell definieren, wenn die automatische Generierung nicht Ihren Anforderungen an die Datenverarbeitung entspricht. Dies ist nützlich, wenn Sie mehrere Ebenen von sich wiederholenden Daten haben und steuern müssen, welche Ebene die Iteration antreibt.

Für umfassende Anleitungen zur Arbeit mit sich wiederholenden Daten siehe Daten-Schleifen steuern.

Variablen

Variablen sind dafür konzipiert, Werte, Konfigurationseinstellungen und kleine Datenmengen zwischen verschiedenen Komponenten Ihrer Integration zu übergeben. Variablen sind nützlich, wenn Sie Informationen wie Sitzungs-IDs, Konfigurationsparameter oder berechnete Werte über Skripte, Transformationen und Operationen hinweg teilen müssen. Diese Variablentypen stehen zur Verfügung:

Typ Geltungsbereich Am besten geeignet für
[Lokal] Einzelnes Skript Berechnungen und temporäre Werte
Global Operationskette Daten zwischen Operationen übergeben
[Projekt] Gesamtes Projekt Konfiguration und Anmeldeinformationen
Jitterbit Systemdefiniert Laufzeitinformationen

Für Beispiele und detaillierte Informationen zu jedem Variablentyp siehe die jeweiligen Dokumentationsseiten.

Für praktische Beispiele zur Verwendung von Variablen in Transformationen siehe Variablen abbilden.

Referenzpfadnotation

Referenzpfade geben den Standort von Quellobjekten innerhalb der Datenstruktur an. Die folgenden Pfade werden automatisch generiert, wenn Sie Quellfelder auf Ziele abbilden.

  • Knotenpfade: In eckige Klammern eingeschlossen [nodeN]

  • Feldpfade: Keine Klammern, nur der Feldname

  • Schleifenindikatoren: Punkt (.) nach Schleifenknotennamen

  • Arrayzugriff: Raute (#) für Arrayelemente

Zur Referenz verwendet die Syntax für den Pfad des Objekts diese Symbole:

Kategorie Symbol Bedeutung
Pfade [ ] Eckige Klammern werden verwendet, um einen Knotepfad einzuschließen.
Ein Pfad ohne eckige Klammern ist ein Wert- oder Attributfeld.
Trennzeichen . Ein Punkt, der einem Knotennamen folgt, zeigt an, dass es sich um einen Schleifenknoten handelt.
$ Ein Dollarzeichen, das einem Knotennamen folgt, wird verwendet, um ein Einmalig oder [E] Element anzuzeigen. Dieser Knoten kann kein Schleifenknoten sein.
Schleifenknoten #. Ein Raute-Punkt, der einem Knotennamen folgt, zeigt an, dass ein Array für die Wertfelder des Datensatzes zurückgegeben wird. Diese Notation kann nur bei Schleifenknotennamen verwendet werden.
#<n>. Eine Raute, gefolgt von einer Ganzzahl, gibt das eins-basierte Indexelement eines Arrays zurück.
Komplexe CSV-Strukturen _ Ein Unterstrich, der Root vorangestellt ist, wird verwendet, um auf die Wurzel in einer komplexen CSV zu verweisen. Dies ist bei anderen Datenstrukturen nicht vorhanden. Ein Unterstrich kann auch einfach ein bereits vorhandener Unterstrich in einem Knoten- oder Feldnamen sein.

Als Beispiel enthält die folgende Tabelle Beispielpfade für eine komplexe CSV-Datenstruktur. Die Pfade für andere Strukturen folgen demselben Format, es sei denn, _Root ist für andere Datenstrukturen nicht vorhanden.

Knotenpfade werden mit einem blauen Hintergrund angezeigt, während der Rest Feldpfade sind. Eine Quelle kann einem Attribut- oder Wertefeld eines Ziels zugeordnet werden. Obwohl Zielknoten Bedingungen unterliegen können, können Quellen nicht darauf abgebildet werden. Quellknoten- und Feldpfade können in Zielknotenbedingungen und Ziel-Feldzuordnungen verwendet werden.

Datenstruktur
Qualifizierter Pfad Bedeutung
_Root (Einmalig) [_Root$] Das _Root in einer CSV-Datenstruktur ist immer ein Knoten und erscheint daher in eckigen Klammern [ ]. Das abschließende Dollarzeichen zeigt ein Einmalig-Element an.
    Header (Einmalig) [E] [_Root$Header$] Unterknoten verwenden die Referenz auf alle vorhergehenden Knoten, gefolgt vom Knotennamen. Das abschließende Dollarzeichen zeigt ein Einmalig- oder [E]-Element an.
        Wert [V] _Root$Header$Value Ein Wertefeld ist nicht in eckige Klammern eingeschlossen, verwendet jedoch weiterhin die Referenz auf alle vorhergehenden Knoten, gefolgt vom Wertnamen.
    Detail (Eins oder Mehr) [_Root$Header$Detail.] Unterknoten verwenden die Referenz auf alle vorhergehenden Knoten, gefolgt vom Knotennamen. Der abschließende Punkt zeigt einen Schleifenknoten an.
        Attribut [A] _Root$Header$Detail.Attribute Ein Attributfeld ist nicht in eckige Klammern eingeschlossen, verwendet jedoch weiterhin die Referenz auf alle vorhergehenden Knoten, gefolgt vom Attributnamen.
        Wert [V] _Root$Header$Detail#.Value Ein Wertefeld ist nicht in eckige Klammern eingeschlossen, verwendet jedoch weiterhin die Referenz auf alle vorhergehenden Knoten, gefolgt vom Wertnamen. Dieses spezifische Beispiel zeigt ein Hash-Zeichen vor dem Punkt des Schleifenknotens, was darauf hinweist, dass ein Array der "Detail"-Wertdatensätze zurückgegeben wird.
        Wert [V] _Root$Header$Detail#1.Value Ein Wertefeld ist nicht in eckige Klammern eingeschlossen, verwendet jedoch weiterhin die Referenz auf alle vorhergehenden Knoten, gefolgt vom Wertnamen. Dieses spezifische Beispiel zeigt ein indiziertes Hash-Zeichen vor dem Punkt des Schleifenknotens, was darauf hinweist, dass das erste Element eines Arrays der "Detail"-Wertdatensätze zurückgegeben wird.

Datenfluss

Daten fließen durch Transformationen in dieser Reihenfolge:

  1. Eingabe: Eine Quellaktivität liefert Daten, die dem Quellschema entsprechen.

  2. Verarbeitung: Eine Transformation wendet Zuordnungen, Funktionen und Geschäftslogik an.

  3. Ausgabe: Die transformierten Daten, die dem Zielschema entsprechen, gehen an die Zielaktivität.

Das Verständnis dieses Flusses hilft Ihnen, Zuordnungen zu entwerfen, die Daten korrekt verarbeiten, und Probleme zu beheben, wenn Daten nicht wie erwartet transformiert werden.

Für Anleitungen zur Validierung und Fehlersuche siehe Testen und Validieren von Transformationen und Lösen von Konflikten und Fehlern bei der Transformationszuordnung.