Konferenz für Big Data,
Data Science und Machine Learning
Heidelberg, Print Media Academy, 26.-29. September 2017

Die letzte Data-Processing API? Apache Beam unter der Lupe

Apache Beam ist eine universelle API für Batch- und Stream-Datenverarbeitung im großen Stil. Sie unterstützt als Backend mehrere Open-Source-Systeme wie Apache Flink, Apache Spark, Apache Apex, aber läuft auch auf Google Cloud Dataflow. Das Besondere an Beam ist, dass die API von der Ausführungslogik des jeweiligen Backends entkoppelt ist. Somit kann ein Beam-Programm, einmalig geschrieben, mit unterschiedlichen Systemen ausgeführt werden.

Im Vortrag werden wir auf die Konzepte der Beam API eingehen, die gerne mit dem Begriff "Dataflow Model" zusammengefasst werden. Wir werden herausfinden, wie die API aufgebaut ist und ob die Beam API wirklich alle Use Cases abdeckt. Zum Abschluss wird es eine Demo mit einem Beispiel geben. Für dieses Beispiel verarbeitet Beam Daten von Apache Kafka, um sie zu aggregieren und in CrateDB zu schreiben. Wir werden das Beam-Backend bei der Demo austauschen, um zu sehen, ob Beams Versprechen der einfachen Migration auf andere Systeme unserem Test standhalten kann.

Apache Beam is a universal API for batch and stream data processing. Once programs are written in Apache Beam they can be executed using different execution engines including Apache Flink, Apache Apex, Apache Spark, and Google Cloud Dataflow. In this talk we will go over the underlying programming model, often referred to as the Dataflow model, which powers Apache Beam. What makes this API so versatile, and is it really the answer to people's data processing needs?

In a hands-on section, we will design an example pipeline in which Apache Beam processes events from Apache Kafka and writes them to CrateDB. As a proof of concept, we will switch the execution engine from Apache Flink to Apache Spark to show whether Beam's promise of "write once – execute anywhere" holds true.

Vorkenntnisse
* Erfahrungen mit dem Hadoop-Ökosystem
* Interesse an Open-Source-Batch- oder -Stream-Data-Processing

* Experience with the Hadoop ecosystem
* Interest in open-source batch or stream data processing

Lernziele
* Wissen, wozu Beam fähig ist.
* Verstehen, was das Dataflow-Modell ist.
* Lernen, wie sich Beam in einer Beispielpipeline verwenden lässt.

* Know what Beam is capable of.
* Understand the Dataflow model.
* See how Beam could be used in an example pipeline.

// Maximilian Michels Maximilian Michels

ist Software-Ingenieur bei Crate.io und PMC-Mitglied von Apache Flink und Apache Beam. Während seines Studiums an der Freien Universität Berlin und der Universität Istanbul arbeitete er an einer verteilten Open-Source-Datenbank des Zuse Institute Berlin. Von den Prinzipien verteilter Systeme und Open Source inspiriert, schloss er sich den Data Artisans an, um die nächste Generation des Open-Source-Streaming-Systems zu entwickeln: Apache Flink. Max arbeitet derzeit für Crate.io, das eine verteilte Open-Source-Datenbank für großformatige IoT-Maschinendaten erstellt.

is a Software Engineer at Crate.io and a PMC member of Apache Flink and Apache Beam. During his studies at Free University of Berlin and Istanbul University, he worked on a distributed open-source database at Zuse Institute Berlin. Deeply inspired by the principles of distributed systems and open-source, he joined Data Artisans to develop the next generation open-source streaming system: Apache Flink. Max currently works for Crate.io which builds a distributed open-source database for large-scale IoT machine data.


l>