Memigrasikan metadata Dataproc Metastore ke metastore BigLake
Dokumen ini menjelaskan cara menggunakan alat migrasi metastore BigLake, yang membantu Anda memindahkan metadata database, tabel, dan partisi dari layanan Dataproc Metastore ke metastore BigLake.
Sebelum memulai
- Aktifkan penagihan untuk Google Cloud project Anda. Pelajari cara memeriksa apakah penagihan telah diaktifkan pada suatu project.
Aktifkan BigQuery dan Dataflow API.
Opsional: Pelajari lebih lanjut hal-hal berikut:
- Pahami cara kerja BigLake metastore dan alasan Anda harus menggunakannya.
- Pelajari cara kerja Dataflow dan cara memantau tugas yang sedang berlangsung.
Peran yang diperlukan
Untuk mendapatkan izin yang diperlukan untuk menjalankan alat migrasi, minta administrator Anda untuk memberi Anda peran IAM berikut:
-
Buat database, tabel, dan partisi di BigQuery:
BigQuery Data Editor (
roles/bigQuery.dataEditor
) di akun layanan Dataflow yang menjalankan tugas migrasi. -
Memberikan akses baca ke metadata Dataproc Metastore di endpoint gRPC:
Peran Pelihat Metadata (
roles/metastore.metadataViewer
) di akun layanan Dataflow yang menjalankan tugas migrasi.
Untuk mengetahui informasi selengkapnya tentang cara memberikan peran, lihat Mengelola akses ke project, folder, dan organisasi.
Anda mungkin juga bisa mendapatkan izin yang diperlukan melalui peran khusus atau peran bawaan lainnya.
Cara kerja alat migrasi
Alat migrasi memulai tugas Dataflow yang mengekstrak metadata dari Dataproc Metastore dan menyerapnya ke dalam metastore BigLake.
Anda tidak dapat mengakses data Dataproc Metastore secara langsung dari metastore BigLake. Proses migrasi ini diperlukan untuk menjalankan workload atau tugas pada metadata yang ada. Jika Anda tidak menggunakan alat ini, Anda harus mengekstrak metadata dari Dataproc Metastore secara manual dan memasukkannya ke metastore BigLake.
Pertimbangan
- Alat migrasi mendukung instance Dataproc Metastore yang menggunakan protokol endpoint gRPC atau Thrift.
- Setiap kali Anda menjalankan alat migrasi, tugas Dataflow akan membuat salinan lengkap metadata dari Dataproc Metastore ke BigLake Metastore.
Batasan
Alat migrasi tidak memigrasikan metadata yang tidak terkait dengan partisi database dan tabel. Jika alat tidak dapat memigrasikan database atau tabel, alat akan mencatat pesan di instance Cloud Logging project yang berisi tugas Dataflow.
Setelah error dicatat, tugas Dataflow akan terus memproses tabel dan database lain dalam pipeline.
Menjalankan migrasi dengan alat
Untuk menjalankan migrasi dengan alat ini, buat tugas template flex Dataflow dengan menjalankan perintah gcloud dataflow
flex-template
berikut.
gcloud dataflow flex-template run JOB_NAME" \ --template-file-gcs-location "gs://bigquery-metastore-migration/dpms_to_bqms_migration.json" \ --parameters bigQueryMetastoreProjectId="DESTINATION_BIGQUERY_PROJECT_ID" \ --parameters endpointUri="METASTORE_URI" \ --parameters bigQueryMetastoreDatabaseLocation=DATABASE_LOCATION \ [--network=NETWORK] \ [--subnetwork=SUBNETWORK]
Ganti kode berikut:
JOB_NAME
: nama tugas Dataflow untuk menjalankan migrasi.DESTINATION_BIGQUERY_PROJECT_ID
: ID project BigQuery tempat tugas Dataflow menulis data.METASTORE_URI
: URI layanan Dataproc Metastore.DATABASE_LOCATION
: lokasi tempat metastore BigLake menulis data. Misalnya, jika Anda menetapkan nilai ini keUS
, semua resource BigQuery yang dibuat oleh alat ini akan disimpan di lokasi ini.NETWORK
: opsional: jaringan untuk menjalankan tugas Dataflow. Hanya diperlukan untuk layanan Dataproc Metastore yang menggunakan endpoint Thrift.SUBNETWORK
: opsional: subnetwork untuk menjalankan tugas Dataflow. Hanya diperlukan untuk layanan Dataproc Metastore yang menggunakan endpoint Thrift.
Langkah berikutnya
- Menggunakan metastore BigLake dengan Dataproc
- Menggunakan metastore BigLake dengan Dataproc Serverless