Apache Hop – neuer Player im Bereich Datenintegration

Inhalt
Inhalt

Was ist Apache Hop?

Apache Hop, kurz für Hop Orchestration Platform, ist eine Plattform für Data Engineering und Data Orchestration, die das Ziel hat, alle Aspekte der Orchestrierung von Daten und Metadaten zu vereinfachen. Hop geht neue Wege, weil Datenexperten damit visuell arbeiten und Metadaten verwenden können, um festzulegen, wie Daten verarbeitet werden sollen.

Architektur Apache Hop

Die Architektur von Hop ist einfach aufgebaut: den Kern bildet die kompakte, aber leistungsstarke Hop-Engine. Alle Funktionalitäten werden durch Plugins hinzugefügt. Die Standardinstallation von Hop wird mit über 250 Plugins ausgeliefert. Hop ist so konzipiert, dass es in jedem Szenario funktioniert, von IoT bis zu riesigen Datenmengen, on-premise, in der Cloud, auf einem Bare OS oder in Containern und Kubernetes.

Vielzahl von Workflows, Pipelines und Engines

Apache Hop - Grafischer Entwurfsmodus für Apache Beam Pipelines
Apache Hop - Grafischer Entwurfsmodus für Apache Beam Pipelines

In Hop werden Workflows und Pipelines in der visuellen Entwicklungsumgebung Hop GUI erstellt. Sie können auf einer Vielzahl von Engines ausgeführt werden. Pipelines lassen sich auch auf Apache Spark, Apache Flink und Google Dataflow über die Apache Beam-Laufzeitkonfiguration deployen. In Workflows und Pipelines können Hunderte von Operationen auf Daten angewendet werden: Lesen und Schreiben auf einer Vielzahl von Quell- und Zielplattformen, aber auch die Kombination, Anreicherung, Bereinigung und viele weitere Arten der Datenverarbeitung. Je nach Engine und Funktionalität können Daten im Batch, Streaming oder in einem Batch/Streaming-Hybrid verarbeitet werden.

Christopher Keller
Director Big Data Analytics & IoT

Unser Angebot für Ihr Hop Projekt

Metadaten: das wichtigste Konzept in Hop

Alle Interaktionen zwischen Apache Hop und den anderen Komponenten in der Datenarchitektur werden über Metadaten ausgeführt. Durch die Trennung der Metadaten von Runtime-Code und Tools erreicht Hop einen minimalen Installations-Footprint. Dieser stateless Zustand erleichtert die Ausführung auf einer Vielzahl von Plattformen wie Spark und Flink, aber auch in einer Vielzahl von Szenarien wie verschiedenen Produktlebenszyklen (Development, Test, Production, Unit Testing und Continuous Integration).

Orchestrierungs-Workloads können als Metadaten definiert werden. Diese Metadaten lassen sich auf verschiedene Arten darstellen, z.B. in einem XML- oder JSON-Dokument, in einer Datenbank beliebigen Typs oder auch in einer grafischen Benutzeroberfläche. Von Anfang an war geplant, dass Hop, alle Funktionen über die bereitgestellten Benutzeroberflächen zu 100% abdeckt, sodass keine externen Editoren oder Tools erforderlich sind. Apache Hop hat sich deshalb entschlossen, MetaStore zu entwickeln, eine einzige Metadaten-Schnittstelle für alle Ausdrücke von Metadaten.

Warum Apache Hop?

Apache Hop ist stark in diesen Szenarien:

  • Laden großer Datensets in Datenbanken unter Ausnutzung der Vorteile von Cloud-, Cluster- und massiv-parallelen Verarbeitungsumgebungen.
  • Data Warehouse-Befüllung mit integrierter Unterstützung für Slowly Changing Dimensions (SCD), Change Data Capture (CDC) und Erstellung von Surrogatschlüsseln.
  • Integration zwischen verschiedenen Datenarchitekturen, Kombination von relationalen Datenbanken, Files, NoSQL-Datenbanken wie Neo4j, MongoDB, Cassandra usw.
  • Datenmigration zwischen verschiedenen Datenbanken und Anwendungen.
  • Daten-Profiling und Datenbereinigung.

Fazit

Das visuelle Design von Apache Hop ermöglicht es Entwicklern, sich auf das „Was“ zu konzentrieren anstatt auf das „Wie“: die schnelle Entwicklung und Umsetzung von Datenprojekten. Dank dieses Fokus sind Hop-Entwickler produktiver als bei der reinen Produktion von Code.