Datenflüsse automatisieren

Einen Workflow bauen

Integration Studio: Trigger, Knoten und Aktionen. Einen wiederkehrenden Ablauf bauen, der unbeaufsichtigt läuft und Ihnen sagt, wenn er es nicht getan hat.

Ein Workflow ist ein Ablauf, den Sie einmal bauen und dann vergessen dürfen: ein Trigger, ein paar Schritte und ein Ziel für das Ergebnis. Er macht aus dem Import, den Sie jeden Montag von Hand anstoßen, etwas, das jede Nacht ohne Sie läuft.

Bevor Sie beginnen. Sie brauchen ein angebundenes System und ein Mapping, das Sie bereits in der Vorschau geprüft haben. Bauen Sie zuerst das Mapping; ein Workflow um ein falsches Mapping herum sorgt nur dafür, dass das Falsche nach Zeitplan passiert.

Die Bausteine

Trigger: das, was einen Lauf startet. Drei Arten:

TriggerStartet, wennTypischer Einsatz
ZeitplanEine Uhrzeit erreicht ist, die Sie festlegenNächtlicher Produkt-Feed, stündliche Preisaktualisierung
EventHier etwas passiertEine Bestellung wird aufgegeben, ein Produkt wird veröffentlicht
ManuellJemand auf Ausführen drücktMigrationen, einmalige Korrekturen, Tests

Knoten: die Schritte dazwischen. Aus einer Verbindung lesen, filtern, transformieren, nach Bedingung verzweigen, schreiben, benachrichtigen.

Aktionen: das, was ein Knoten am Ende tut. Datensätze importieren, eine Nutzlast an einen Endpunkt senden, eine Datei per SFTP ablegen, eine Benachrichtigung verschicken.

Ausführungen: ein einzelner Durchlauf mit Status, Dauer, Zählern und Fehlern, gelistet unter Integrations › Ausführungen. Mit dieser Historie werden Sie leben, also benennen Sie Workflows so, dass sie in einer Liste lesbar sind: ERP nächtlicher Produkt-Feed, nicht Workflow 4. Ausführungen sind dauerhaft: Ein Lauf, der um 03:00 Uhr startet und vierzig Minuten braucht, überlebt einen Neustart, und die Liste zeigt, wo er stehen geblieben ist.

So bauen Sie ihn

  1. Öffnen Sie Integrations › Workflows.
  2. Wählen Sie Neuer Workflow und benennen Sie ihn nach dem, was er tut.
  3. Wählen Sie den Trigger. Bei einem Zeitplan legen Sie die Uhrzeit in der Zeitzone des Mandanten fest und setzen sie so, dass nichts kollidiert: nach dem eigenen Nachtlauf des Quellsystems und nicht zur selben Minute wie andere Feeds. Zeit-Trigger sind gesammelt unter Integrations › Zeitpläne zu sehen.
  4. Fügen Sie einen Quellknoten hinzu und wählen Sie Zugangsdaten und Mapping-Profil. Referenzieren Sie die Zugangsdaten über ihren Namen, statt Verbindungsdetails in den Knoten einzutragen. So können Sie den Workflow von Test auf Produktion umstellen, ohne ihn zu bearbeiten.
  5. Fügen Sie einen Filter hinzu, wenn der Lauf nicht alles abdecken soll. Ein Feed, der auf eine Produktgruppe begrenzt ist, ist der sichere Weg, auf Echtdaten zu testen.
  6. Fügen Sie die Zielaktion hinzu, bei einem Produkt-Feed den Produktimport.
  7. Legen Sie die Fehlerbehandlung fest: Wie viele Zeilen dürfen scheitern, bevor der Lauf abgebrochen wird, und wird ein Teillauf übernommen oder zurückgerollt? Bei einem großen Katalog-Feed ist es meist richtig, eine Handvoll schlechter Zeilen zu tolerieren und zu melden. Bei Preisen meist nicht.
  8. Fügen Sie eine Benachrichtigung bei Fehlschlag hinzu, an eine Gruppenadresse statt an eine Person.
  9. Speichern Sie ihn zunächst als inaktiv.

Testen, bevor Sie ihn einplanen

  1. Führen Sie ihn manuell aus, mit einem Filter auf eine Handvoll Datensätze.
  2. Lesen Sie den Lauf unter Integrations › Ausführungen: Zeilen gelesen, angelegt, aktualisiert, übersprungen, fehlgeschlagen.
  3. Öffnen Sie zwei oder drei betroffene Datensätze und vergleichen Sie sie mit der Quelle.
  4. Führen Sie denselben Umfang noch einmal aus. Ein zweiter Lauf muss null Anlagen erzeugen.
  5. Weiten Sie den Filter aus, führen Sie erneut aus, und aktivieren Sie erst dann den Zeitplan.

Was Sie danach prüfen

Schauen Sie in der ersten Woche jeden Morgen in die Ausführungsliste:

  • Ist er überhaupt gelaufen? Ein fehlender Lauf ist schlimmer als ein gescheiterter, weil niemand alarmiert wurde.
  • Ist die Laufzeit stabil? Ein Nachtjob, der von 20 auf 90 Minuten anwächst, läuft irgendwann in die Geschäftszeit hinein.
  • Sind die Zähler plausibel? Ein Feed, der gestern 40.000 Produkte aktualisiert hat und heute 3, hatte nicht weniger Arbeit; vorgelagert hat sich etwas geändert.
Ein Workflow, der nach außen schreibt (Bestellungen übertragen, Bestand pushen, einen Katalog senden), muss idempotent sein, bevor Sie ihn einplanen. Eine Wiederholung nach einem Timeout sendet erneut, und ein Empfänger, der nicht dedupliziert, macht aus einer Bestellung zwei Lieferungen. Siehe Integrationsmuster.

Muster, die sich zu kopieren lohnen

  • Nächtlicher Volllauf, werktags Deltas. Deltas halten die Laufzeit kurz; der wöchentliche Volllauf repariert, was die Deltas verpasst haben.
  • Staging-Schritt vor dem echten. In einen eingeschränkten Kanal oder eine gefilterte Sicht importieren, Zähler prüfen, dann freigeben. Langsamer, und es hat mehr Kataloge gerettet als jede Validierungsregel.
  • Getrennte Feeds je Datenart. Produkte, Preise und Bestand in drei Workflows statt in einem. Wenn die Preise scheitern, wiederholen Sie die Preise und nicht die ganze Nacht.
  • Ein Canary-Check. Ein winziger Workflow, der stündlich einen bekannten Datensatz liest und alarmiert, wenn das nicht klappt. Er findet eine tote Verbindung lange vor dem Nachtlauf.

Weiter