GSP1040
Ringkasan
Lakehouse adalah
mesin penyimpanan terpadu yang menyederhanakan akses data untuk data warehouse
dan data lake dengan menyediakan kontrol akses presisi yang seragam di seluruh
penyimpanan multi-cloud dan format terbuka.
Lakehouse memperluas keamanan tingkat baris dan kolom BigQuery yang terperinci
ke tabel-tabel pada penyimpanan objek tempat data berada seperti Amazon S3,
Azure Data Lake Storage Gen2, dan Google Cloud Storage. Lakehouse memisahkan
akses ke tabel dari data penyimpanan cloud yang mendasarinya melalui delegasi
akses. Fitur ini membantu Anda dalam memberikan akses tingkat baris dan kolom
secara aman kepada pengguna dan pipeline di organisasi Anda tanpa memberikan
akses penuh ke tabel.
Setelah membuat tabel Lakehouse, Anda dapat menjalankan kueri pada tabel
tersebut seperti pada tabel BigQuery lainnya. BigQuery akan memberlakukan
kontrol akses tingkat baris dan kolom, dan tiap pengguna hanya akan melihat
potongan data yang diizinkan untuk dilihatnya. Kebijakan tata kelola
diterapkan pada semua akses ke data melalui BigQuery API. Misalnya,
BigQuery Storage API
dapat digunakan untuk mengakses data yang diotorisasi menggunakan mesin kueri
open source seperti Apache Spark, seperti yang ditunjukkan diagram berikut:

