Allgemein
Was ist Managed Service for Apache Spark?
Managed Service for Apache Spark ist ein schneller, nutzerfreundlicher, kostengünstiger und vollständig verwalteter Dienst, über den Sie Apache Spark und Apache Hadoop auf der Google Cloud Platform ausführen können. Managed Service for Apache Spark stellt große oder kleine Cluster schnell bereit, unterstützt viele beliebte Jobtypen und ist in andere Google Cloud Platform-Dienste wie Cloud Storage und Cloud Logging eingebunden. Somit hilft die Lösung, die Gesamtbetriebskosten zu senken.
Wie unterscheidet sich der verwaltete Dienst für Apache Spark von herkömmlichen Hadoop-Clustern?
Managed Service for Apache Spark ist ein verwalteter Spark-/Hadoop-Dienst, der Spark und Hadoop einfach, schnell und leistungsstark machen soll. In einer herkömmlichen Hadoop-Bereitstellung, selbst in solchen, die Cloud-basiert sind, muss die Arbeit im Cluster installiert, konfiguriert, verwaltet und organisiert werden. Der Managed Service für Apache Spark nimmt Ihnen dagegen die Erstellung, die Verwaltung und das Monitoring von Clustern sowie die Joborchestrierung ab.
Wie kann ich Managed Service for Apache Spark verwenden?
In Abhängigkeit von Ihren Anforderungen und Funktionen gibt es verschiedene Methoden zur Verwendung eines Managed Service for Apache Spark-Clusters. Sie können über die browserbasierteGoogle Cloud console mit Managed Service for Apache Spark interagieren. Da Managed Service for Apache Spark in die Google Cloud CLI integriert ist, können Sie auch die Google Cloud CLI verwenden. Für den programmatischen Zugriff auf Cluster steht Ihnen die Managed Service for Apache Spark REST API zur Verfügung. Sie können auch SSH-Verbindungen zu Master- oder Worker-Knoten im Cluster herstellen.
Wie funktioniert Managed Service for Apache Spark?
Managed Service for Apache Spark ist ein verwaltetes Framework, das auf der Google Cloud Platform ausgeführt wird und mehrere beliebte Tools für die Datenverarbeitung kombiniert, darunter Apache Hadoop, Spark, Hive und Pig. Managed Service for Apache Spark bietet verschiedene Steuerungs- und Integrationsmechanismen, mit denen Lebenszyklus, Verwaltung und Koordination von Clustern abgestimmt werden. Managed Service for Apache Spark ist im YARN-Anwendungsmanager eingebunden, um die Verwaltung und Verwendung der Cluster zu vereinfachen.
Welche Arten von Jobs kann ich ausführen?
Managed Service for Apache Spark bietet sofortigen End-to-End-Support für viele gängige Jobtypen wie Spark, Spark SQL, PySpark, MapReduce, Hive und Pig.
Welchen Clustermanager verwendet Managed Service for Apache Spark mit Spark?
Managed Service for Apache Spark führt Spark unter YARN aus.
Wie oft werden die Komponenten in Managed Service for Apache Spark aktualisiert?
Managed Service for Apache Spark wird aktualisiert, wenn für zugrunde liegende Komponenten (Hadoop, Spark, Hive, Pig) neue Hauptversionen veröffentlicht werden. Jede Hauptversion von Managed Service for Apache Spark unterstützt bestimmte Versionen der einzelnen Komponenten (siehe Unterstützte Versionen von Managed Service for Apache Spark).
Ist Managed Service for Apache Spark in andere Google Cloud-Produkte integriert?
Ja, Managed Service for Apache Spark ist auf native und automatische Weise in Compute Engine, Cloud Storage, Bigtable, BigQuery, Logging und Cloud Monitoring eingebunden. Darüber hinaus ist der Managed Service for Apache Spark in Tools eingebunden, die mit der Cloud Platform interagieren, darunter die gcloud CLI und die Google Cloud console.
Kann ich einen persistenten Cluster ausführen?
Nach dem Start werden Managed Service for Apache Spark-Cluster so lange ausgeführt, bis sie heruntergefahren werden. Sie können einen Managed Service for Apache Spark-Cluster so lange wie nötig ausführen.
Clusterverwaltung
Kann ich mehrere Cluster gleichzeitig ausführen?
Ja, Sie können mehrere Managed Service for Apache Spark-Cluster pro Projekt gleichzeitig ausführen. Standardmäßig unterliegen alle Projekte Google Cloud-Ressourcenkontingenten. Sie können aber auf einfache Weise die Nutzung Ihres Kontingents prüfen und eine Erhöhung anfordern. Weitere Informationen finden Sie unter Ressourcenkontingente für Managed Service for Apache Spark.
Wie kann ich einen Cluster erstellen oder löschen?
Es gibt verschiedene Möglichkeiten, um Cluster zu erstellen und zu löschen. In den Managed Service for Apache Spark-Bereichen der Google Cloud console können Sie Cluster ganz einfach über Ihren Browser verwalten. Cluster lassen sich auch über die Befehlszeile mit der gcloud CLI verwalten. Bei komplexeren oder erweiterten Anwendungsfällen kann die REST API für den Cloud Managed Service für Apache Spark zur programmatischen Verwaltung von Clustern verwendet werden.
Kann ich beim Erstellen eines Clusters benutzerdefinierte Einstellungen vornehmen?
Managed Service for Apache Spark unterstützt Initialisierungsaktionen, die beim Erstellen von Clustern ausgeführt werden. Bei diesen Initialisierungsaktionen kann es sich um Skripts oder ausführbare Dateien handeln, die Managed Service for Apache Spark bei der Bereitstellung des Clusters ausführt, um Einstellungen anzupassen, Anwendungen zu installieren oder sonstige Änderungen am Cluster vorzunehmen.
Wie kann ich die Größe des Clusters an meine Anforderungen anpassen?
Entscheidungen bezüglich der Clustergröße hängen von verschiedenen Faktoren wie auszuführende Aufgaben, Kostenbeschränkungen, Geschwindigkeitsanforderungen und Ressourcenkontingente ab. Da Managed Service for Apache Spark auf einer Vielzahl von Maschinentypen bereitgestellt werden kann, sind Sie in der Lage, die benötigten Ressourcen jederzeit flexibel auszuwählen.
Kann ich die Größe des Clusters anpassen?
Ja, die Größe des Clusters lässt sich auch während der Jobverarbeitung mühelos anpassen. Sie können die Größe des Clusters über die Google Cloud console oder über die Befehlszeile ändern. Durch die Anpassung der Größe erhöht bzw. verringert sich die Anzahl der Worker im Cluster möglicherweise. Einem Cluster hinzugefügte Worker haben den gleichen Typ und die gleiche Größe wie bestehende Worker. Die Anpassung der Clustergröße wird bis auf Ausnahmen wie die Folgenden akzeptiert und unterstützt: Reduzieren der Anzahl der Worker auf "1" oder Reduzieren der HDFS-Kapazität auf einen Wert, der unterhalb des für den Abschluss des Jobs erforderlichen Betrags liegt.
Job- und Workflow-Verwaltung
Wie kann ich Jobs im Cluster senden?
Es gibt verschiedene Möglichkeiten, um Jobs in einem Managed Service for Apache Spark-Cluster zu senden. Am einfachsten ist es, die Seite Job senden für den Managed Service for Apache Spark in der Google Cloud Console oder den gcloud CLI-Befehl gcloud dataproc jobs submit zu verwenden. Informationen zur programmatischen Jobübermittlung finden Sie in der Dataproc API-Referenz.
Kann ich mehrere Jobs gleichzeitig ausführen?
Ja, Sie können in einem Managed Service for Apache Spark-Cluster mehrere Jobs gleichzeitig ausführen. Cloud Managed Service for Apache Spark nutzt einen Ressourcenmanager (YARN) und anwendungsspezifische Konfigurationen wie die Skalierung mit Spark, um die Verwendung von Ressourcen im Cluster zu optimieren. Die Skalierung der Jobleistung erfolgt entsprechend der Clustergröße und Anzahl aktiver Jobs.
Kann ich im Cluster ausgeführte Jobs abbrechen?
Ja, Jobs können über die Google Cloud console-Weboberfläche oder die Befehlszeile abgebrochen werden. Managed Service for Apache Spark nutzt die Abbruchfunktion der YARN-Anwendung, um Jobs auf Anfrage abzubrechen.
Kann ich Jobs im Cluster automatisieren?
Es gibt verschiedene Möglichkeiten, um Jobs so einzustellen, dass sie automatisch auf dem Cluster ausgeführt werden. Mithilfe der gcloud-Befehlszeile oder der REST APIs von Managed Service for Apache Spark können Sie die Verwaltung und den Workflow von Clustern und Jobs automatisieren.
Entwicklung
Welche Entwicklungssprachen werden unterstützt?
Sie können die von Spark/Hadoop unterstützten Sprachen wie Java, Scala, Python und R verwenden.
Gibt es eine API für Managed Service for Apache Spark?
Ja, Managed Service for Apache Spark bietet eine Reihe von RESTful APIs, mit denen Sie programmatisch mit Clustern und Jobs interagieren können.
Kann ich eine SSH-Verbindung zum Cluster herstellen?
Ja, Sie können eine SSH-Verbindung zu jeder Maschine (Master- oder Worker-Knoten) in einem Cluster herstellen. Sie können eine SSH-Verbindung über einen Browser oder die Befehlszeile herstellen.
Habe ich Zugriff auf die Webbenutzeroberflächen von Hadoop/Spark?
Ja, die Hadoop- und Spark-Benutzeroberflächen (Spark, Hadoop, YARN) können über einen Cluster aufgerufen werden. Statt Ports für die Weboberflächen zu öffnen, empfehlen wir die Verwendung eines SSH-Tunnels, der den Traffic sicher vom Cluster über die SSH-Verbindung weiterleitet.
Kann ich Software auf dem Cluster installieren oder verwenden?
Ja, wie auch bei Hadoop-Clustern oder -Servern können Sie Software auf einem Managed Service for Apache Spark-Cluster installieren und verwalten.
Wie lautet der Standard-Replikationsfaktor?
Aufgrund von Leistungsaspekten und der hohen Zuverlässigkeit des an Managed Service for Apache Spark-Clustern angehängten Speichers ist der Standard-Replikationsfaktor auf 2 eingestellt.
Welches Betriebssystem wird für Managed Service for Apache Spark verwendet?
Managed Service for Apache Spark basiert auf Debian und Ubuntu. Die neuesten Images basieren auf Debian 10 Buster und Ubuntu 18.04 LTS.
Wo erhalte ich Informationen über Hadoop-Streaming?
Lesen Sie die Projektdokumentation zu Apache (nur auf Englisch verfübar).
Wie installiere ich den Befehl "gcloud dataproc"?
Beim Installieren der gcloud CLI wird automatisch das standardmäßige gcloud-Befehlszeilentool installiert, einschließlich der gcloud dataproc-Befehle.
Datenzugriff und -verfügbarkeit
Wie kann ich Daten einem Cluster hinzufügen und daraus entfernen?
Managed Service for Apache Spark nutzt das Hadoop Distributed File System (HDFS) als Speicher. Darüber hinaus installiert Managed Service for Apache Spark automatisch den HDFS-kompatiblen Google Cloud Storage-Connector, der die gleichzeitige Verwendung von Cloud Storage und HDFS ermöglicht. Daten können dem Cluster über die Upload-/Download-Funktion in HDFS oder Cloud Storage hinzugefügt bzw. daraus entfernt werden.
Kann ich Cloud Storage mit Dataproc verwenden?
Ja, in Managed Service for Apache Spark-Clustern wird der Cloud Storage-Connector automatisch installiert. Die Verwendung von Cloud Storage statt des herkömmlichen HDFS bietet eine Vielzahl von Vorteilen, u. a. erhöhte Datenpersistenz, Zuverlässigkeit und Leistung.
Gibt es einen Support für den Cloud Storage-Connector?
Ja, bei Verwendung mit Managed Service for Apache Spark erhalten Sie für den Cloud Storage-Connector den gleichen Support wie für Managed Service for Apache Spark (siehe Support). Alle Connector-Nutzer können das Tag google-cloud-dataproc auf Stack Overflow für Fragen und Antworten zu Connectors verwenden.
Welche Dateigröße ist ideal für Datasets in HDFS und Cloud Storage?
Um die Leistung zu verbessern, sollten Sie Daten in größeren Dateien speichern, z. B. in Dateien mit einer Größe von 256 MB bis 512 MB.
Wie zuverlässig ist Managed Service for Apache Spark?
Da Managed Service for Apache Spark auf zuverlässigen und bewährten Google Cloud Platform-Technologien wie Compute Engine, Cloud Storage und Monitoring basiert, ist die Lösung auf hohe Verfügbarkeit und Zuverlässigkeit ausgelegt. Da es sich um ein allgemein verfügbares Produkt handelt, gilt das Managed Service for Apache Spark-SLA.
Was geschieht mit meinen Daten, wenn ein Cluster heruntergefahren wird?
Alle in Cloud Storage gespeicherten Daten werden beibehalten, nachdem der Cluster heruntergefahren wurde. Dies ist einer der Gründe, die für Cloud Storage gegenüber HDFS sprechen, da HDFS-Daten beim Herunterfahren des Clusters entfernt werden. (Es sei denn, der Cluster wird vor dem Herunterfahren an einen nichtflüchtigen Speicherort übertragen.)
Logging, Monitoring und Fehlerbehebung
Welche Arten von Logging und Monitoring sind verfügbar?
Standardmäßig sind Managed Service for Apache Spark-Cluster in Monitoring und Logging eingebunden. Dank Monitoring und Logging ist es einfach, detaillierte Informationen zum Zustand, zur Leistung und zum Status Ihrer Managed Service for Apache Spark-Cluster zu erhalten. Sowohl Anwendungslogs (YARN, Spark usw.) als auch Systemlogs werden an Logging weitergeleitet.
Wie kann ich Logs aus Managed Service for Apache Spark aufrufen?
Es gibt verschiedene Möglichkeiten, um Logs aus Managed Service for Apache Spark abzurufen. Wechseln Sie zu Logging, um zusammengefasste Clusterlogs in einem Webbrowser anzuzeigen. Darüber hinaus können Sie die Befehlszeile (SSH) verwenden, um Logs manuell anzuzeigen oder die Ausgabe der Anwendungen zu überwachen. Sie können Informationen auch über die Web-Benutzeroberflächen der Hadoop-Anwendung wie YARN abrufen.
Wie können Cluster überwacht werden?
Cluster können ganz einfach über Monitoring oder den Cloud Managed Service for Apache Spark-Bereich der Google Cloud consoleim Blick behalten werden. Sie können Cluster auch über die Befehlszeile (SSH) oder die Webbenutzeroberflächen der Anwendung (Spark, YARN usw.) überwachen.
Sicherheit und Zugriff
Wie werden meine Daten gesichert?
Google Cloud Platform verwendet ein komplexes Sicherheitsmodell, das auch für Cloud Managed Service for Apache Spark eingesetzt wird. Managed Service for Apache Spark bietet Authentifizierungs-, Autorisierungs- und Verschlüsselungsmechanismen wie SSL zum Sichern von Daten. Daten können vom Nutzer bei der Clustererstellung und Jobübermittlung auf dem Weg zum und vom Cluster verschlüsselt werden.
Wie kann ich den Zugriff auf meinen Managed Service for Apache Spark-Cluster steuern?
Die Google Cloud Platform bietet Authentifizierungsmechanismen, die mit Managed Service for Apache Spark verwendet werden können. Der Zugriff auf Managed Service for Apache Spark-Cluster und -Jobs kann Nutzern auf Projektebene gewährt werden.
Abrechnung
Wie wird Managed Service for Apache Spark abgerechnet?
Managed Service for Apache Spark wird im Sekundentakt abhängig von der Größe eines Clusters und seiner Betriebsdauer abgerechnet. Für die Berechnung des Clusteranteils wird von Managed Service for Apache Spark eine Pauschalgebühr in Rechnung gestellt, die auf der Anzahl virtueller CPUs (vCPUs) in einem Cluster basiert. Diese Pauschalgebühr ist unabhängig vom verwendeten Maschinentyp oder der Größe der Compute Engine-Ressourcen immer gleich.
Wird die Nutzung anderer Google Cloud-Ressourcen berechnet?
Ja, beim Ausführen eines Managed Service for Apache Spark-Clusters fallen Gebühren für andere im Cluster verwendete Google Cloud-Ressourcen an, beispielsweise für Compute Engine und Cloud Storage. Jedes Element wird in der Rechnung einzeln aufgeführt, sodass Sie genau nachvollziehen können, wie die Kosten berechnet und zugeordnet wurden.
Gibt es einen Mindest- oder Höchstzeitraum für die Abrechnung?
Google Cloud-Gebühren werden pro Sekunde, nicht pro Stunde berechnet. Derzeit besteht für Compute Engine eine Mindestabrechnungseinheit von einer Minute. Für Managed Service for Apache Spark wird demnach ebenfalls mindestens eine Minute berechnet.
Verfügbarkeit
Wer kann einen Managed Service for Apache Spark-Cluster erstellen?
Managed Service for Apache Spark ist allgemein verfügbar und kann somit von allen Kunden der Google Cloud Platform verwendet werden.
In welchen Regionen ist Managed Service for Apache Spark verfügbar?
Managed Service for Apache Spark ist in allen Regionen und Zonen der Google Cloud Platform verfügbar.