FAQ Dataproc Serverless

Halaman ini berisi pertanyaan umum (FAQ) tentang Dataproc Serverless beserta jawabannya.

Kapan saya harus menggunakan Dataproc Serverless untuk Spark, bukan Dataproc di Compute Engine?

  • Dataproc Serverless:

    • Mendukung workload batch Spark dan sesi interaktif di notebook Jupyter kernel PySpark.
    • Dataproc Serverless membuat dan mengelola infrastruktur sesi interaktif dan workload Anda.
  • Dataproc di Compute Engine:

    • Mendukung pengiriman berbagai jenis tugas Spark, dan tugas berdasarkan komponen open source lainnya, seperti Flink, Hadoop, Hive, Pig, Presto, dan lainnya.

    • Tidak membuat dan mengelola infrastruktur. Anda membuat dan mengelola cluster Dataproc.

Apa yang dapat saya lakukan dengan Dataproc Serverless untuk Spark?

Bagaimana cara menyiapkan rencana eksekusi beban kerja?

Anda dapat menjalankan workload secara serentak atau berurutan. Rencana eksekusi Anda memengaruhi kuota resource Google Cloud Anda. Anda dapat menjalankan beban kerja sebanyak mungkin secara paralel sesuai dengan kuota resource batch.

Dapatkah saya menggunakan image kustom dengan Dataproc Serverless for Spark?

Dapatkah saya menentukan resource memori dan disk untuk workload Dataproc Serverless Spark?

Ya. Anda dapat menentukan tingkat disk dan komputasi eksekutor dan driver premium serta jumlah resource disk dan komputasi eksekutor dan driver yang akan dialokasikan saat Anda mengirimkan beban kerja (lihat Properti alokasi resource).

Bagaimana cara menentukan rentang alamat IP untuk jaringan VPC Dataproc Serverless?

Workload Dataproc Serverless untuk Spark berjalan dalam lingkungan Anda. Setiap driver Spark dan eksekutor Spark dalam workload Serverless Spark menggunakan satu alamat IP internal di jaringan VPC Dataproc Serverless Anda. /16 adalah rentang alamat CIDR yang ditentukan pengguna secara umum untuk jaringan VPC Serverless Dataproc. Anda dapat membatasi rentang alamat IP jaringan berdasarkan jumlah beban kerja serentak yang ingin dijalankan.

Apakah Dataproc Serverless mendukung residensi data?

Ya. Anda menentukan region tempat workload diproses. Temukan set data input dan output Anda di region yang ditentukan.

Bagaimana cara Dataproc Serverless memilih zona dalam region yang Anda tentukan untuk menjalankan beban kerja?

Dataproc Serverless memilih zona Compute Engine tempat workload dijalankan berdasarkan kapasitas dan ketersediaan. Jika zona tidak tersedia setelah workload dimulai, workload akan gagal, dan Anda harus mengirim ulang workload yang gagal.

Bagaimana cara workload Dataproc Serverless menggunakan resource komputasi?

Setiap beban kerja dieksekusi di resource komputasi sendiri. Beberapa pengiriman batch tidak berbagi atau menggunakan kembali resource komputasi.

Praktik Terbaik:

  • Optimalkan beban kerja Anda untuk tugas yang berjalan sedang, bukan tugas yang berjalan singkat.

  • Mempertahankan data yang diakses oleh beberapa beban kerja di Cloud Storage.

Di mana saya dapat menemukan informasi tentang pengumuman, fitur, perbaikan bug, masalah umum, dan penghentian Dataproc Serverless?

Lihat catatan rilis Dataproc Serverless.

Apakah beban kerja serentak bersaing untuk mendapatkan resource?

Workload Dataproc Serverless hanya bersaing untuk mendapatkan resource jika kuota resource Anda tidak memadai untuk menjalankan semua workload yang berjalan secara serentak. Jika tidak, workload akan sepenuhnya terisolasi satu sama lain.

Bagaimana kuota Dataproc Serverless dialokasikan?

Batch Dataproc Serverless menggunakan resource Google Cloud. Lihat Kuota Dataproc Serverless untuk informasi selengkapnya.

Apakah saya perlu menyiapkan Dataproc Persistent History Server?

Menyiapkan Persistent History Server (PHS) untuk digunakan dengan Dataproc Serverless bersifat opsional.Anda dapat menggunakan PHS untuk melihat peristiwa Spark dan log lainnya di bucket Cloud Storage yang ditentukan hingga dan setelah periode retensi (TTL) 90 hari standar bucket sementara dan staging Dataproc Serverless.

Log Dataproc Serverless Spark apa yang tersedia?

Log eksekutor dan driver Spark tersedia di Cloud Logging selama dan setelah eksekusi beban kerja Spark. Selain itu, aplikasi Spark terlihat di antarmuka web Persistent History Server (PHS) saat beban kerja berjalan (pilih PHS > Incomplete Applications di UI PHS).

Jika Anda menyiapkan PHS Dataproc, PHS akan memberikan akses persisten ke log peristiwa Spark yang disimpan di Cloud Storage, yang memberikan insight tentang eksekusi aplikasi Spark, seperti peristiwa DAG dan eksekutor.

Dapatkah saya menetapkan jumlah eksekutor untuk beban kerja Spark?

Ya. Anda dapat menetapkan jumlah eksekutor untuk beban kerja Spark menggunakan properti spark.executor.instances. Namun, jumlah total core yang dapat digunakan oleh beban kerja lebih penting daripada jumlah eksekutor karena Spark menjalankan 1 tugas per core. Misalnya, jika beban kerja memiliki empat eksekutor dengan masing-masing dua core, beban kerja tersebut akan menjalankan tugas 4 * 2 = 8 secara bersamaan. Selain itu, tugas akan dijalankan dalam jumlah yang sama untuk beban kerja yang memiliki dua eksekutor dengan masing-masing empat core. Karena jumlah core untuk setiap beban kerja sama, setiap core akan menjalankan jumlah tugas yang sama. Anda dapat menggunakan properti spark.executor.cores untuk menetapkan jumlah core per eksekutor untuk workload Dataproc Serverless.

Metrik Spark apa yang digunakan Dataproc Serverless untuk penskalaan otomatis?

Dataproc Serverless for Spark melihat metrik alokasi dinamis maximum-needed dan running Spark untuk menentukan apakah akan menskalakan ke atas atau ke bawah. Lihat Penskalaan otomatis Dataproc Serverless untuk Spark.

Dapatkah saya mengonfigurasi perilaku penskalaan otomatis Dataproc Serverless menggunakan properti Spark?

Ya. Penskalaan otomatis Dataproc Serverless didasarkan pada alokasi dinamis Spark, dan diaktifkan secara default. Anda dapat menyesuaikan properti Spark dan properti alokasi dinamis Spark berikut:

  • spark.executor.instances
  • spark.dynamicAllocation.initialExecutors
  • spark.dynamicAllocation.minExecutors
  • spark.dynamicAllocation.maxExecutors

Mengapa saya perlu memaketkan kode dalam file JAR untuk mengirimkan beban kerja Spark?

Spark ditulis dalam Scala, yang berarti bahwa proses driver dan pekerja beroperasi sebagai proses JVM. Dalam bahasa JVM, file JAR adalah cara utama untuk memaketkan kode. Anda meneruskan file JAR ke Dataproc Serverless saat mengirimkan workload.