Tujuan
Dalam lab ini, Anda akan:
- Membuat dan melihat resource koneksi.
- Menyiapkan akses ke data lake Cloud Storage.
- Membuat tabel Lakehouse.
- Menjalankan kueri pada tabel Lakehouse melalui BigQuery.
- Menyiapkan kebijakan kontrol akses.
- Mengupgrade tabel eksternal ke tabel Lakehouse.
Penyiapan dan persyaratan
Sebelum mengklik tombol Start Lab
Baca petunjuk ini. Lab memiliki timer dan Anda tidak dapat menjedanya. Timer yang dimulai saat Anda mengklik Start Lab akan menampilkan durasi ketersediaan resource Google Cloud untuk Anda.
Lab interaktif ini dapat Anda gunakan untuk melakukan aktivitas lab di lingkungan cloud sungguhan, bukan di lingkungan demo atau simulasi. Untuk mengakses lab ini, Anda akan diberi kredensial baru yang bersifat sementara dan dapat digunakan untuk login serta mengakses Google Cloud selama durasi lab.
Untuk menyelesaikan lab ini, Anda memerlukan:
- Akses ke browser internet standar (disarankan browser Chrome).
Catatan: Gunakan jendela Samaran (direkomendasikan) atau browser pribadi untuk menjalankan lab ini. Hal ini akan mencegah konflik antara akun pribadi Anda dan akun siswa yang dapat menyebabkan tagihan ekstra pada akun pribadi Anda.
- Waktu untuk menyelesaikan lab. Ingat, setelah dimulai, lab tidak dapat dijeda.
Catatan: Hanya gunakan akun siswa untuk lab ini. Jika Anda menggunakan akun Google Cloud yang berbeda, Anda mungkin akan dikenai tagihan ke akun tersebut.
Cara memulai lab dan login ke Google Cloud Console
-
Klik tombol Start Lab. Jika Anda perlu membayar lab, dialog akan terbuka untuk memilih metode pembayaran.
Di sebelah kiri ada panel Lab Details yang berisi hal-hal berikut:
- Tombol Open Google Cloud console
- Waktu tersisa
- Kredensial sementara yang harus Anda gunakan untuk lab ini
- Informasi lain, jika diperlukan, untuk menyelesaikan lab ini
-
Klik Open Google Cloud console (atau klik kanan dan pilih Open Link in Incognito Window jika Anda menjalankan browser Chrome).
Lab akan menjalankan resource, lalu membuka tab lain yang menampilkan halaman Sign in.
Tips: Atur tab di jendela terpisah secara berdampingan.
Catatan: Jika Anda melihat dialog Choose an account, klik Use Another Account.
-
Jika perlu, salin Username di bawah dan tempel ke dialog Sign in.
{{{user_0.username | "Username"}}}
Anda juga dapat menemukan Username di panel Lab Details.
-
Klik Next.
-
Salin Password di bawah dan tempel ke dialog Welcome.
{{{user_0.password | "Password"}}}
Anda juga dapat menemukan Password di panel Lab Details.
-
Klik Next.
Penting: Anda harus menggunakan kredensial yang diberikan lab. Jangan menggunakan kredensial akun Google Cloud Anda.
Catatan: Menggunakan akun Google Cloud sendiri untuk lab ini dapat dikenai biaya tambahan.
-
Klik halaman berikutnya:
- Setujui persyaratan dan ketentuan.
- Jangan tambahkan opsi pemulihan atau autentikasi 2 langkah (karena ini akun sementara).
- Jangan mendaftar uji coba gratis.
Setelah beberapa saat, Konsol Google Cloud akan terbuka di tab ini.
Catatan: Untuk mengakses produk dan layanan Google Cloud, klik Navigation menu atau ketik nama layanan atau produk di kolom Search.
Mengaktifkan Cloud Shell
Cloud Shell adalah mesin virtual yang dilengkapi dengan berbagai alat pengembangan. Mesin virtual ini menawarkan direktori beranda persisten berkapasitas 5 GB dan berjalan di Google Cloud. Cloud Shell menyediakan akses command-line untuk resource Google Cloud Anda.
-
Klik Activate Cloud Shell
di bagian atas Konsol Google Cloud.
-
Klik jendela berikut:
- Lanjutkan melalui jendela informasi Cloud Shell.
- Beri otorisasi ke Cloud Shell untuk menggunakan kredensial Anda guna melakukan panggilan Google Cloud API.
Setelah terhubung, Anda sudah diautentikasi, dan project ditetapkan ke Project_ID, . Output berisi baris yang mendeklarasikan Project_ID untuk sesi ini:
Project Cloud Platform Anda dalam sesi ini disetel ke {{{project_0.project_id | "PROJECT_ID"}}}
gcloud adalah alat command line untuk Google Cloud. Alat ini sudah terinstal di Cloud Shell dan mendukung pelengkapan command line.
- (Opsional) Anda dapat menampilkan daftar nama akun yang aktif dengan perintah ini:
gcloud auth list
- Klik Authorize.
Output:
ACTIVE: *
ACCOUNT: {{{user_0.username | "ACCOUNT"}}}
Untuk menetapkan akun aktif, jalankan:
$ gcloud config set account `ACCOUNT`
- (Opsional) Anda dapat menampilkan daftar ID project dengan perintah ini:
gcloud config list project
Output:
[core]
project = {{{project_0.project_id | "PROJECT_ID"}}}
Catatan: Untuk mendapatkan dokumentasi gcloud yang lengkap di Google Cloud, baca panduan ringkasan gcloud CLI.
Tugas 1. Membuat resource koneksi
Tabel Lakehouse mengakses data Google Cloud Storage menggunakan
resource koneksi. Resource koneksi dapat dikaitkan dengan satu tabel saja atau sekumpulan
tabel mana pun di dalam project.
-
Dari Navigation Menu, buka BigQuery >
Studio. Klik Done.
-
Untuk membuat koneksi, beralihlah ke tab Explorer, lalu
klik + Add data. Kemudian, gunakan kotak penelusuran
sumber data untuk menelusuri Agent Platform. Klik hasil
untuk Agent Platform.
-
Di bagian Access external data in place, pilih
BigQuery Federation.
-
Dalam daftar Connection type, pilih
Agent Platform remote models, remote functions and Lakehouse and
Spanner (Cloud Resource).
-
Di kolom Connection ID, masukkan my-connection.
-
Untuk Location type, pilih Multi-region, lalu pilih
US (multiple regions in United States) dari dropdown.
-
Klik Create connection.
-
Untuk melihat informasi koneksi Anda, pilih koneksi di menu navigasi.

