Freigeben über


Was ist Apache Flink® in Azure HDInsight auf AKS? (Vorschau)

Wichtig

Azure HDInsight auf AKS wurde am 31. Januar 2025 eingestellt. Erfahren Sie mehr mit dieser Ankündigung.

Sie müssen Ihre Workloads zu Microsoft Fabric oder ein gleichwertiges Azure-Produkt migrieren, um eine abrupte Beendigung Ihrer Workloads zu vermeiden.

Wichtig

Dieses Feature befindet sich derzeit in der Vorschau. Die zusätzlichen Nutzungsbedingungen für Microsoft Azure Previews weitere rechtliche Bestimmungen enthalten, die für Azure-Features gelten, die in der Betaversion, in der Vorschau oder auf andere Weise noch nicht in die allgemeine Verfügbarkeit veröffentlicht werden. Informationen zu dieser spezifischen Vorschau finden Sie unter Azure HDInsight auf AKS Vorschauinformationen. Für Fragen oder Vorschläge für Funktionen senden Sie bitte eine Anfrage über AskHDInsight mit den Details und folgen Sie uns für weitere Updates zur Azure HDInsight Community.

Apache Flink ist ein Framework- und verteiltes Verarbeitungsmodul für zustandsbehaftete Berechnungen über ungebundene und gebundene Datenströme. Flink wurde entwickelt, um in allen gängigen Clusterumgebungen ausgeführt zu werden, Berechnungen und zustandsbehaftete Streaminganwendungen mit speicherinterner Geschwindigkeit und beliebiger Skalierung durchzuführen. Anwendungen werden in möglicherweise Tausende von Aufgaben parallelisiert, die in einem Cluster verteilt und gleichzeitig ausgeführt werden. Daher kann eine Anwendung unbegrenzte Mengen von vCPUs, Hauptspeicher, Datenträger und Netzwerk-E/A verwenden. Darüber hinaus verwaltet Flink problemlos den großen Anwendungszustand. Der asynchrone und inkrementelle Prüfpunktsalgorithmus sorgt für minimalen Einfluss auf die Verarbeitungslatenzen und garantiert gleichzeitig genau einmalige Zustandskonsistenz.

Apache Flink ist ein massiv skalierbares Analysemodul für die Datenstromverarbeitung.

Einige der wichtigsten Features, die Flink bietet, sind:

  • Vorgänge in gebundenen und ungebundenen Datenströmen
  • Leistung im Arbeitsspeicher
  • Möglichkeit für Streaming- und Batchberechnungen
  • Niedrige Latenz, Vorgänge mit hohem Durchsatz
  • Genau-einmal-Verarbeitung
  • Hohe Verfügbarkeit
  • Zustands- und Fehlertoleranz
  • Vollständig kompatibel mit Hadoop-Ökosystem
  • Einheitliche SQL-APIs für Stream und Batch

Flink-Architekturdiagramm.

Apache Flink ist eine ausgezeichnete Wahl, um viele verschiedene Arten von Anwendungen zu entwickeln und auszuführen, aufgrund seiner umfangreichen Features. Die Funktionen von Flink umfassen Unterstützung für die Datenstrom- und Batchverarbeitung, komplexe Zustandsverwaltung, Ereigniszeitverarbeitungssemantik und genau einmal Konsistenzgarantien für den Zustand. Flink hat keinen einzigen Fehlerpunkt. Flink hat sich bewährt, auf Tausende von Kernen und Terabyte anwendungszustand zu skalieren, bietet hohen Durchsatz und niedrige Latenz und ermöglicht einige der anspruchsvollsten Datenstromverarbeitungsanwendungen der Welt.

  • Betrugserkennung: Flink kann verwendet werden, um betrügerische Transaktionen oder Aktivitäten in Echtzeit zu erkennen, indem komplexe Regeln und Machine Learning-Modelle auf Streamingdaten angewendet werden.
  • Anomalieerkennung: Flink kann verwendet werden, um Ausreißer oder ungewöhnliche Muster in Streamingdaten zu identifizieren, z. B. Sensorlesungen, Netzwerkdatenverkehr oder Benutzerverhalten.
  • Regelbasierte Warnung: Flink kann verwendet werden, um Warnungen oder Benachrichtigungen basierend auf vordefinierten Bedingungen oder Schwellenwerten für Streamingdaten wie Temperatur, Druck oder Aktienkurse auszulösen.
  • Überwachung von Geschäftsprozessen: Flink kann verwendet werden, um den Status und die Leistung von Geschäftsprozessen oder Workflows in Echtzeit zu verfolgen und zu analysieren, z. B. Auftragserfüllung, Lieferung oder Kundendienst.
  • Webanwendung (soziales Netzwerk): Flink kann verwendet werden, um Webanwendungen zu nutzen, die eine Echtzeitverarbeitung von vom Benutzer generierten Daten erfordern, z. B. Nachrichten, Likes, Kommentare oder Empfehlungen.

Weitere Informationen zu gängigen Anwendungsfällen, die unter Apache Flink Anwendungsfälle beschrieben sind.

Apache Flink-Cluster in HDInsight auf AKS sind ein vollständig verwalteter Dienst. Die Vorteile der Erstellung eines Flink-Clusters in HDInsight auf AKS sind hier aufgeführt.

