Anda dapat menginstal komponen tambahan seperti Hudi saat membuat cluster Dataproc menggunakan fitur Komponen opsional. Halaman ini menjelaskan cara menginstal komponen Hudi secara opsional di cluster Dataproc.
Saat diinstal di cluster Dataproc, komponen Apache Hudi akan menginstal library Hudi dan mengonfigurasi Spark dan Hive di cluster agar berfungsi dengan Hudi.
Versi image Dataproc yang kompatibel
Anda dapat menginstal komponen Hudi di cluster Dataproc yang dibuat dengan versi image Dataproc berikut:
Properti terkait Hudi
Saat Anda membuat Dataproc dengan cluster Hudi, properti Spark dan Hive berikut akan dikonfigurasi agar berfungsi dengan Hudi.
File konfigurasi | Properti | Nilai default |
---|---|---|
/etc/spark/conf/spark-defaults.conf |
spark.serializer |
org.apache.spark.serializer.KryoSerializer |
spark.sql.catalog.spark_catalog |
org.apache.spark.sql.hudi.catalog.HoodieCatalog |
|
spark.sql.extensions |
org.apache.spark.sql.hudi.HoodieSparkSessionExtension |
|
spark.driver.extraClassPath |
/usr/lib/hudi/lib/hudi-sparkspark-version-bundle_scala-version-hudi-version.jar |
|
spark.executor.extraClassPath |
/usr/lib/hudi/lib/hudi-sparkspark-version-bundle_scala-version-hudi-version.jar |
|
/etc/hive/conf/hive-site.xml |
hive.aux.jars.path |
file:///usr/lib/hudi/lib/hudi-hadoop-mr-bundle-version.jar |
Menginstal komponen
Instal komponen Hudi saat Anda membuat cluster Dataproc.
Halaman versi rilis image Dataproc mencantumkan versi komponen Hudi yang disertakan dalam setiap rilis image Dataproc.
Konsol
- Aktifkan komponen.
- Di konsol Google Cloud, buka halaman Create a cluster Dataproc. Panel Siapkan cluster dipilih.
- Di bagian Components:
- Di bagian Komponen opsional, pilih komponen Hudi.
Perintah gcloud
Untuk membuat cluster Dataproc yang menyertakan komponen Hudi,
gunakan perintah dengan flag --optional-components
.
gcloud dataproc clusters create CLUSTER_NAME \ --region=REGION \ --optional-components=HUDI \ --image-version=DATAPROC_VERSION \ --properties=PROPERTIES
Ganti kode berikut:
- CLUSTER_NAME: Wajib diisi. Nama cluster baru.
- REGION: Wajib diisi. Region cluster.
- DATAPROC_IMAGE: Opsional. Anda dapat menggunakan tanda opsional ini untuk menentukan versi image Dataproc non-default (lihat Versi image Dataproc default).
- PROPERTIES: Opsional. Anda dapat menggunakan flag opsional ini untuk menetapkan properti komponen Hudi, yang ditentukan dengan
hudi:
file-prefix Contoh:properties=hudi:hoodie.datasource.write.table.type=COPY_ON_WRITE
).- Properti versi komponen Hudi: Anda dapat menentukan
properti
dataproc:hudi.version
secara opsional. Catatan: Versi komponen Hudi ditetapkan oleh Dataproc agar kompatibel dengan versi image cluster Dataproc. Jika Anda menetapkan properti ini, pembuatan cluster dapat gagal jika versi yang ditentukan tidak kompatibel dengan image cluster. - Properti Spark dan Hive: Dataproc menetapkan properti Spark dan Hive terkait Hudi saat cluster dibuat. Anda tidak perlu menetapkannya saat membuat cluster atau mengirimkan tugas.
- Properti versi komponen Hudi: Anda dapat menentukan
properti
REST API
Komponen Hudi
dapat diinstal melalui Dataproc API menggunakan
SoftwareConfig.Component
sebagai bagian dari
permintaan
clusters.create
.
Mengirimkan tugas untuk membaca dan menulis tabel Hudi
Setelah membuat cluster dengan komponen Hudi, Anda dapat mengirimkan tugas Spark dan Hive yang membaca dan menulis tabel Hudi.
Contoh gcloud CLI
:
gcloud dataproc jobs submit pyspark \ --cluster=CLUSTER_NAME \ --region=region \ JOB_FILE \ -- JOB_ARGS
Contoh tugas PySpark
File PySpark berikut membuat, membaca, dan menulis tabel Hudi.
Perintah gcloud CLI berikut mengirimkan file PySpark contoh ke Dataproc.
gcloud dataproc jobs submit pyspark \ --cluster=CLUSTER_NAME \ gs://BUCKET_NAME/pyspark_hudi_example.py \ -- TABLE_NAME gs://BUCKET_NAME/TABLE_NAME
Menggunakan Hudi CLI
CLI Hudi terletak di /usr/lib/hudi/cli/hudi-cli.sh
pada
node master cluster Dataproc. Anda dapat menggunakan Hudi CLI untuk melihat skema, commit, dan statistik tabel Hudi, serta untuk melakukan operasi administratif secara manual, seperti jadwalkan pemadatan (lihat Menggunakan hudi-cli).
Untuk memulai Hudi CLI dan terhubung ke tabel Hudi:
- Gunakan SSH untuk mengakses node master.
- Jalankan
/usr/lib/hudi/cli/hudi-cli.sh
. Command prompt berubah menjadihudi->
. - Jalankan
connect --path gs://my-bucket/my-hudi-table
. - Jalankan perintah, seperti
desc
, yang menjelaskan skema tabel, ataucommits show
, yang menampilkan histori commit. - Untuk menghentikan sesi CLI, jalankan
exit
.