Vorwort

Diese Arbeit wurde mithilfe von KI übersetzt. Wir freuen uns über dein Feedback und deine Kommentare: translation-feedback@oreilly.com

Was du in diesem Buch lernen wirst

In diesem Buch lernst du alles, was du über Stream Processing mit Apache Flink wissen musst. Es besteht aus 11 Kapiteln, die hoffentlich eine zusammenhängende Geschichte erzählen. Während einige Kapitel beschreibend sind und darauf abzielen, High-Level-Konzepte vorzustellen, sind andere eher praxisorientiert und enthalten viele Codebeispiele.

Als wir das Buch geschrieben haben, wollten wir, dass es in der Reihenfolge der Kapitel gelesen wird, aber Leser, die mit dem Inhalt eines Kapitels vertraut sind, möchten es vielleicht überspringen. Andere, die eher daran interessiert sind, sofort Flink-Code zu schreiben, sollten vielleicht zuerst die praktischen Kapitel lesen. Im Folgenden beschreiben wir kurz den Inhalt der einzelnen Kapitel, damit du direkt zu den Kapiteln springen kannst, die dich am meisten interessieren.

  • Kapitel 1 gibt einen Überblick über Stateful Stream Processing, Anwendungsarchitekturen für die Datenverarbeitung, Anwendungsdesigns und die Vorteile von Stream Processing gegenüber traditionellen Ansätzen. Außerdem bekommst du einen kurzen Einblick, wie es ist, deine erste Streaming-Anwendung auf einer lokalen Flink-Instanz auszuführen.

  • Kapitel 2 behandelt die grundlegenden Konzepte und Herausforderungen der Stream-Verarbeitung, unabhängig von Flink.

  • Kapitel 3 beschreibt die Systemarchitektur und die internen Funktionen von Flink. Es werden die verteilte Architektur, die Behandlung von Zeit und Zustand in Streaming-Anwendungen und die Fehlertoleranzmechanismen von Flink besprochen.

  • Kapitel 4 erklärt, wie du eine Umgebung zum Entwickeln und Debuggen von Flink-Anwendungen einrichtest.

  • Kapitel 5 führt dich in die Grundlagen der DataStream-API von Flink ein. Du lernst, wie du eine DataStream-Anwendung implementierst und welche Stream-Transformationen, Funktionen und Datentypen unterstützt werden.

  • Kapitel 6 befasst sich mit den zeitbasierten Operatoren der DataStream-API. Dazu gehören Fensteroperatoren und zeitbasierte Joins sowie Prozessfunktionen, die die größte Flexibilität beim Umgang mit Zeit in Streaming-Anwendungen bieten.

  • In Kapitel 7 wird erklärt, wie zustandsabhängige Funktionen implementiert werden, und es wird alles rund um dieses Thema besprochen, z. B. die Leistung, Robustheit und Entwicklung von zustandsabhängigen Funktionen. Außerdem wird gezeigt, wie man den abfragbaren Zustand von Flink nutzt.

  • In Kapitel 8 werden die am häufigsten verwendeten Source- und Sink-Konnektoren von Flink vorgestellt. Es wird der Flink-Ansatz für eine durchgängige Anwendungskonsistenz und die Implementierung benutzerdefinierter Konnektoren für die Aufnahme von Daten aus und die Ausgabe von Daten an externe Systeme erläutert.

  • In Kapitel 9 wird beschrieben, wie du Flink-Cluster in verschiedenen Umgebungen einrichtest und konfigurierst.

  • Kapitel 10 behandelt Betrieb, Überwachung und Wartung von Streaming-Anwendungen, die rund um die Uhr laufen.

  • Kapitel 11 schließlich enthält Ressourcen, die du nutzen kannst, um Fragen zu stellen, an Flink-bezogenen Veranstaltungen teilzunehmen und zu erfahren, wie Flink derzeit eingesetzt wird.

In diesem Buch verwendete Konventionen

In diesem Buch werden die folgenden typografischen Konventionen verwendet:

Kursiv

Weist auf neue Begriffe, URLs, E-Mail-Adressen, Dateinamen und Dateierweiterungen hin.

Constant width

Wird für Programmlistings sowie innerhalb von Absätzen verwendet, um auf Programmelemente wie Variablen- oder Funktionsnamen, Datenbanken, Datentypen, Umgebungsvariablen, Anweisungen und Schlüsselwörter hinzuweisen. Außerdem werden sie für Modul- und Paketnamen verwendet und um Befehle oder anderen Text anzuzeigen, der vom Benutzer wörtlich eingegeben werden muss, sowie für die Ausgabe von Befehlen.

Constant width italic

Zeigt Text an, der durch vom Benutzer eingegebene Werte oder durch kontextabhängige Werte ersetzt werden soll.

Tipp

Dieses Element steht für einen Tipp oder eine Anregung.

Hinweis

Dieses Element steht für einen allgemeinen Hinweis.

Warnung

Dieses Element steht für eine Warnung oder Vorsicht.

Code-Beispiele verwenden

Ergänzendes Material (Codebeispiele in Java und Scala) steht unter https://github.com/streaming-with-flink zum Download bereit .

Dieses Buch soll dir helfen, deine Arbeit zu erledigen. Wenn in diesem Buch Beispielcode angeboten wird, darfst du ihn in deinen Programmen und deiner Dokumentation verwenden. Du musst uns nicht um Erlaubnis fragen, es sei denn, du reproduzierst einen großen Teil des Codes. Wenn du zum Beispiel ein Programm schreibst, das mehrere Teile des Codes aus diesem Buch verwendet, brauchst du keine Erlaubnis. Wenn du eine CD-ROM mit Beispielen aus den O'Reilly-Büchern verkaufst oder verteilst, ist eine Genehmigung erforderlich. Die Beantwortung einer Frage mit einem Zitat aus diesem Buch und einem Beispielcode erfordert keine Genehmigung. Wenn du einen großen Teil des Beispielcodes aus diesem Buch in die Dokumentation deines Produkts aufnimmst, ist eine Erlaubnis erforderlich.

