2016-06-05 7 views
1

verwenden, ignorieren Wie Lookup Failure Arbeiten in Kettle Transformation UPDATE Schritt ignorieren? Ich habe Umwandlung, die versucht, einige Daten zu aktualisieren, aber ich sehe häufige Fehlermeldung in diesem Schritt, wenn Schlüsselnachschlagen nicht mit Tabellendaten übereinstimmt.Pentaho Kettle Transformation Update: Wie Lookup-Fehler

enter image description here

+1

Ich habe Pentaho noch nie benutzt, aber für die, die das tun, haben Sie es gerade angekreuzt? wenn nicht, wenn Sie es ankreuzen, was passiert? Was ist die Fehlermeldung? Wenn nun ein Pentaho-Experte vorbeikommt, könnte es genug Informationen geben, damit sie helfen können. –

+0

Was passiert, wenn Sie das Kontrollkästchen aktivieren? Ich vermute nichts, was bedeutet, dass die fehlgeschlagene Nachschlagezeile stillgelegt wird. Ich benutze dieses Kontrollkästchen nicht selbst, weil ich diese Dinge immer upstream behandle, aber es könnte für Sie sinnvoll sein. –

Antwort

0

Standardmäßig sucht der Update step einen Datensatz nach oben (aus der Datenbank) nach Schlüsseln (IDs) definiert in Keys to look up the values Panel. Wenn in der Zieltabelle kein Datensatz gefunden wird, schlägt der Schritt fehl und löst einen Fehler in der Konsole aus. Es schlägt fehl, weil es versucht, nachgeschlagene Werte aus der Zieltabelle mit Werten aus dem Datenstrom zu vergleichen. Wenn für den Vergleich keine Zeile aus der Zieldatenbank gefunden wird, schlägt sie fehl.

Wenn Sie überprüfen Ignore lookup failures? der Schritt nicht ausfällt. Es ignoriert bestimmte Fehler und verarbeitet weitere eingehende Zeilen aus dem Datenstrom.

können Sie Flag field verwenden, um eine Information zu erhalten, ob die Suche fehlgeschlagen ist oder nicht. Sie können damit alle IDs verfolgen, die fehlgeschlagen sind, und sie in die Konsole oder Datei schreiben.

Z. B: Der Schritt ist nützlich, wenn Sie Ihre ETL lädt täglich Schritten von einer Quelle zu einem Ziel-Datenbank. Die Quellendatenbank enthält bereits tägliche Inkremente [IDs: 1,2,3,4,5,6], während das Ziel nur die vor [IDs: 1,2,3,4] geladenen enthält. Wenn Sie nun eine Transformation laufen die Daten von der Quelle lädt und aktualisiert das Ziel (mit Update step), schlägt es auf ID = 5. Es kann einen solchen Datensatz in der Zieldatenbank nicht suchen.

Eine weitere wichtige Option ist Skip lookup. Wenn es aktiviert ist, führt es direkt update-Anweisungen aus, ohne nach Zeilen in der Zieldatenbank zu suchen und Tabellenwerte mit eingehenden Werten aus dem Datenstrom zu vergleichen.

Verwandte Themen