Unterschiede in Job und Transformation – Pentaho Kettle Teil 3

In Pentaho Data Integration Kettle gibt es mehrere Schritte, die zwar die gleiche Aufgabe haben, jedoch unter teilweise anderen Namen in Transformation und Job die gleiche Funktionsweise erfüllen. Diese Schritte werden wir dir in diesem Tutorial vorstellen und vergleichen.

Bedingungen

Um eine Bedingung abzufragen, gibt es einmal den „Filter rows“-Schritt in einer Transformation und den „Simple evaluation“-Schritt in einem Job. Bei der „Simple evaluation“ kannst du entweder eine Variable oder ein Feld vom vorherigen Schritt je nach Datentyp auf verschiedene Bedingungen prüfen, z.B. bei dem Typen „Number“, ob eine andere Zahl größer, kleiner oder gleich deiner Zahl ist.

In einer Transformation übernimmt der Schritt „Filter rows“ die Aufgabe eine Bedingung abzufragen. Dazu musst du links das Feld angeben, was du vergleichen willst, in der Mitte gibst du die Bedingung an und rechts kannst du auswählen, ob du das vorher ausgewählte Feld entweder mit einem anderen Feld oder mit einem Wert vergleichen willst.

Falls du mehr Freiheiten beim Definieren einer Bedingung haben willst, gibt es in einer Transformation auch noch den Schritt „Java Filter“, allerdings empfehlen wir eher den „Filter rows“-Schritt zu benutzen, da er einfacher und vor allem übersichtlicher ist.

Datei vorhanden?

Du willst prüfen, ob eine Datei in einem bestimmten Pfad existiert? Dazu gibt es sowohl in einer Transformation als auch in einem Job mehrere Schritte, die du benutzen kannst. In einer Transformation heißt dieser Schritt „File exists“ und diesen haben wir bereits in unserem Artikel Pentaho Kettle Teil 1 näher erklärt. In einem Job gibt es sogar zwei Schritte, die du verwenden kannst: Entweder „File Exists“, um eine spezielle Datei oder „Checks if files exist“, um mehrere Dateien oder Ordner auf deren Existenz zu prüfen.

Verwalten von Dateien

Um Dateien zu verwalten, also sie zu löschen, kopieren oder verschieben, benutzt man in einer Transformation den Schritt „Process files“, den wir bereit in unserem Artikel „Pentaho Kettle Teil 1“ genauer erläutert haben. Diesen Schritt gibt es auch in einem Job unter dem Namen „Process result filenames“.

Allerdings musst du in diesem Schritt die Dateinamen über ein Feld vom vorherigen Schritt übergeben und legst nur den Zielpfad (für das Kopieren oder Verschieben) im Schritt selber fest. Falls du die Dateien im Schritt selbst definieren willst, musst du entweder „Copy Files“ (Mehrfachauswahl von Dateien möglich), „Move Files“ (Mehrfachauswahl von Dateien möglich) oder „Delete file“ benutzen, je nachdem welche Aktion du durchführen möchtest.

Kommentar schreiben

  • (benötigt)
  • (benötigt)