Schlüsselkonzepte von Managed Service for Apache Spark

In diesem Dokument werden die wichtigsten Konzepte, grundlegenden Bausteine, Kernfunktionen und Vorteile von Managed Service for Apache Spark erläutert. Wenn Sie diese Grundlagen kennen, können Sie Managed Service for Apache Spark effektiv für Ihre Datenverarbeitungsaufgaben nutzen.

Clusterbasiertes Modell

Dies ist die Standardmethode für die Nutzung von Managed Service for Apache Spark, bei der die Infrastruktur im Mittelpunkt steht. Sie haben die vollständige Kontrolle über eine dedizierte Gruppe virtueller Maschinen für Ihre Datenverarbeitungsaufgaben.

  • Cluster: Ein Cluster ist Ihre persönliche Datenverarbeitungs-Engine, die aus virtuellen Maschinen besteht. Google Cloud Sie erstellen einen Cluster, um Open-Source-Frameworks wie Apache Spark und Apache Hadoop auszuführen. Sie haben die vollständige Kontrolle über die Clustergröße, Maschinentypen und Konfiguration.
  • Jobs: Ein Job ist eine bestimmte Aufgabe, z. B. ein PySpark-Skript oder eine Hadoop-Abfrage. Anstatt einen Job direkt in einem Cluster auszuführen, senden Sie ihn an Managed Service for Apache Spark, der die Jobausführung für Sie verwaltet. Sie können mehrere Jobs an den Cluster senden.
  • Workflowvorlagen: Eine Workflowvorlage ist eine wiederverwendbare Definition, mit der eine Reihe von Jobs (ein Workflow) orchestriert wird. Sie kann Abhängigkeiten zwischen Jobs definieren, z. B. um einen Machine-Learning-Job erst auszuführen, nachdem ein Job zur Datenbereinigung erfolgreich abgeschlossen wurde. Der Workflow aus der Vorlage kann in einem vorhandenen Cluster oder in einem temporären (sitzungsspezifischen) Cluster ausgeführt werden, der zum Ausführen des Workflows erstellt und nach Abschluss des Workflows gelöscht wird. Sie können die Vorlage verwenden, um den definierten Workflow bei Bedarf auszuführen.
  • Autoscaling-Richtlinien: Eine Autoscaling-Richtlinie enthält Regeln, die Sie definieren, um Worker-Maschinen basierend auf der Clusterarbeitslast zu einem Cluster hinzuzufügen oder daraus zu entfernen. So können Sie die Clusterkosten und -leistung dynamisch optimieren.

Serverloses Modell

Managed Service for Apache Spark ist das moderne, automatisierte Ausführungsmodell von Managed Service for Apache Spark. Sie können Jobs ausführen, ohne die zugrunde liegende Infrastruktur bereitstellen, verwalten oder skalieren zu müssen. Managed Service for Apache Spark übernimmt die Details für Sie.

  • Batches: Ein Batch (auch Batcharbeitslast genannt) ist das serverlose Äquivalent eines Managed Service for Apache Spark-Jobs. Sie senden Ihren Code, z. B. einen Spark-Job, an den Dienst. Managed Service for Apache Spark stellt die erforderlichen Ressourcen bei Bedarf bereit, führt den Job aus und gibt die Ressourcen dann wieder frei. Sie erstellen oder verwalten keine Cluster- oder Jobressourcen. Der Dienst übernimmt diese Aufgaben für Sie.
  • Interaktive Sitzungen: Interaktive Sitzungen bieten eine Live-Umgebung auf Abruf für die explorative Datenanalyse, in der Regel in einem Jupyter-Notebook. Interaktive Sitzungen bieten den Komfort eines temporären, serverlosen Arbeitsbereichs, in dem Sie Abfragen ausführen und Code entwickeln können, ohne Cluster- und Notebookressourcen bereitstellen und verwalten zu müssen.
  • Sitzungsvorlagen: Eine Sitzungsvorlage ist eine wiederverwendbare Konfiguration, mit der Sie interaktive Sitzungen definieren können. Die Vorlage enthält Sitzungseinstellungen wie Spark-Eigenschaften und Bibliotheksabhängigkeiten. Sie verwenden die Vorlage, um interaktive Sitzungsumgebungen für die Entwicklung zu erstellen, in der Regel in einem Jupyter-Notebook.

Metastore-Dienste

Managed Service for Apache Spark bietet verwaltete Dienste für die Verarbeitung von Metadaten, also Daten über Ihre Daten.

  • Metastore: Ein Metastore fungiert als zentraler Katalog für Datenschemas, z. B. Tabellen- und Spaltennamen und Datentypen. Mit einem Metastore können verschiedene Dienste, Cluster und Jobs die Struktur Ihrer Daten verstehen. In der Regel wird der Katalog in Cloud Storage gespeichert.
  • Föderation: Die Metadatenföderation ist eine erweiterte Funktion, mit der Sie auf Daten aus mehreren Metastores zugreifen und sie abfragen können, als würden Sie auf einen einzigen, einheitlichen Metastore zugreifen.

Notebook- und Entwicklungsumgebungen

Managed Service for Apache Spark-Notebooks und -IDEs sind mit integrierten Entwicklungsumgebungen verknüpft, in denen Sie Ihren Code schreiben und ausführen können.

  • BigQuery Studio und Workbench: Dies sind einheitliche Analyse- und Notebook-Umgebungen. Sie können Code schreiben (z. B. in einem Jupyter-Notebook) und einen Managed Service for Apache Spark-Cluster oder eine serverlose Sitzung als leistungsstarke Backend-Engine verwenden, um Ihren Code für große Datasets auszuführen.
  • JupyterLab-Plug-in für Managed Service for Apache Spark: Diese offizielle JupyterLab Erweiterung fungiert als Steuerfeld für Managed Service for Apache Spark in Ihrer Notebook Umgebung. Sie vereinfacht Ihren Workflow, da Sie Cluster durchsuchen, erstellen und verwalten sowie Jobs senden können, ohne die Jupyter-Oberfläche zu verlassen. Weitere Informationen
  • Python-Connector für Managed Service for Apache Spark Connect: Diese Python Bibliothek vereinfacht die Verwendung von Spark Connect mit Managed Service for Apache Spark. Sie übernimmt die Authentifizierung und Endpunktkonfiguration und macht es so viel einfacher, Ihre lokale Python-Umgebung, z. B. ein Notebook oder eine IDE, für die interaktive Entwicklung mit einem Remote-Cluster von Managed Service for Apache Spark zu verbinden. Weitere Informationen

Anpassung der Umgebung

Managed Service for Apache Spark bietet Tools und Komponenten zum Anpassen Ihrer Umgebung an bestimmte Anforderungen. Im Abschnitt „Dienstprogramme“ in der Google Cloud Konsole finden Sie hilfreiche Tools zum Anpassen Ihrer Managed Service for Apache Spark-Umgebung.