Cloud Profiler

Cloud Profiler sammelt und meldet fortlaufend Informationen zur CPU-Auslastung und Arbeitsspeicherzuweisung der Anwendung. Führen Sie folgende Schritte aus, um Profiler für Ihre Dataproc Spark- und Hadoop-Jobs zu aktivieren und zu verwenden.

Profilerstellung aktivieren

  1. Aktivieren Sie den Profiler.

  2. Erstellen Sie einen Dataproc-Cluster mit Dienstkontobereichen, die auf monitoring gesetzt sind, damit der Cluster mit dem Profiler-Dienst kommunizieren kann.

gcloud

gcloud dataproc clusters create cluster-name \
    --scopes=cloud-platform \
    --region=region \
    other args ...

Dataproc-Job mit Profiler-Optionen senden

  1. Dataproc- oder Hadoop-Job mit einer oder mehreren der folgenden Profiler-Optionen senden:
    Option Beschreibung Wert Erforderlich/Optional Default Hinweise
    cloud.profiler.enable Profilerstellung des Jobs aktivieren true oder false Erforderlich false
    cloud.profiler.name Name zum Erstellen des Profils im Profiler-Dienst profile-name Optional Dataproc-Job-UUID
    cloud.profiler.service.version Ein vom Nutzer bereitgestellter String zur Identifizierung und Unterscheidung von Profiler-Ergebnissen. Profiler Service Version Optional Dataproc-Job-UUID
    mapreduce.task.profile.maps Numerischer Bereich von Mapper-Aufgaben für die Profilerstellung (Beispiel: Geben Sie für bis zu 100 "0-100" an). number range Optional 0-10000 Gilt nur für Hadoop-Mapreduce-Jobs
    mapreduce.task.profile.reduces Numerischer Bereich von Reducer-Aufgaben für die Profilerstellung (Beispiel: Geben Sie für bis zu 100 "0-100" an). number range Optional 0-10000 Gilt nur für Hadoop-Mapreduce-Jobs

PySpark-Beispiel

gcloud

PySpark-Job mit Profilerstellung senden – Beispiel:

gcloud dataproc jobs submit pyspark python-job-file \
    --cluster=cluster-name \
    --region=region \
    --jars=jar-file \
    --properties=cloud.profiler.enable=true,cloud.profiler.name=profiler_name,cloud.profiler.service.version=version \
    --  job args

Es werden zwei Profile erstellt:

  1. profiler_name-driver zur Profilerstellung für Spark-Treiberaufgaben
  2. profiler_name-executor zur Profilerstellung der Spark Executor-Aufgaben

Beispiel: Wenn profiler_name "spark_word_count_job" ist, werden die Profile spark_word_count_job-driver und spark_word_count_job-executor erstellt.

Hadoop-Beispiel

gcloud

Hadoop-Job (teragen mapreduce) mit Profilerstellung senden – Beispiel:

gcloud dataproc jobs submit hadoop \
    --cluster=cluster-name \
    --region=region \
    --jars=jar-file \
    --properties=cloud.profiler.enable=true,cloud.profiler.name=profiler_name,cloud.profiler.service.version=version \
    --  teragen 100000 gs://bucket-name

Profile anzeigen

Sehen Sie sich Profile im Profiler in der Cloud Console an.

Weitere Informationen