Blog

Viele (aber mindestens drei) gute Gründe für ein Datenflussmanagement mit NiFi

In unserer Reihe „Gespräche mit der Entwicklung“ stellen wir Ihnen regelmäßig Projekte und Tools aus unserem Arbeitsalltag vor. Unser Data Warehouse Team arbeitet seit einiger Zeit mit Apache NiFi, eine Software zur Automatisierung von Datenflüssen. Lesen Sie im nachfolgenden Interview von unseren Erfahrungen sowie den Vorteilen und Einsatzmöglichkeiten.

Key-Work Tech Talk, Gespräche mit der Entwicklung

Harald, du hast vor kurzem einen TechTalk gehalten zu Apache NiFi. Wir haben vielleicht nicht alles verstanden und noch ein paar Fragen. Also, in einem Satz, was ist Apache Nifi? Und was hat es mit Geheimdiensten zu tun?

Harald Dobbernack: Apache NiFi ist ein Projekt der Apache Software Foundation. Das sind die mit den vielen Open Source Projekten wie der Apache Webserver und so weiter. Mit NiFi können wir Datenflüsse feinteilig, aber übersichtlich steuern: Was muss wann und von wo wohin. In diesen sogenannten Flows können auch unmittelbar Geschäftsregeln abgebildet, Daten angereichert oder transformiert werden. Die Abkürzung NiFi steht für NiagaraFiles, einer früheren Version, welche die NSA vor einigen Jahren der Öffentlichkeit zur Verfügung gestellt hatte. Und das Bild der Niagara Wasserfälle soll gewaltige, aber schöne Datenströme assoziieren.

NiFi, Key-Work

Quelle: https://upload.wikimedia.org/wikipedia/commons/8/8e/Apache_NiFi_Screenshot.png

Früher hatten wir Apache NiFi noch nicht im Einsatz?

Harald Dobbernack: Ja, das stimmt. In den 2000er Jahren war es noch üblich, mit ESBs (steht für Enterprise Service Bus) zu arbeiten oder große Eigenentwicklungen in beispielsweise Java aufzusetzen. Wir hatten Microsoft BizTalk im Einsatz. Doch mittlerweile sind wir operativ komplett auf NiFi umgestiegen.

Warum? Was sind die Vorteile von Apache NiFi?

Harald Dobbernack: Okay, das hat viele und gute Gründe: Leichtfüßigkeit, Skalierbarkeit und das Prinzip „Configuration over Coding“.

Zunächst ist Apache NiFi viel leichtfüßiger und schlanker und das nicht nur lizenztechnisch, sondern von der ganzen Architektur her. Und trotzdem skaliert Apache NiFi wunderbar für große und anspruchsvolle Szenarien.

Das webbasierte User Interface stellt eine sehr hohe Transparenz her und hilft enorm. Nicht nur der Techniker, auch der geübte Key User kann sich da gut zurechtfinden. NiFi beinhaltet auch eine hervorragende Prozessüberwachung, die weitere Monitoring-Werkzeuge überflüssig macht.

Und NiFi bringt fertige Adapter mit zu einer Vielzahl an Technologien: von klassischem SFTP oder Filesystem bis hin zu aktuellen Streaming- oder Queuing-Diensten, Big Data und Cloud APIs. Dank Open-Source und gut dokumentiertem Framework ist die Entwicklung eigener Adapter, wo nötig, immer möglich. Für’s Scripting können wir aus unseren Lieblingen Java, Python und Groovy wählen.

Und was bedeutet „Configuration over Coding“?

Harald Dobbernack: „Configuration over Coding“ ist nun eher ein Begriff für Nerds 😉 Es beschreibt ein Prinzip, Programmabläufe zu steuern und passt auf bestimmte Zielsetzungen, auf andere weniger. Im Datenflussmanagements erhöht es die Wartbarkeit bei voller Flexibilität. Die Konfiguration ist die gut lesbare und verständlich erweiterbare Schnittstelle für die zukünftige Datennutzung unter veränderten Anforderungen.

Was machen wir konkret mit Apache NiFi, hast du ein Beispiel für uns?

Harald Dobbernack: Ja, das kundenzentrierte Data-Warehouse von Key-Work verfolgt einen hybriden Ansatz, verbindet also lokale Infrastruktur der Auftraggeber mit Komponenten in der Cloud. Apache NiFi dient hier zusammen mit Apache Airflow als Verteiler: holt Daten vom ERP, vom Webshop, aus Social Media und stellt sie dem zentralen DWH zur Verfügung, ebenso wie einzelnen Data Marts, den Data Scientists und auch klassischen Anwendungen wie CMS, PIM, CRM ….

Ist es immer eine gute Idee, mit Apache NiFi zu arbeiten?

Harald Dobbernack: Das hängt in erster Linie von den use cases ab. Wie immer. Fest steht, dass es für ein ordentliches Datenmanagement nicht reicht, einfach Apache NiFi aufzusetzen, nur weil es „kostenlos“ ist. Das wäre ein krasser Irrtum. Für Key-Work ist es ein sehr guter Match, da wir mit unserem Know-how genau das Bindeglied herstellen zwischen der sehr lebendigen Community der NiFi-Entwickler und dem Einsatz in operativen Geschäftsprozessen.

Na, gut, dass wir dich und deine Kolleg:innen bei uns haben. Über Apache Airflow reden wir das nächste Mal. Vielen Dank, Harald!

Harald Dobbernack ist Data Integration Developer bei der Key-Work Consulting GmbH und Experte für Datenlogistik. Wenn er „für neue Adapter eine Orchestrierung deployed“ klingt das für andere wie Star Trek. Seine Sorgfalt und Präzision begleiten unsere QS-Prozesse und die zuverlässigen Produktivnahmen überall, wo Datenmengen zuverlässig von A über B nach C und vielleicht wieder zurück müssen.

Sie wollen auch Projekte mit Apache NiFi umsetzen? Wir unterstützen Sie dabei. Sprechen Sie uns an.

Weitere spannende Themen im Blog

Cover Image, Key-Work Summer Summit

25 Jahre Innovation und Austausch: Rückblick auf die „Summer Summit“-Events

Weiterlesen

Software-Entwicklung – Digitales Projekt in der Medienbranche

Weiterlesen
Case Study, Key-Work

Analytics – Innovatives Projekt mit HINTE Expo & Conference

Weiterlesen