Setelah membuat layanan Dataproc Metastore, Anda dapat melampirkan salah satu layanan berikut:
- Cluster Managed Service for Apache Spark.
- Instance Apache Hive yang dikelola sendiri, instance Apache Spark, atau cluster Presto.
Setelah Anda menghubungkan salah satu layanan ini, layanan tersebut akan menggunakan layanan Dataproc Metastore Anda sebagai metastore Hive-nya selama eksekusi kueri.
Sebelum memulai
- Aktifkan Dataproc Metastore di project Anda.
- Buat layanan Dataproc Metastore.
- Pahami persyaratan jaringan khusus untuk project Anda.
Peran yang Diperlukan
Untuk mendapatkan izin yang Anda perlukan untuk membuat Dataproc Metastore dan cluster Managed Service for Apache Spark, minta administrator untuk memberi Anda peran IAM berikut:
-
Untuk memberikan kontrol penuh atas resource Dataproc Metastore, lakukan salah satu hal berikut:
-
Dataproc Metastore Editor (
roles/metastore.editor) di akun pengguna atau akun layanan -
Admin Dataproc Metastore (
roles/metastore.admin) di akun pengguna atau akun layanan
-
Dataproc Metastore Editor (
-
Untuk membuat cluster Managed Service for Apache Spark:
(
roles/dataproc.worker) di akun layanan VM Managed Service for Apache Spark -
Untuk memberikan izin baca dan tulis ke direktori gudang Hive:
(
roles/storage.objectAdmin) di akun layanan VM Managed Service for Apache Spark
Untuk mengetahui informasi selengkapnya tentang pemberian peran, lihat Mengelola akses ke project, folder, dan organisasi.
Peran bawaan ini berisi izin yang diperlukan untuk membuat Dataproc Metastore dan cluster Managed Service for Apache Spark. Untuk melihat izin yang benar-benar diperlukan, perluas bagian Izin yang diperlukan:
Izin yang diperlukan
Izin berikut diperlukan untuk membuat Dataproc Metastore dan cluster Managed Service for Apache Spark:
-
Untuk membuat Dataproc Metastore:
metastore.services.createdi akun pengguna atau akun layanan -
Untuk membuat cluster Managed Service for Apache Spark:
dataproc.clusters.createdi akun pengguna atau akun layanan -
Untuk mengakses direktori gudang Hive:
di akun layanan VM Managed Service for Apache Sparkorgpolicy.policy.get1,resourcemanager.projects.get,resourcemanager.projects.list,storage.objects.*,storage.multipartUploads.*
Anda mungkin juga bisa mendapatkan izin ini dengan peran khusus atau peran bawaan lainnya.
Untuk mengetahui informasi selengkapnya tentang peran dan izin Dataproc Metastore tertentu, lihat Mengelola akses dengan IAM.Cluster Managed Service for Apache Spark
Managed Service for Apache Spark adalah layanan Apache Spark dan Apache Hadoop terkelola yang memungkinkan Anda memanfaatkan alat data open source untuk batch processing, pembuatan kueri, streaming, dan machine learning.
Pertimbangan
Sebelum membuat dan melampirkan cluster Managed Service for Apache Spark, periksa protokol endpoint yang digunakan oleh layanan Dataproc Metastore Anda. Protokol ini menentukan cara klien Hive Metastore Anda mengakses metadata yang disimpan di Dataproc Metastore Anda. Pilihan ini juga dapat memengaruhi fitur yang dapat Anda integrasikan dan gunakan dengan layanan Anda.
Apache Thrift
Jika Anda menggunakan protokol endpoint Apache Thrift, pertimbangkan persyaratan jaringan berikut:
Secara default, Anda harus membuat cluster Managed Service for Apache Spark dan layanan Dataproc Metastore di jaringan yang sama. Cluster Managed Service for Apache Spark juga dapat menggunakan subnet jaringan layanan Dataproc Metastore.
Jika cluster Managed Service for Apache Spark Anda adalah milik project yang berbeda dengan jaringan, Anda harus mengonfigurasi izin jaringan bersama.
Jika cluster Managed Service untuk Apache Spark Anda termasuk dalam project yang berbeda dengan layanan Dataproc Metastore, Anda harus menyiapkan izin tambahan sebelum membuat cluster Managed Service untuk Apache Spark.
gRPC
Jika Anda menggunakan protokol endpoint gRPC, pertimbangkan persyaratan jaringan berikut:
Setelah membuat Dataproc Metastore menggunakan protokol endpoint gRPC, Anda harus memberikan peran IAM tambahan.
Jika Anda menggunakan Autentikasi Cluster Pribadi Dataproc, Dataproc Metastore Anda harus menggunakan protokol endpoint gRPC.
Jika cluster Managed Service untuk Apache Spark Anda termasuk dalam project yang berbeda dengan layanan Dataproc Metastore Anda, Anda harus menyiapkan izin tambahan sebelum membuat cluster Managed Service untuk Apache Spark.
Membuat cluster dan melampirkan Dataproc Metastore
Petunjuk berikut menunjukkan cara membuat cluster Managed Service for Apache Spark dan terhubung ke cluster tersebut dari layanan Dataproc Metastore. Petunjuk ini mengasumsikan bahwa Anda telah Membuat layanan Dataproc Metastore.
- Sebelum membuat cluster Managed Service for Apache Spark, pastikan image Managed Service for Apache Spark yang Anda pilih kompatibel dengan versi metastore Hive yang Anda pilih saat membuat Dataproc Metastore. Untuk mengetahui informasi selengkapnya, lihat Daftar versi image Managed Service for Apache Spark.
Untuk mengoptimalkan konektivitas jaringan, buat cluster Managed Service for Apache Spark di region yang sama dengan layanan Dataproc Metastore Anda.
Konsol
Di konsol Google Cloud , buka halaman Managed Service for Apache Spark Create a cluster:
Di kolom Cluster Name, masukkan nama untuk cluster Anda.
Untuk menu Region dan Zone, pilih region yang sama dengan tempat Anda membuat layanan Dataproc Metastore. Anda dapat memilih Zona mana pun.
Klik tab Sesuaikan cluster.
Di bagian Network configuration, pilih jaringan yang sama dengan yang Anda gunakan untuk membuat layanan Dataproc Metastore.
Di bagian Dataproc Metastore, pilih layanan Dataproc Metastore yang ingin Anda lampirkan. Jika Anda belum membuatnya, Anda dapat memilih Create New Service.
Opsional: Jika layanan Dataproc Metastore Anda menggunakan protokol endpoint gRPC:
- Klik tab Kelola Keamanan.
- Di bagian Project Access, pilih Enable the cloud-platform scope for this cluster.
Konfigurasi opsi layanan lainnya sesuai kebutuhan.
Untuk membuat cluster, klik Buat.
Cluster baru Anda akan muncul dalam daftar Cluster. Status cluster akan tercantum sebagai Provisioning hingga cluster siap digunakan. Jika sudah siap digunakan, statusnya akan berubah menjadi Running.
gcloud CLI
Untuk membuat cluster dan melampirkan Dataproc Metastore, jalankan perintah
gcloud dataproc clusters create
berikut:
gcloud dataproc clusters create CLUSTER_NAME \
--dataproc-metastore=projects/PROJECT_ID/locations/LOCATION/services/SERVICE \
--region=LOCATION \
--scopes=SCOPESGanti kode berikut:
CLUSTER_NAME: nama cluster Managed Service for Apache Spark baru Anda.PROJECT_ID: project ID project tempat Anda membuat layanan Dataproc Metastore.LOCATION: region yang sama dengan tempat Anda membuat layanan Dataproc Metastore.SERVICE: nama layanan Dataproc Metastore yang Anda lampirkan ke cluster.SCOPES: (Opsional) Jika layanan Dataproc Metastore Anda menggunakan protokol endpoint gRPC, gunakancloud-platform.
REST
Ikuti petunjuk API untuk membuat cluster menggunakan APIs Explorer.
Melampirkan cluster menggunakan properti cluster Managed Service for Apache Spark
Anda juga dapat melampirkan cluster Managed Service for Apache Spark ke Dataproc Metastore
menggunakan properti Managed Service for Apache Spark.
Properti ini mencakup ENDPOINT_URI dan
WAREHOUSE_DIR Dataproc Metastore.
Gunakan petunjuk ini jika layanan Dataproc Metastore Anda menggunakan Private Service Connect atau jika Anda ingin melampirkan cluster Managed Service for Apache Spark ke versi tambahan layanan Dataproc Metastore Anda.
Ada dua cara untuk melampirkan cluster Managed Service for Apache Spark menggunakan properti
ENDPOINT_URI dan WAREHOUSE_DIR:
Opsi 1: Saat membuat cluster Managed Service for Apache Spark
Saat membuat cluster Managed Service for Apache Spark, gunakan tanda properti dengan konfigurasi Hive berikut.
gcloud dataproc clusters create CLUSTER_NAME \
--properties="hive:hive.metastore.uris=ENDPOINT_URI,hive:hive.metastore.warehouse.dir=WAREHOUSE_DIR/hive-warehouse"Ganti kode berikut:
CLUSTER_NAME: nama cluster Managed Service for Apache Spark baru Anda.ENDPOINT_URI: Endpoint URI layanan Dataproc Metastore Anda.WAREHOUSE_DIR: Lokasi direktori gudang Hive Anda.
Opsi 2: Perbarui file hive-site.xml
Anda juga dapat melampirkan cluster Managed Service for Apache Spark dengan mengubah file hive-site.xml cluster secara langsung.
- Hubungkan ke
.*-mcluster menggunakan SSH. Buka file
/etc/hive/conf/hive-site.xmldan ubah baris berikut:<property> <name>hive.metastore.uris</name> <!-- Update this value. --> <value>ENDPOINT_URI</value> </property> <!-- Add this property entry. --> <property> <name>hive.metastore.warehouse.dir</name> <value>WAREHOUSE_DIR</value> </property>Ganti kode berikut:
ENDPOINT_URI: Endpoint URI layanan Dataproc Metastore Anda.WAREHOUSE_DIR: Lokasi direktori gudang Hive Anda.
Mulai ulang HiveServer2:
sudo systemctl restart hive-server2.service
Cluster yang dikelola sendiri
Cluster yang dikelola sendiri dapat berupa instance Apache Hive, instance Apache Spark, atau cluster Presto.
Melampirkan cluster yang dikelola sendiri
Tetapkan nilai berikut dalam file konfigurasi klien Anda:
hive.metastore.uris=ENDPOINT_URIhive.metastore.warehouse.dir=WAREHOUSE_DIR
Ganti kode berikut:
ENDPOINT_URI: Endpoint URI layanan Dataproc Metastore Anda.WAREHOUSE_DIR: Lokasi direktori gudang Hive Anda.
Langkah berikutnya
- Panduan memulai untuk men-deploy Dataproc Metastore
- Ringkasan Dataproc Metastore
- Ringkasan Managed Service for Apache Spark