-
Di bagian Connection info, salin ID Akun Layanan (Service
Account ID). Anda akan memerlukan ID ini di bagian berikut.
Klik Periksa progres saya untuk memverifikasi tujuan.
Membuat resource koneksi
Tugas 2. Menyiapkan akses ke data lake Cloud Storage
Di bagian ini, Anda akan memberikan akses hanya baca ke data lake Cloud
Storage untuk resource koneksi baru sehingga BigQuery dapat mengakses file
Cloud Storage atas nama pengguna. Sebaiknya Anda memberikan peran IAM
Storage Object Viewer
ke akun layanan resource koneksi, sehingga akun layanan dapat mengakses bucket
Cloud Storage.
-
Dari Navigation Menu, buka IAM & Admin >
IAM.
-
Klik +Grant access.
-
Di kolom New principals, masukkan ID akun layanan yang
Anda salin sebelumnya.
-
Di kolom Select a role, pilih
Cloud Storage, lalu pilih
Storage Object Viewer.
- Klik Save.
Catatan: Setelah memigrasikan pengguna ke tabel Lakehouse, pastikan Anda mencabut izin Cloud Storage langsung dari pengguna yang ada. Akses file langsung memungkinkan pengguna mengabaikan kebijakan tata kelola (seperti keamanan tingkat baris dan kolom) yang ditetapkan pada tabel Lakehouse.
Klik Periksa progres saya untuk memverifikasi tujuan.
Menyiapkan akses ke data lake Cloud Storage
Tugas 3. Membuat tabel Lakehouse
Contoh berikut menggunakan format file CSV, tetapi Anda dapat menggunakan
format apa pun yang didukung Lakehouse, seperti yang ditunjukkan dalam
Batasan. Jika Anda sudah terbiasa membuat tabel di
BigQuery, proses ini tidak akan terasa asing bagi Anda. Satu-satunya perbedaan
adalah Anda harus menentukan koneksi resource cloud yang terkait.
Catatan: Untuk mendapatkan performa optimal, kami menyarankan Anda menggunakan bucket satu region atau dual-region Cloud Storage dan bukan bucket multi-region.
Jika tidak ada skema yang disediakan dan akun layanan tidak diberikan akses ke
bucket pada langkah sebelumnya, langkah ini akan gagal dengan pesan akses
ditolak.
Membuat set data
-
Buka lagi BigQuery > Studio.
-
Pindah ke Classic Explorer, klik tiga titik di samping
nama project Anda, lalu pilih Create dataset.

-
Untuk Dataset ID, ketik demo_dataset.
-
Untuk Location type, pilih Multi-region, lalu pilih
US (multiple regions in United States) dari dropdown.
-
Biarkan kolom lainnya sebagai default, lalu klik
Create dataset.
Setelah set data dibuat, Anda dapat menyalin set data yang sudah ada dari
Cloud Storage ke BigQuery.
Membuat tabel
-
Klik tiga titik di samping demo_dataset, lalu pilih
Create table.

-
Untuk Create table from, pilih
Google Cloud Storage dari dropdown.
Catatan: Bucket Cloud Storage telah dibuat dengan dua set data yang akan Anda gunakan dalam lab ini.
-
Klik Browse untuk memilih set data. Buka bucket bernama
, lalu klik file customer.csv untuk diimpor ke BigQuery,
kemudian klik Select.
-
Untuk Destination, pastikan project lab Anda telah
dipilih dan Anda menggunakan demo_dataset.
-
Untuk nama tabel, ketik biglake_table.
-
Tetapkan Table type ke External Table.
-
Pilih kotak
Create a Lakehouse table using a Cloud Resource connection.
Pastikan ID koneksi Anda, us.my-connection, dipilih.
Konfigurasi Anda akan terlihat seperti berikut:

