Debugger in Informatica: Sitzung, Haltepunkt, ausführliche Daten und Zuordnung
Wie wir in früheren Themen besprochen haben, ist ein Mapping eine Sammlung von Quell- und Zielobjekten, die durch eine Reihe von Transformationen miteinander verbunden sind. Diese Transformationen bestehen aus einer Reihe von Regeln, die den Datenfluss und die Art und Weise definieren, wie die Daten in die Ziele geladen werden.
Was ist Debugger?
Debugger ist ein sehr praktisches Dienstprogramm in Informatica. Wenn wir das Mapping ausführen, führt Informatica das Mapping basierend auf der definierten Transformationslogik aus.
Seine Ausführung ähnelt der Ausführung im Batch-Modus, bei dem wir die Zwischenergebnisse nicht sehen können oder wie die Daten von Transformation zu Transformation geändert werden.
Oftmals erhalten wir im Ziel Daten, die nicht unseren Erwartungen entsprechen. Mit Hilfe des Debuggers können wir kann analysieren, wie sich die Daten innerhalb der Kartierung bewegen. Wir können die Daten Zeile für Zeile in einem Debugger analysieren.
Für die Verwendung des Debuggers ist eine Sitzungsinstanz erforderlich. Wir können entweder eine vorhandene Sitzung, die zuvor erstellt wurde, wiederverwenden, um das Mapping auszuführen, oder wir können eine neue Debug-Sitzungsinstanz erstellen. Da beim Debuggen die Daten von der Quelle abgerufen werden, haben wir die Möglichkeit, zu entscheiden, was mit diesen Daten geschehen soll.
- Entweder können wir die Daten verwerfen oder
- Die Daten können in das Ziel geladen werden
Diese Optionen können während der Konfiguration des Debuggers festgelegt werden.
Zur Überwachung des Debuggers gibt es im Informatica Designer zwei Fenster
- Target Fenster
- Instanzfenster
Im Zielfenster wird der Zieldatensatz angezeigt, der in die Zieltabelle eingefügt werden soll. Im Instanzfenster können Sie eine beliebige Transformationsinstanz des Mappings auswählen. Danach sind alle Ports dieser Transformation in diesem Fenster sichtbar und Sie können die Daten analysieren und prüfen, wie sie transformiert werden.
Schritte zur Verwendung des Debuggers in einem Mapping
Informatica Designer bietet die Funktion, den Debugger zum Debuggen von Zuordnungen zu verwenden. Das bedeutet, dass wir jedes vorhandene Mapping debuggen und analysieren können. Die Anforderung an den Debugger besteht darin, dass es sich bei der Zuordnung um eine gültige Zuordnung handelt.
In der Übung debuggen wir unser vorhandenes Mapping „m_emp_emp_target“, das wir zuvor erstellt haben. In unseren Quelldaten suchen wir nach einem bestimmten Datensatz mit Mitarbeitername = „SCOTT“. Für Scott überprüfen wir, ob die Werte in Informatica abgerufen werden und ob der Datensatz korrekt an das Ziel übertragen wird oder nicht.
Unsere Quelldaten für die Tabelle „emp“ sehen folgendermaßen aus.
Für den E-Namen „SCOTT“ prüfen wir mithilfe des Debuggers, welcher Wert für die Spalte „sal“ (Gehalt) in Informatica abgerufen wird.
Schritt 1) Öffnen Sie Informatica Designer und öffnen Sie darin das Mapping „m_emp_emp_target“, indem Sie darauf doppelklicken. Dadurch werden Quellqualifizierer- und Zieldefinitionstabellen geöffnet, die das Mapping im Mapping Designer anzeigen.
Schritt 2) Starten Sie nun den Debugger
- Klicken Sie auf Zuordnungen Menüoption
- Wählen Sie Debugger aus den Optionen aus
- Wählen Sie die Option „Debugger starten“.
Schritt 3) Wählen Sie im Debug-Mapping-Fenster „Weiter“ aus
Schritt 4) Im nächsten Fenster erhalten Sie die Möglichkeit, den Sitzungstyp auszuwählen. Sie können eine vorhandene Sitzung oder eine vorhandene wiederverwendbare Sitzung verwenden oder eine Debug-Sitzungsinstanz erstellen.
Wenn Sie die vorhandene Sitzung verwenden, verwendet Informatica die frühere Sitzung, die Sie für diese Zuordnung erstellt haben. Wenn Sie die Option „Debug-Sitzungsinstanz erstellen“ auswählen, wird eine neue Sitzungsinstanz zum Debuggen erstellt.
In diesem Beispiel wählen wir eine vorhandene wiederverwendbare Sitzungsinstanz aus. Der Integrationsdienst ist der Standard.
- Wählen Sie die Option „Vorhandene Sitzungsinstanz verwenden“.
- Weiter klicken
Schritt 5) Im neuen Fenster werden Sie von Informatica aufgefordert, die vorhandene Sitzung für das Debuggen auszuwählen.
Wählen Sie die Sitzung „s_m_emp_emp_target“ aus und klicken Sie auf die Schaltfläche „Weiter“.
Schritt 6) Im nächsten Fenster gibt es die Option „Zieldaten verwerfen“. Wir wählen diese Option, da wir beim Debuggen keine Daten in unsere Zieltabelle laden möchten.
- Wählen Sie die Option „Zieldaten verwerfen“.
- Zieltabelle „emp_target“ auswählen
- Klicken Sie auf die Schaltfläche „Fertig stellen“.
Mit den oben genannten Schritten haben wir den Debugger konfiguriert und gestartet. Jetzt können wir das Mapping debuggen.
Schritt 7) Der Debugger wurde gestartet, hat jedoch keine Zeilen aus der Quelle abgerufen. Während des Debuggens werden Daten Zeile für Zeile aus der Quelle abgerufen. Um zu beginnen, holen Sie sich die erste Zeile aus der Quelle
- Wählen Sie im Menü die Option „Zuordnungen“ aus
- Wählen Sie die Debugger-Option
- Wählen Sie die Option „Nächste Instanz“ aus
Schritt 8) Im Instanzfenster sehen Sie den ersten vom Quellqualifizierer abgerufenen Datensatz.
Wenn Sie das Instanzfenster analysieren, wird der erste Datensatz angezeigt – die E-Mail-Zeile „SMITH“. Dies ist nicht der Datensatz, nach dem wir suchen. Wir können also zur nächsten Instanz übergehen.
Schritt 9) Zur nächsten Instanz gehen (zur nächsten Zeile wechseln)
- Drücken Sie die Taste F10 (Verknüpfung zum Wechseln zur nächsten Instanz, anstatt zur Zuordnungsoption und dann zur Debugger-Option zu wechseln).
Nach dem Wechsel zur nächsten Instanz ändert sich das Fenster „Daten in der Instanz“ zum nächsten Datensatz.
Schritt 10) Halten Sie die Taste F10 gedrückt, bis Sie zum gewünschten Datensatz des „SCOTT“-Mitarbeiters gelangen. Sobald Sie diesen Punkt erreicht haben, sieht das Instanzfenster wie unten dargestellt aus
Dies ist die Instanz, nach der wir gesucht haben. Im Instanzfenster können wir also die Daten analysieren. Ob es richtig kommt oder irgendein Wert fehlt.
In den Quelldaten lauteten die Details des Mitarbeiters „SCOTT“ wie folgt: Job = „ANALYST“, Manager-ID = „7566“, Sal „3000“.
Und im Debugger haben wir alle diese Details für den Mitarbeiter „SCOTT“ analysiert und sie stimmen mit den Quelldaten überein. Daher können wir sicher sein, dass die Datensätze vom Quellqualifizierer korrekt abgerufen wurden.
Verwendung eines Haltepunkts im Debugger
Wenn wir wie im vorherigen Beispiel nach einer bestimmten Datenzeile suchen, können wir Haltepunkte definieren, anstatt zu jeder Instanz von Quelldaten zu gehen.
Ein Haltepunkt ist eine Bedingung oder ein Satz einer Bedingung, die während der Konfiguration des Debuggens so definiert wird, dass der Debugger bei dieser bestimmten Instanz anhält, wenn diese Bedingung wahr wird.
Wenn wir beispielsweise deptno=20 in einem Haltepunkt definieren, stoppt der Debugger immer dann, wenn diese Bedingung für einen Datensatz erfüllt ist, bei dieser Dateninstanz.
Schritt 1) Um den Haltepunkt zu konfigurieren
- Gehen Sie zum Zuordnungsmenü
- Wählen Sie die Debugger-Option
- Wählen Sie die Option „Haltepunkte bearbeiten“.
Schritt 2) Sie sehen ein Fenster zum Bearbeiten des Haltepunkts, wie unten gezeigt
Schritt 3) Klicken Sie im Haltepunktfenster auf die Schaltfläche „Hinzufügen“.
Schritt 4) Im neuen Fenster
- Wählen Sie SQ_EMP als Instanz aus
- Wählen Sie die Schaltfläche „OK“.
Schritt 5) Das vorherige Fenster sieht wie unten gezeigt aus
Schritt 6) Sie haben einen Haltepunkt, jetzt müssen Sie die Haltepunktbedingung definieren. Um die Haltepunktbedingung zu definieren
- Klicken Sie auf das Symbol „Neue Bedingung hinzufügen“.
Eine neue Zeile unter der Registerkarte „Bedingung“ wird angezeigt. Hier können wir die Bedingung konfigurieren.
Schritt 7) In der Konditionstabelle
- Wählen Sie im Port-Dropdown die Option „ENAME“ aus (während wir für den Datensatz ename='SCOTT debuggen)
- Geben Sie im Wertefeld den Wert „SCOTT“ ein.
- Wählen Sie die Schaltfläche „OK“.
Schritt 8) Starten Sie nun den Debugger wie im vorherigen Thema erwähnt
Gehen Sie zum Kartenmenü -> Wählen Sie die Debugger-Option -> Wählen Sie „Debugger starten“. -> Sitzungsinstanz auswählen
Schritt 9) Sobald der Debugger gestartet ist
- Wählen Sie das Zuordnungsmenü aus
- Wählen Sie die Debugger-Option
- Wählen Sie die Option „Weiter“.
Der Debugger geht zu jeder Instanz der Zeile selbst und prüft, ob die Bedingung „ename=SCOTT“ vorliegt. Für den Datensatz, für den diese Bedingung erfüllt ist, wird der Debugger für diese Instanz angehalten. Wenn also das Datenvolumen hoch ist, können Sie statt jede einzelne Instanz des Quelldatensatzes einen Haltepunkt konfigurieren und direkt zu diesem Datensatz springen.
Sobald Informatica alle Instanzen durchlaufen hat, wird der Debugger automatisch gestoppt. Wenn Sie die Daten erneut analysieren möchten, müssen Sie den Debugger erneut starten.
Ablaufverfolgung in Informatica
Wenn Sie eine Sitzung für ein Mapping ausführen, wird ein Sitzungsprotokoll generiert. Es enthält die Details der Ausführung wie
- Zeitpunkt der Ereignisse
- Fehlerdetails
- Individuelle Transformationsstatistiken etc.
Innerhalb der Transformationen einer Zuordnung können Sie konfigurieren und festlegen, wie viele Details Informatica in das Sitzungsprotokoll schreibt.
Für die Nachverfolgung innerhalb der Transformationen können vier Stufen eingestellt werden.
Verschiedene Protokollmodi | Aktivitäten in verschiedenen Protokollmodi |
---|---|
Normal | Im Normalmodus schreibt Informatica Informationen zur Initialisierung und zum Status der Transformation, aufgetretene Fehler und fasst die Sitzungsergebnisse zusammen. |
Rückwärts | Im Terse-Modus schreibt Informatica nur Initialisierungsinformationen und Fehlerdetails. Der Terse-Modus schreibt minimale Details in das Sitzungsprotokoll. |
Ausführliche Initialisierung | Im ausführlichen Initialisierungsmodus schreibt Informatica die Protokolldetails ähnlich wie im normalen Modus und schreibt darüber hinaus auch Informationen zu den verwendeten Daten- und Indexdateien sowie Transformationsstatistiken. |
Ausführliche Daten | Bei ausführlichen Daten schreibt Informatica ein Protokoll ähnlich wie bei der ausführlichen Initialisierung, schreibt aber darüber hinaus auch alle Daten, die die Transformation durchlaufen. |
Hinweis: Standardmäßig ist die Ablaufverfolgungsebene auf „normal“ eingestellt. Es wird empfohlen, den ausführlichen Datenmodus nur zu verwenden, wenn Sie das Mapping debuggen. Der knappe Modus kann zur Verbesserung der Leistung verwendet werden, da er nur minimale Details schreibt. Der Aufwand für das Schreiben des Protokolls ist also minimal.
So legen Sie die Ablaufverfolgungsebene in einer Transformation fest
Schritt 1) Öffnen Sie im Informatica-Designer das Mapping, für das Sie die Tracing-Ebene festlegen möchten
Schritt 2) Double Klicken Sie auf die Transformation (Source Qualifier Transformation „SQ_EMP“).
Es öffnet sich das Fenster zum Bearbeiten der Transformation.
Schritt 3) Im Fenster „Transformation bearbeiten“.
- Klicken Sie auf die Registerkarte Eigenschaften
- Wählen Sie die Option Tracing-Ebene aus
- Wählen Sie im Dropdown-Menü Ausführliche Daten aus
- Wählen Sie die Schaltfläche „OK“.
Schritt 4) Speichern Sie die Zuordnung und führen Sie die Zuordnung aus (verwenden Sie die Tastenkombination Strg+S, um die Zuordnung zu speichern).
Schritt 5) Um das Protokoll anzuzeigen
- Öffnen Workflow-Monitor und wählen Sie die Sitzung aus, die im letzten Schritt ausgeführt wurde
- Klicken Sie auf die Option „Sitzungsprotokoll“, um das Sitzungsprotokoll für die Zuordnung zu öffnen
Dadurch wird ein Sitzungsprotokollfenster für die Zuordnung geöffnet
Das Sitzungsprotokoll liefert Einzelheiten darüber, wie Ihre Sitzung ausgeführt wurde. Es liefert die Zeitdetails, wann die Ausführung gestartet und gestoppt wurde. Es vermittelt einen grundlegenden Eindruck von der Leistung. Es erwähnt, welche Datenbankverbindung Sie verwenden, welche Parameterdatei Sie verwenden. Es fasst auch die Quelle und die Ziele zusammen, indem es erwähnt, wie viele Quelldatensätze abgerufen wurden, wie viele Datensätze in das Ziel geladen wurden usw.
Schritt 6) Scrollen Sie im Protokoll nach unten und Sie können zusätzliche erfasste Protokolldetails einschließlich der Datensätze sehen.
Auf diese Weise können Sie die Ablaufverfolgungsebene in Zuordnungen festlegen, um zusätzliche Details zum Debuggen zu erfassen.
In diesem Tutorial haben Sie gelernt, wie Sie den Debugger einrichten, konfigurieren und ausführen und wie Sie die Tracing-Ebene in Mappings festlegen. Diese Optionen bieten Ihnen die Möglichkeit, die Zuordnungen zu debuggen.