Dataflow bietet den Tab Ausführungsdetails in der webbasierten Monitoring-Benutzeroberfläche. Anhand der Informationen auf diesem Tab können Sie die Leistung für Ihre Jobs optimieren und herausfinden, warum Ihr Job möglicherweise langsamer ist oder hängen bleibt. Nachdem Sie Ihren Job gestartet haben, können Sie den Tab Ausführungsdetails über die Dataflow-Monitoring-Oberfläche aufrufen. Weitere Informationen finden Sie unter Dataflow-Monitoring-Oberfläche aufrufen.
Dieses Feature verursacht keine zusätzliche CPU- oder Netzwerknutzung für Ihre VMs. Die Ausführungsdetails werden vom Backend-Monitoring-System von Dataflow erfasst, das sich nicht auf die Leistung des Jobs auswirkt.
Diese Seite bietet eine allgemeine Zusammenfassung der Ausführungsdetails und ihrer Benutzeroberfläche. Weitere Informationen zur Fehlerbehebung finden Sie unter Pipelinefehler beheben.
Wann werden Ausführungsdetails verwendet?
Im Folgenden sind gängige Szenarien für die Verwendung von Ausführungsdetails bei der Ausführung von Dataflow-Jobs aufgeführt:
- Ihre Pipeline hängt fest und Sie möchten das Problem beheben.
- Ihre Pipeline ist langsam und Sie möchten eine Pipeline-Optimierung vornehmen.
- Es muss nichts korrigiert werden, aber Sie möchten die Ausführungsdetails der Pipeline einsehen, um Ihren Job zu verstehen.
Terminologie
Um die Ausführungsdetails effektiv zu nutzen, ist es hilfreich zu verstehen, was folgende Konzepte für Dataflow-Jobs bedeuten.
Dataflow-Terminologie
- Fusion-Optimierung: Der Prozess von Dataflow, der mehrere Schritte oder Transformationen umfasst. Dadurch werden von Nutzern übermittelte Pipelines optimiert. Weitere Informationen finden Sie unter Fusion-Optimierung.
- Phasen: Die Einheit der in Dataflow-Pipelines zusammengefassten Schritte.
- Letzte Phase: Der letzte Knoten in Dataflow-Pipelines. Eine Pipeline kann mehrere endgültige Knoten haben.
Batchterminologie
- Kritische Pfade: Die Abfolge von Phasen einer Pipeline, die zur gesamten Joblaufzeit beitragen. Beispielsweise schließt diese Sequenz die folgenden Phasen aus:
- Zweige der Pipeline, die früher als der Gesamtjob abgeschlossen wurden.
- Eingaben, die die nachgelagerte Verarbeitung nicht verzögert haben.
- Worker: Compute Engine-VM-Instanzen, die einen Dataflow-Job ausführen.
- Arbeitselemente: Die Arbeitseinheiten, die einem von Dataflow ausgewählten Bundle entsprechen.
Streamingterminologie
- Datenaktualität: Die Zeit zwischen der Echtzeit und dem Ausgabewasserzeichen. Weitere Informationen finden Sie unter Datenaktualität.
Ausführungsdetails-Tab verwenden
Der Tab Ausführungsdetails enthält vier Ansichten: Phasenfortschritt, Phaseninfo (Feld innerhalb von Phasenfortschritt), Phasen-Workflow und Worker-Fortschritt.
Die Ansicht Phasenworkflow ist automatisch für alle Batch- und Streaming-Jobs aktiviert. Batch- und Streamingjobs haben auch die Ansicht Phasenfortschritt und Batchjobs haben die zusätzliche Ansicht Workerfortschritt.
In diesem Abschnitt werden die einzelnen Ansichten erläutert und Beispiele für erfolgreiche und fehlgeschlagene Dataflow-Jobs bereitgestellt.
Phasenfortschritt für Batchjobs
In der Ansicht Phasenfortschritt für Batchjobs werden die Ausführungsphasen des Jobs sortiert nach Start und Ende angezeigt. Die Dauer wird durch einen Balken dargestellt. Beispielsweise können Sie anhand des längsten Balkens die längsten Ausführungsphase einer Pipeline visuell ermitteln.
Unter jedem Balken befindet sich eine Sparkline, die den Fortschritt der Phase im Zeitverlauf zeigt. Klicken Sie auf die Ein/Aus-Schaltfläche für den kritischen Pfad, um die Phasen hervorzuheben, die zur Gesamtlaufzeit des Jobs beigetragen haben. Außerdem können Sie über Phasen filtern speziell die Phasen auswählen, die Sie interessieren.
Phasenfortschritt für Streamingjobs
Die Ansicht Phasenfortschritt für Streamingjobs kann in zwei Abschnitte unterteilt werden. Die erste Hälfte der Ansicht zeigt ein Diagramm mit der Datenaktualität für jede Ausführungsphase des Jobs. Wenn Sie den Mauszeiger auf das Diagramm bewegen, wird der Wert für die Datenaktualität zu diesem bestimmten Zeitpunkt angezeigt.
Die zweite Hälfte der Ansicht zeigt die Ausführungsphasen des Jobs in einer topologischen Reihenfolge. Phasen ohne untergeordnete Phasen werden zuerst angezeigt, gefolgt von ihren untergeordneten Phasen. Diese Ansicht erleichtert das Identifizieren von Phasen einer Pipeline, die länger als erwartet dauern. Die Balkengrößen sind relativ zur längsten Datenaktualität des gesamten Zeitbereichs.
Streamingjobs werden ausgeführt, bis sie abgebrochen, per Drain beendet oder aktualisiert werden.
- Mit der Zeitauswahl im Diagramm können Sie den Bereich auf einen nützlicheren Zeitraum eingrenzen.
- Wählen Sie im Menü Phasen filtern die gewünschten Phasen aus.
In der Ansicht Phasenfortschritt können Sie auf zwei verschiedene Arten leichter feststellen, wann Ihr Streamingjob langsam ist oder hängen bleibt:
Das Diagramm Datenaktualität nach Phasen enthält die Anomalieerkennung, die automatisch Zeitfenster anzeigt, in denen die Datenaktualität fehlerhaft aussieht. Das Diagramm zeigt „potenzielles Hängenbleiben“ an, wenn die Datenaktualität für das ausgewählte Zeitfenster das 99. Perzentil überschreitet. Entsprechend zeigt das Diagramm eine potenzielle Verlangsamung an, wenn die Datenaktualität das 95. Perzentil überschreitet.
Engpässe können erkannt werden, indem Sie den Mauszeiger auf einen Zeitraum im Diagramm bewegen, in dem unerwartete Ergebnisse angezeigt werden. Längere Balken weisen auf langsamere Phasen hin. Alternativ können Sie auf die x-Achse des Diagramms klicken, um die Daten für diesen Zeitpunkt anzuzeigen. Ein gängiger Ansatz zur Ermittlung der Phase, die zu Hängenbleiben oder Verlangsamung führt, besteht darin, die vorgelagerte (oberste) oder am weitesten nachgelagerte (unterste) Phase zu finden, die den Ausschlag bei der Datenaktualität verursacht. Dieser Ansatz eignet sich nicht für alle Szenarien. Möglicherweise ist weitere Fehlerbehebung erforderlich, um die genaue Ursache zu ermitteln.
Feld „Phaseninfo“
Das Feld Phaseninfo zeigt eine Liste von Schritten an, die mit einer Phase verknüpft sind, sortiert nach absteigender Echtzeit. Bewegen Sie zum Öffnen des Steuerfelds den Mauszeiger auf einen der Balken in der Ansicht Phasenfortschritt und klicken Sie auf Details ansehen.
Phasen-Workflow
Der Phasenworkflow zeigt die Ausführungsphasen des Jobs an, die als Workflowgrafik dargestellt werden. Um nur die Phasen anzeigen zu lassen, die direkt zur Gesamtlaufzeit des Jobs beigetragen haben, klicken Sie auf den Schalter Kritischer Pfad.
Worker-Fortschritt
Bei Batchjobs werden in der Ansicht Worker-Fortschritt die Worker für eine bestimmte Phase angezeigt. Diese Ansicht ist für Streamingjobs nicht verfügbar.
Jeder Balken ist einem Arbeitselement zugeordnet, der für einen Worker geplant ist. Unter jedem Worker finden Sie eine Sparkline, die die CPU-Auslastung auf dem Worker erfasst. Auslastungsprobleme können somit besser erkannt werden.
Aufgrund der Dichte dieser Visualisierung müssen Sie diese Ansicht filtern, indem Sie eine Phase vorab auswählen. Identifizieren Sie zuerst eine Phase in der Ansicht Phasenfortschritt. Bewegen Sie den Mauszeiger auf diese Phase und klicken Sie auf Worker ansehen, um die Ansicht Worker-Fortschritt aufzurufen.
Nächste Schritte
- Weitere Informationen zur Fehlerbehebung bei langsamen oder hängenden Jobs
- Informationen zu den verschiedenen Komponenten der webbasierten Monitoring-Benutzeroberfläche von Dataflow.