Wir schätzen die Namensnennung, verlangen sie aber nicht. Eine Quellenangabe umfasst normalerweise den Titel, den Autor, den Verlag und die ISBN. Zum Beispiel: "Stream Processing with Apache Flink " von Fabian Hueske und Vasiliki Kalavri (O'Reilly). Copyright 2019 Fabian Hueske und Vasiliki Kalavri, 978-1-491-97429-2."

Wenn du der Meinung bist, dass die Verwendung von Code-Beispielen nicht unter die Fair-Use-Regelung oder die oben genannte Erlaubnis fällt, kannst du uns gerne unter kontaktieren

O'Reilly Online Learning

Hinweis

Seit fast 40 Jahren bietet O'Reilly Schulungen, Wissen und Einblicke in Technologie und Wirtschaft, um Unternehmen zum Erfolg zu verhelfen.

Unser einzigartiges Netzwerk von Experten und Innovatoren teilt sein Wissen und seine Erfahrung durch Bücher, Artikel, Konferenzen und unsere Online-Lernplattform. Die Online-Lernplattform von O'Reilly bietet dir On-Demand-Zugang zu Live-Trainingskursen, ausführlichen Lernpfaden, interaktiven Programmierumgebungen und einer umfangreichen Text- und Videosammlung von O'Reilly und über 200 anderen Verlagen. Weitere Informationen findest du unter http://oreilly.com.

Wie du uns kontaktierst

Bitte richte Kommentare und Fragen zu diesem Buch an den Verlag:

  • O'Reilly Media, Inc.
  • 1005 Gravenstein Highway Nord
  • Sebastopol, CA 95472
  • 800-998-9938 (in den Vereinigten Staaten oder Kanada)
  • 707-829-0515 (international oder lokal)
  • 707-829-0104 (Fax)

Wir haben eine Webseite für dieses Buch, auf der wir Errata, Beispiele und zusätzliche Informationen auflisten. Du kannst diese Seite unter http://bit.ly/stream-proc aufrufen .

Wenn du Kommentare oder technische Fragen zu diesem Buch stellen möchtest, sende eine E-Mail an

Weitere Informationen zu unseren Büchern, Kursen, Konferenzen und Neuigkeiten findest du auf unserer Website unter http://www.oreilly.com.

Finde uns auf Facebook: http://facebook.com/oreilly

Folge uns auf Twitter: http://twitter.com/oreillymedia

Schau uns auf YouTube: http://www.youtube.com/oreillymedia

Folge den Autoren auf Twitter: @fhueske und @vkalavri

Danksagungen

Dieses Buch wäre nicht möglich gewesen ohne die Hilfe und Unterstützung von vielen tollen Menschen. Einigen von ihnen möchten wir hier danken und Anerkennung zollen.

Dieses Buch fasst das Wissen zusammen, das die Apache Flink-Gemeinschaft in jahrelanger Design-, Entwicklungs- und Testarbeit gesammelt hat. Wir danken allen, die durch Code, Dokumentation, Reviews, Bug-Reports, Feature-Requests, Mailinglisten-Diskussionen, Schulungen, Konferenzvorträge, die Organisation von Meetups und andere Aktivitäten zu Flink beigetragen haben.

Ein besonderer Dank geht an unsere Flink-Committer-Kollegen: Alan Gates, Aljoscha Krettek, Andra Lungu, ChengXiang Li, Chesnay Schepler, Chiwan Park, Daniel Warneke, Dawid Wysakowicz, Gary Yao, Greg Hogan, Gyula Fóra, Henry Saputra, Jamie Grier, Jark Wu, Jincheng Sun, Konstantinos Kloudas, Kostas Tzoumas, Kurt Young, Márton Balassi, Matthias J. Sax, Maximilian Michels, Nico Kruber, Paris Carbone, Robert Metzger, Sebastian Schelter, Shaoxuan Wang, Shuyi Chen, Stefan Richter, Stephan Ewen, Theodore Vasiloudis, Thomas Weise, Till Rohrmann, Timo Walther, Tzu-Li (Gordon) Tai, Ufuk Celebi, Xiaogang Shi, Xiaowei Jiang, Xingcan Cui. Wir hoffen, mit diesem Buch Entwickler/innen, Ingenieur/innen und Streaming-Enthusiast/innen auf der ganzen Welt zu erreichen und die Flink-Gemeinschaft noch größer werden zu lassen.

Wir möchten uns auch bei unseren technischen Prüfern bedanken, die uns mit unzähligen wertvollen Vorschlägen geholfen haben, die Präsentation der Inhalte zu verbessern. Vielen Dank, Adam Kawa, Aljoscha Krettek, Kenneth Knowles, Lea Giordano, Matthias J. Sax, Stephan Ewen, Ted Malaska und Tyler Akidau.

Schließlich möchten wir uns bei allen Mitarbeitern von O'Reilly bedanken, die uns auf unserer zweieinhalbjährigen Reise begleitet und uns geholfen haben, dieses Projekt über die Ziellinie zu bringen. Danke, Alicia Young, Colleen Lobner, Christina Edwards, Katherine Tozer, Marie Beaugureau und Tim McGovern.

Get Stream Processing mit Apache Flink now with the O’Reilly learning platform.

O’Reilly members experience books, live events, courses curated by job role, and more from O’Reilly and nearly 200 top publishers.