Mendaftarkan tabel Apache Iceberg yang ada akan mengintegrasikan metadatanya ke dalam katalog runtime Lakehouse, sehingga data tabel dapat dikueri dan dikelola dalam namespace. Proses ini berbeda dengan pembuatan tabel, yang menginisialisasi struktur tabel baru yang kosong dan penyimpanan terkait.
Sebelum memulai
-
Pastikan penagihan diaktifkan untuk Google Cloud project Anda.
-
Aktifkan BigLake API.
Peran yang diperlukan untuk mengaktifkan API
Untuk mengaktifkan API, Anda memerlukan izin
serviceusage.services.enable. Jika Anda membuat project, kemungkinan Anda sudah memiliki izin ini melalui peran Pemilik (roles/owner). Jika tidak, Anda bisa mendapatkan izin ini melalui peran Admin Penggunaan Layanan (roles/serviceusage.serviceUsageAdmin). Pelajari cara memberikan peran. - Siapkan katalog runtime Lakehouse dengan endpoint katalog REST Apache Iceberg.
Peran yang diperlukan
Untuk mendapatkan izin yang Anda perlukan untuk mendaftarkan tabel, minta administrator Anda untuk memberi Anda peran IAM berikut di project dan bucket penyimpanan Anda:
-
Mendaftarkan tabel:
- Admin BigLake (
roles/biglake.admin) - project Anda - Admin Penyimpanan (
roles/storage.admin) - bucket Cloud Storage target
- Admin BigLake (
Untuk mengetahui informasi selengkapnya tentang pemberian peran, lihat Mengelola akses ke project, folder, dan organisasi.
Anda mungkin juga bisa mendapatkan izin yang diperlukan melalui peran khusus atau peran bawaan lainnya.
Mendaftarkan tabel
Daftarkan tabel Iceberg yang ada.
gcloud
Untuk mendaftarkan tabel menggunakan gcloud, jalankan perintah gcloud biglake iceberg tables register.
gcloud biglake iceberg tables register TABLE_NAME \ --project="PROJECT_ID" \ --catalog="CATALOG_ID" \ --namespace="NAMESPACE_NAME" \ --metadata-location="METADATA_LOCATION" \ [--overwrite]
Ganti kode berikut:
TABLE_NAME: nama yang akan ditetapkan ke tabel terdaftar.PROJECT_ID: Project ID Google CloudCATALOG_ID: ID katalog.NAMESPACE_NAME: nama namespace katalog.METADATA_LOCATION: Cloud Storage URI dari file JSON metadata terbaru untuk tabel, misalnya,gs://my-bucket/path/to/metadata/00001.metadata.json.--overwrite: (Opsional) Timpa tabel jika sudah ada.
REST
Untuk mendaftarkan tabel Iceberg menggunakan REST API, buat permintaan POST ke endpoint
RegisterIcebergTable:
POST /iceberg/v1/restcatalog/v1/projects/PROJECT_ID/catalogs/CATALOG_ID/namespaces/NAMESPACE_NAME/register
Isi permintaan harus berisi payload JSON dengan struktur berikut:
{
"name": "TABLE_NAME",
"metadata-location": "METADATA_LOCATION",
"overwrite": OVERWRITE
}
Ganti kode berikut:
PROJECT_ID: Project ID Google CloudCATALOG_ID: ID katalog.NAMESPACE_NAME: nama namespace katalog.TABLE_NAME: nama tabel terdaftar.METADATA_LOCATION: Cloud Storage URI dari file JSON metadata terbaru untuk tabel.OVERWRITE:trueuntuk menimpa jika tabel ada, jika tidak,false.
Langkah berikutnya
- Pelajari cara mencantumkan tabel.
- Pelajari cara menjalankan kueri pada tabel.
- Pelajari cara mengelola ACL tabel.