-
Untuk Schema, aktifkan Edit as text, lalu
salin dan tempel skema berikut ke kotak teks:
[
{
"name": "customer_id",
"type": "INTEGER",
"mode": "REQUIRED"
},
{
"name": "first_name",
"type": "STRING",
"mode": "REQUIRED"
},
{
"name": "last_name",
"type": "STRING",
"mode": "REQUIRED"
},
{
"name": "company",
"type": "STRING",
"mode": "NULLABLE"
},
{
"name": "address",
"type": "STRING",
"mode": "NULLABLE"
},
{
"name": "city",
"type": "STRING",
"mode": "NULLABLE"
},
{
"name": "state",
"type": "STRING",
"mode": "NULLABLE"
},
{
"name": "country",
"type": "STRING",
"mode": "NULLABLE"
},
{
"name": "postal_code",
"type": "STRING",
"mode": "NULLABLE"
},
{
"name": "phone",
"type": "STRING",
"mode": "NULLABLE"
},
{
"name": "fax",
"type": "STRING",
"mode": "NULLABLE"
},
{
"name": "email",
"type": "STRING",
"mode": "REQUIRED"
},
{
"name": "support_rep_id",
"type": "INTEGER",
"mode": "NULLABLE"
}
]
Catatan: Biasanya data lake tidak memiliki skema default. Untuk tujuan lab ini, kita akan menggunakan skema tersebut agar kebijakan tingkat kolom setelan menjadi lebih jelas.
- Klik Create Table.
Klik Periksa progres saya untuk memverifikasi tujuan.
Membuat tabel Lakehouse
Tugas 4. Menjalankan kueri pada tabel Lakehouse melalui BigQuery
Setelah membuat tabel Lakehouse, Anda dapat menggunakan klien BigQuery apa pun
untuk mengirimkan kueri.
-
Klik biglake_table dari demo_dataset.
-
Dari toolbar pratinjau biglake_table, klik
Query.
-
Jalankan kode berikut untuk menjalankan kueri pada tabel Lakehouse melalui
BigQuery Editor:
SELECT * FROM `{{{project_0.project_id|Project ID}}}.demo_dataset.biglake_table`
-
Klik Run.
-
Pastikan Anda dapat melihat semua kolom dan data dalam tabel yang
dihasilkan.
Tugas 5. Menyiapkan kebijakan kontrol akses
Setelah dibuat, tabel Lakehouse dapat dikelola dengan cara yang mirip dengan
pengelolaan tabel BigQuery. Untuk membuat kebijakan kontrol akses untuk tabel
Lakehouse, pertama-tama Anda akan membuat taksonomi tag kebijakan di
BigQuery. Selanjutnya, terapkan tag kebijakan tersebut pada baris atau kolom yang
bersifat sensitif. Di bagian ini, Anda akan membuat kebijakan tingkat kolom.
Untuk mengetahui petunjuk tentang cara menyiapkan keamanan tingkat baris, baca
panduan keamanan tingkat baris.
Untuk tujuan ini, taksonomi BigQuery bernama
dan tag kebijakan yang terkait bernama biglake-policy sudah
dibuatkan untuk Anda.
Menambahkan tag kebijakan ke kolom
Anda sekarang akan menggunakan tag kebijakan yang dibuat untuk membatasi akses
ke kolom tertentu dalam tabel BigQuery. Dalam contoh ini, Anda akan membatasi
akses ke informasi sensitif seperti alamat, kode pos, dan nomor telepon.
-
Dari Navigation Menu, buka BigQuery >
Studio.
-
Buka demo-dataset > biglake_table, lalu
klik tabel untuk membuka halaman skema tabel.
-
Klik Edit schema.
-
Centang kotak di samping kolom address,
postal_code, dan phone.
-
Klik Add policy tag.
-
Klik
untuk meluaskannya guna memilih biglake-policy.
-
Klik Select.
Kolom Anda sekarang seharusnya sudah memiliki tag kebijakan yang
dilampirkan padanya.
-
Klik Save.
-
Pastikan skema tabel Anda sekarang terlihat seperti berikut.
Catatan: Tanda peringatan di kolom menandakan bahwa Anda tidak memiliki akses ke kolom tertentu berdasarkan kebijakan keamanan yang diterapkan.
Memastikan keamanan tingkat kolom
-
Buka editor kueri untuk biglake_table.
-
Jalankan kode berikut untuk menjalankan kueri pada tabel Lakehouse melalui
BigQuery Editor:
SELECT * FROM `{{{project_0.project_id|Project ID}}}.demo_dataset.biglake_table`
-
Klik Run.
Anda akan menerima pesan error akses ditolak:

