Membuat profil penggunaan resource Google Cloud Serverless untuk Apache Spark

Dokumen ini menjelaskan cara membuat profil penggunaan resource Serverless untuk Apache Spark. Google Cloud Cloud Profiler terus mengumpulkan dan melaporkan informasi penggunaan CPU dan alokasi memori aplikasi. Anda dapat mengaktifkan pembuatan profil saat mengirimkan batch atau membuat beban kerja sesi dengan menggunakan properti pembuatan profil yang tercantum dalam tabel berikut. Google Cloud Serverless for Apache Spark menambahkan opsi JVM terkait ke konfigurasi spark.driver.extraJavaOptions dan spark.executor.extraJavaOptions yang digunakan untuk workload.

Opsi Deskripsi Nilai Default
dataproc.profiling.enabled Mengaktifkan pembuatan profil workload true atau false false
dataproc.profiling.name Nama profil di layanan Profiler PROFILE_NAME spark-WORKLOAD_TYPE-WORKLOAD_ID, dengan:
  • WORKLOAD_TYPE disetel ke batch atau session
  • WORKLOAD_ID disetel ke batchId atau sessionId

Catatan:

  • Serverless untuk Apache Spark menetapkan versi profiler ke UUID batch atau UUID sesi.
  • Profiler mendukung jenis beban kerja Spark berikut: Spark, PySpark, SparkSql, dan SparkR.
  • Beban kerja harus berjalan selama lebih dari tiga menit agar Profiler dapat mengumpulkan dan mengupload data ke project.
  • Anda dapat mengganti opsi pembuatan profil yang dikirimkan dengan workload dengan membuat SparkConf, lalu menyetel extraJavaOptions dalam kode Anda. Perhatikan bahwa menyetel properti extraJavaOptions saat workload dikirimkan tidak akan menggantikan opsi pembuatan profil yang dikirimkan bersama workload.

Untuk contoh opsi profiler yang digunakan dengan pengiriman batch, lihat contoh workload batch PySpark.

Mengaktifkan pembuatan profil

Selesaikan langkah-langkah berikut untuk mengaktifkan pembuatan profil pada beban kerja:

  1. Aktifkan Profiler.
  2. Jika Anda menggunakan akun layanan VM kustom, berikan peran Cloud Profiler Agent ke akun layanan VM kustom. Peran ini berisi izin Profiler yang diperlukan.
  3. Tetapkan properti pembuatan profil saat Anda mengirimkan beban kerja batch atau membuat template sesi.

Contoh workload batch PySpark

Contoh berikut menggunakan gcloud CLI untuk mengirimkan workload batch PySpark dengan profil yang diaktifkan.

gcloud dataproc batches submit pyspark PYTHON_WORKLOAD_FILE \
    --region=REGION \
    --properties=dataproc.profiling.enabled=true,dataproc.profiling.name=PROFILE_NAME \
    --  other args

Dua profil dibuat:

  • PROFILE_NAME-driver untuk memprofilkan tugas driver spark
  • PROFILE_NAME-executor untuk memprofilkan tugas eksekutor spark

Lihat profil

Anda dapat melihat profil dari Profiler di konsol Google Cloud .

Langkah berikutnya