Memfilter resource menggunakan label
Untuk memfilter resource menggunakan label, Anda dapat melakukan salah satu hal berikut:
- Gunakan kotak penelusuran di konsol Google Cloud.
- Buat spesifikasi filter untuk digunakan di API, alat command line bq, atau library klien.
Batasan
- API, alat command line bq, dan library klien hanya mendukung pemfilteran untuk set data.
- Anda tidak dapat memfilter tugas berdasarkan label di semua alat BigQuery.
Sebelum memulai
Berikan peran Identity and Access Management (IAM) yang memberi pengguna izin yang diperlukan untuk melakukan setiap tugas dalam dokumen ini.
Izin yang diperlukan
Untuk memfilter resource menggunakan label, Anda harus dapat mengambil metadata resource. Untuk memfilter resource menggunakan label, Anda memerlukan izin IAM berikut:
bigquery.datasets.get
(memungkinkan Anda memfilter set data)bigquery.tables.get
(memungkinkan Anda memfilter tabel dan tabel virtual)
Setiap peran bawaan IAM berikut memiliki izin yang Anda perlukan untuk memfilter set data:
roles/bigquery.user
roles/bigquery.metadataViewer
roles/bigquery.dataViewer
roles/bigquery.dataOwner
roles/bigquery.dataEditor
roles/bigquery.admin
Setiap peran bawaan IAM berikut memiliki izin yang Anda perlukan untuk memfilter tabel dan tabel virtual:
roles/bigquery.metadataViewer
roles/bigquery.dataViewer
roles/bigquery.dataOwner
roles/bigquery.dataEditor
roles/bigquery.admin
Selain itu, Anda dapat memfilter resource yang dibuat jika memiliki izin bigquery.datasets.create
.
Untuk mengetahui informasi selengkapnya tentang peran dan izin IAM di BigQuery, lihat Peran dan izin bawaan.
Memfilter resource di konsol Google Cloud
Untuk membuat daftar resource yang difilter, gunakan konsol Google Cloud:
Di konsol Google Cloud, buka panel Explorer.
Di kotak penelusuran, masukkan pasangan
key
ataukey:value
. Hasil Anda menyertakan kecocokan sebagian.Misalnya, untuk hanya menampilkan set data dengan label
department:shipping
, Anda dapat memasukkandepartment
ataudepartment:shipping
.
Memfilter set data di API atau alat command line bq
Saat ini, API, alat command line bq, dan library klien hanya mendukung pemfilteran untuk set data.
Untuk memfilter set data menggunakan API, alat bq, atau library klien, buat spesifikasi filter dan gunakan spesifikasi:
- Sebagai parameter untuk flag
--filter
di alat bq - Sebagai nilai untuk properti
filter
di metodedatasets.list
API
Keterbatasan spesifikasi filter
Spesifikasi filter memiliki keterbatasan berikut:
- Hanya mendukung operator logika
AND
. Perbandingan yang dipisahkan spasi diperlakukan memiliki operatorAND
implisit. - Satu-satunya kolom yang saat ini memenuhi syarat untuk pemfilteran adalah
labels.key
, dengankey
sebagai nama label. - Filter dapat menyertakan hingga sepuluh ekspresi.
- Pemfilteran peka huruf besar/kecil.
- Saat ini, API, alat command line bq, dan library klien hanya mendukung pemfilteran untuk set data.
Contoh spesifikasi filter
Spesifikasi filter menggunakan sintaksis berikut:
"field[:value][ field[:value]]..."
Ganti kode berikut:
field
dinyatakan sebagailabels.key
dengan key sebagai kunci label.value
adalah nilai label opsional.
Contoh berikut menunjukkan cara membuat ekspresi filter.
Untuk menampilkan resource yang memiliki label department:shipping
, gunakan spesifikasi
filter berikut:
labels.department:shipping
Untuk membuat daftar resource menggunakan beberapa label, pisahkan pasangan key:value
dengan
spasi. Spasi diperlakukan sebagai operator AND
yang logis. Misalnya, untuk menampilkan
set data dengan label department:shipping
dan label location:usa
, gunakan spesifikasi filter berikut:
labels.department:shipping labels.location:usa
Anda dapat memfilter keberadaan kunci saja, dan bukan mencocokkan dengan
key:value pair. Spesifikasi filter berikut menampilkan semua set data
berlabel department
, berapa pun nilainya.
labels.department
Spesifikasi filter yang setara menggunakan tanda bintang untuk menampilkan semua kemungkinan
nilai yang terkait dengan kunci department
.
labels.department:*
Anda juga dapat menggunakan tag di spesifikasi filter. Misalnya, untuk menampilkan resource
dengan label department:shipping
dan tag test_data
, gunakan spesifikasi
filter berikut:
labels.department:shipping labels.test_data
Memfilter set data di alat command line bq dan API
Untuk memfilter set data menggunakan API, alat command line bq, atau library klien:
bq
Jalankan perintah bq ls
dengan flag --filter
. Jika Anda ingin menampilkan
set data di project selain project default, tentukan
flag --project_id
.
bq ls \ --filter "filter_specification" \ --project_id project_id
Ganti kode berikut:
filter_specification
adalah spesifikasi filter yang valid.project_id
adalah ID project Anda.
Contoh:
Masukkan perintah berikut untuk menampilkan set data dalam project default Anda yang
memiliki label department:shipping
:
bq ls --filter "labels.department:shipping"
Masukkan perintah berikut untuk menampilkan set data dalam project default Anda yang
memiliki label department:shipping
dan tag test_data
.
bq ls --filter "labels.department:shipping labels.test_data"
Masukkan perintah berikut untuk menampilkan set data di myotherproject
yang memiliki
label department:shipping
:
bq ls --filter "labels.department:shipping" --project_id myotherproject
Output untuk setiap perintah tersebut akan menampilkan daftar set data seperti berikut.
+-----------+ | datasetId | +-----------+ | mydataset | | mydataset2| +-----------+
API
Panggil metode API datasets.list
dan berikan spesifikasi filter menggunakan properti filter
.
Go
Sebelum mencoba contoh ini, ikuti petunjuk penyiapan Go di Panduan memulai BigQuery menggunakan library klien. Untuk mengetahui informasi selengkapnya, lihat Dokumentasi referensi BigQuery Go API.
Untuk melakukan autentikasi ke BigQuery, siapkan Kredensial Default Aplikasi. Untuk mengetahui informasi selengkapnya, lihat Menyiapkan autentikasi untuk library klien.
Java
Sebelum mencoba contoh ini, ikuti petunjuk penyiapan Java di Panduan memulai BigQuery menggunakan library klien. Untuk mengetahui informasi selengkapnya, lihat Dokumentasi referensi BigQuery Java API.
Untuk melakukan autentikasi ke BigQuery, siapkan Kredensial Default Aplikasi. Untuk mengetahui informasi selengkapnya, lihat Menyiapkan autentikasi untuk library klien.
Node.js
Sebelum mencoba contoh ini, ikuti petunjuk penyiapan Node.js di Panduan memulai BigQuery menggunakan library klien. Untuk mengetahui informasi selengkapnya, lihat Dokumentasi referensi BigQuery Node.js API.
Untuk melakukan autentikasi ke BigQuery, siapkan Kredensial Default Aplikasi. Untuk mengetahui informasi selengkapnya, lihat Menyiapkan autentikasi untuk library klien.
Python
Sebelum mencoba contoh ini, ikuti petunjuk penyiapan Python di Panduan memulai BigQuery menggunakan library klien. Untuk mengetahui informasi selengkapnya, lihat Dokumentasi referensi BigQuery Python API.
Untuk melakukan autentikasi ke BigQuery, siapkan Kredensial Default Aplikasi. Untuk mengetahui informasi selengkapnya, lihat Menyiapkan autentikasi untuk library klien.
Langkah selanjutnya
- Pelajari cara menambahkan label ke resource BigQuery.
- Pelajari cara melihat label pada resource BigQuery.
- Pelajari cara memperbarui label di resource BigQuery.
- Pelajari cara menghapus label di resource BigQuery.
- Baca tentang Menggunakan label di dokumentasi Resource Manager.