-
Sekarang, jalankan kueri berikut dengan menghapus kolom yang aksesnya tidak
Anda miliki:
SELECT * EXCEPT(address, phone, postal_code)
FROM `{{{project_0.project_id|Project ID}}}.demo_dataset.biglake_table`
Kueri seharusnya berjalan tanpa masalah dan menampilkan kolom yang dapat Anda
akses. Contoh ini menunjukkan bahwa keamanan tingkat kolom yang diterapkan
melalui BigQuery juga dapat diterapkan pada tabel Lakehouse.
Tugas 6. Mengupgrade tabel eksternal ke tabel Lakehouse
Anda dapat mengupgrade tabel yang ada ke tabel Lakehouse dengan mengaitkan
tabel tersebut ke koneksi resource cloud. Untuk mengetahui daftar lengkap flag
dan argumen, lihat
bq update
dan
bq mkdef.
Membuat tabel eksternal
-
Klik tiga titik di samping demo_dataset, lalu pilih
Create table.
-
Untuk Create table from, pilih
Google Cloud Storage dari dropdown.
-
Klik Browse untuk memilih set data. Buka bucket bernama
, lalu klik file invoice.csv untuk diimpor ke BigQuery,
kemudian klik Select.
-
Untuk Destination, pastikan project lab Anda telah
dipilih dan Anda menggunakan demo_dataset.
-
Untuk nama tabel, gunakan external_table.
-
Tetapkan Table type ke External Table.
Catatan: Jangan menentukan koneksi Resource Cloud terlebih dahulu.
-
Untuk Schema, aktifkan Edit as text, lalu
salin dan tempel skema berikut ke kotak teks:
[
{
"name": "invoice_id",
"type": "INTEGER",
"mode": "REQUIRED"
},
{
"name": "customer_id",
"type": "INTEGER",
"mode": "REQUIRED"
},
{
"name": "invoice_date",
"type": "TIMESTAMP",
"mode": "REQUIRED"
},
{
"name": "billing_address",
"type": "STRING",
"mode": "NULLABLE"
},
{
"name": "billing_city",
"type": "STRING",
"mode": "NULLABLE"
},
{
"name": "billing_state",
"type": "STRING",
"mode": "NULLABLE"
},
{
"name": "billing_country",
"type": "STRING",
"mode": "NULLABLE"
},
{
"name": "billing_postal_code",
"type": "STRING",
"mode": "NULLABLE"
},
{
"name": "total",
"type": "NUMERIC",
"mode": "REQUIRED"
}
]
- Klik Create Table.
Klik Periksa progres saya untuk memverifikasi tujuan.
Membuat tabel eksternal
Memperbarui tabel eksternal ke tabel Lakehouse
-
Buka jendela Cloud Shell yang baru dan jalankan perintah berikut untuk
membuat
definisi tabel eksternal
baru yang menentukan koneksi yang akan digunakan:
export PROJECT_ID=$(gcloud config get-value project)
bq mkdef \
--autodetect \
--connection_id=$PROJECT_ID.US.my-connection \
--source_format=CSV \
"gs://$PROJECT_ID/invoice.csv" > /tmp/tabledef.json
- Pastikan definisi tabel Anda telah dibuat:
cat /tmp/tabledef.json
- Dapatkan skema dari tabel Anda:
bq show --schema --format=prettyjson demo_dataset.external_table > /tmp/schema
- Update tabel menggunakan definisi tabel eksternal yang baru:
bq update --external_table_definition=/tmp/tabledef.json --schema=/tmp/schema demo_dataset.external_table
Klik Periksa progres saya untuk memverifikasi tujuan.
Memperbarui tabel eksternal ke tabel Lakehouse
Memverifikasi tabel yang telah diperbarui
-
Dari Navigation Menu, buka BigQuery >
Studio.
-
Buka demo-dataset > lalu klik
external_table.
-
Buka tab Details.
-
Pastikan tabel di bagian External Data Configuration sekarang menggunakan
Connection ID yang sesuai.
Bagus! Anda berhasil mengupgrade tabel eksternal yang sudah ada ke tabel
Lakehouse dengan mengaitkannya ke koneksi resource cloud.
Selamat!
Dalam lab ini, Anda telah membuat resource koneksi, menyiapkan akses ke data
lake Cloud Storage, dan membuat tabel Lakehouse. Anda kemudian menjalankan
kueri pada tabel Lakehouse melalui BigQuery, dan menyiapkan kebijakan kontrol
akses tingkat kolom. Terakhir, Anda memperbarui tabel eksternal yang sudah ada
ke tabel Lakehouse menggunakan resource koneksi.
Langkah Berikutnya/Pelajari Lebih Lanjut
Pastikan Anda membaca dokumentasi berikut untuk mengetahui praktik lainnya
dengan Lakehouse:
Sertifikasi dan pelatihan Google Cloud
...membantu Anda mengoptimalkan teknologi Google Cloud. Kelas kami mencakup keterampilan teknis dan praktik terbaik untuk membantu Anda memahami dengan cepat dan melanjutkan proses pembelajaran. Kami menawarkan pelatihan tingkat dasar hingga lanjutan dengan opsi on demand, live, dan virtual untuk menyesuaikan dengan jadwal Anda yang sibuk. Sertifikasi membantu Anda memvalidasi dan membuktikan keterampilan serta keahlian Anda dalam teknologi Google Cloud.
Manual Terakhir Diperbarui pada 28 April 2026
Lab Terakhir Diuji pada 28 April 2026
Hak cipta 2026 Google LLC. Semua hak dilindungi undang-undang. Google dan logo Google adalah merek dagang dari Google LLC. Semua nama perusahaan dan produk lain mungkin adalah merek dagang masing-masing perusahaan yang bersangkutan.