Merkmal Beschreibung
Leichte Erstellung Sie können einen neuen Flink-Cluster in HDInsight in Minuten mit dem Azure-Portal, Azure PowerShell oder dem SDK erstellen. Siehe Erste Schritte mit Apache Flink-Cluster in HDInsight auf AKS.
Benutzerfreundlichkeit Flink-Cluster in HDInsight auf AKS umfassen portalbasierte Konfigurationsverwaltung und Skalierung. Zusätzlich dazu mit der Auftragsverwaltungs-API verwenden Sie die REST-API oder das Azure-Portal für die Auftragsverwaltung.
REST-APIs Flink-Cluster in HDInsight auf AKS umfassen die Auftragsverwaltungs-API. Dabei handelt es sich um eine Methode zur Flink-Auftragsübermittlung auf Basis einer REST-API, um Aufträge im Azure-Portal remote zu senden und zu überwachen.
Bereitstellungstyp Flink kann Anwendungen im Sitzungsmodus oder anwendungsmodus ausführen. Derzeit unterstützt HDInsight auf AKS nur Sitzungscluster. Sie können mehrere Flink-Aufträge auf einem Sitzungscluster ausführen. Der App-Modus befindet sich in der Roadmap für HDInsight auf AKS-Clustern.
Unterstützung für Metastore Flink-Cluster in HDInsight auf AKS können Kataloge mit Hive-Metastore in verschiedenen offenen Dateiformaten mit Remote-Checkpoints in Azure Data Lake Storage Gen2 unterstützen.
Unterstützung für Azure Storage Flink-Cluster in HDInsight können Azure Data Lake Storage Gen2 als Dateisenke verwenden. Weitere Informationen zu Data Lake Storage Gen2 finden Sie unter Azure Data Lake Storage Gen2.
Integration in Azure-Dienste Flink-Cluster in HDInsight auf AKS bietet eine Integration in Kafka sowie Azure Event Hubs und Azure HDInsight. Sie können Streaminganwendungen mithilfe von Event Hubs oder HDInsight erstellen.
Anpassungsfähigkeit HDInsight auf AKS ermöglicht es Ihnen, die Flink-Clusterknoten basierend auf dem Zeitplan mit der Autoskalierungsfunktion zu skalieren. Siehe Automatische Skalierung von Azure HDInsight auf AKS-Clustern.
Zustands-Back-End HDInsight auf AKS verwendet die RocksDB als Standard-State-Backend. RocksDB ist ein einbettbarer persistenter Schlüsselwertspeicher für schnelle Speicherung.
Kontrollpunkte In HDInsight auf AKS-Clustern ist Checkpointing standardmäßig aktiviert. Standardeinstellungen für HDInsight auf AKS verwalten die letzten fünf Prüfpunkte im dauerhaften Speicher. Falls Ihr Auftrag fehlschlägt, kann der Auftrag vom neuesten Prüfpunkt neu gestartet werden.
Inkrementelle Prüfpunkte RocksDB unterstützt inkrementelle Prüfpunkte. Wir empfehlen die Verwendung inkrementeller Prüfpunkte für große Zustände. Sie müssen dieses Feature manuell aktivieren. Wenn Sie in Ihrem flink-conf.yaml: state.backend.incremental: true einen Standardwert festlegen, werden inkrementelle Prüfpunkte aktiviert, es sei denn, die Anwendung setzt diese Einstellung im Code außer Kraft. Diese Aussage ist standardmäßig wahr. Alternativ können Sie diesen Wert direkt im Code konfigurieren (setzt den Konfigurationsstandard außer Kraft) EmbeddedRocksDBStateBackend` backend = new `EmbeddedRocksDBStateBackend(true);. Standardmäßig behalten wir die letzten fünf Prüfpunkte im konfigurierten Prüfpunktverzeichnis bei. Dieser Wert kann geändert werden, indem die Konfiguration im Abschnitt "Konfigurationsverwaltung" state.checkpoints.num-retained: 5 geändert wird.

Apache Flink-Cluster in HDInsight auf AKS enthalten die folgenden Komponenten, sie sind standardmäßig auf den Clustern verfügbar.

Schauen Sie sich die Roadmap an, um zu erfahren, was bald kommt!

Flink plant Jobs mit drei verteilten Komponenten, Job-Manager, Task-Manager und Job-Client, die in einem Leader-Follower Muster festgelegt sind.

Flink Job: Ein Flink-Auftrag oder -Programm besteht aus mehreren Aufgaben. Aufgaben sind die grundlegende Ausführungseinheit in Flink. Jede Flink-Aufgabe verfügt je nach Parallelitätsebene über mehrere Instanzen, und jede Instanz wird auf einem TaskManager ausgeführt.

Job Manager: Der Job Manager fungiert als Planer und plant Aufgaben mit den Aufgabenmanagern.

Task-Manager-: Task-Manager verfügen über ein oder mehrere Slots, um Aufgaben parallel auszuführen.

Auftragsclient: Auftragsclient kommuniziert mit dem Auftragsmanager, um Flink-Aufträge zu übermitteln.

Flink Web UI-: Flink bietet eine Web-UI zum Überprüfen, Überwachen und Debuggen ausgeführter Anwendungen.

Flink-Prozessdiagramm, das zeigt, wie der Job, der Job-Manager, der Task-Manager und der Job-Client zusammenarbeiten.

Referenz