Membuat kueri data Blob Storage

Dokumen ini menjelaskan cara membuat kueri data yang tersimpan dalam tabel BigLake Azure Blob Storage.

Sebelum memulai

Pastikan Anda memiliki tabel BigLake Blob Storage.

Peran yang diperlukan

Untuk membuat kueri tabel BigLake Blob Storage, pastikan pemanggil BigQuery API memiliki peran berikut:

  • BigQuery Connection User (roles/bigquery.connectionUser)
  • BigQuery Data Viewer (roles/bigquery.dataViewer)
  • BigQuery User (roles/bigquery.user)

Pemanggil dapat berupa akun Anda atau akun layanan koneksi Blob Storage. Bergantung pada izin yang Anda miliki, Anda dapat memberikan peran ini pada diri sendiri atau meminta administrator untuk memberikannya. Untuk mengetahui informasi selengkapnya tentang cara memberikan peran, lihat Melihat peran yang dapat diberikan pada resource.

Untuk melihat izin yang pasti diperlukan untuk membuat kueri tabel BigLake Blob Storage, luaskan bagian Izin yang diperlukan:

Izin yang diperlukan

Anda mungkin juga bisa mendapatkan izin ini dengan peran khusus atau peran yang telah ditetapkan sebelumnya.

Membuat Kueri Tabel BigLake Blob Storage

Setelah membuat tabel BigLake Blob Storage, Anda dapat membuat kuerinya menggunakan sintaksis GoogleSQL, sama seperti jika tabel tersebut adalah tabel BigQuery standar.

Hasil kueri yang di-cache disimpan dalam tabel sementara BigQuery. Untuk membuat kueri tabel BigLake sementara, lihat Membuat kueri tabel BigLake sementara. Untuk mengetahui informasi selengkapnya tentang batasan dan kuota BigQuery Omni, lihat batasan dan quotas.

Saat membuat pemesanan di region BigQuery Omni, gunakan edisi Enterprise. Untuk mempelajari cara membuat pemesanan dengan edisi, lihat Membuat pemesanan.

Jalankan kueri pada tabel BigLake Blob Storage:

  1. Di Konsol Google Cloud, buka halaman BigQuery.

    Buka BigQuery

  2. Di editor kueri, masukkan pernyataan berikut:

    SELECT * FROM DATASET_NAME.TABLE_NAME;

    Ganti kode berikut:

    • DATASET_NAME: nama set data yang Anda buat
    • TABLE_NAME: tabel BigLake dengan nama yang Anda buat

    • Klik Run.

Untuk informasi selengkapnya tentang cara menjalankan kueri, lihat Menjalankan kueri interaktif.

Membuat kueri tabel sementara

BigQuery membuat tabel sementara untuk menyimpan hasil kueri. Untuk mengambil hasil kueri dari tabel sementara, Anda dapat menggunakan Konsol Google Cloud atau BigQuery API.

Pilih salah satu opsi berikut:

Konsol

Saat membuat kueri tabel BigLake yang merujuk ke data cloud eksternal, Anda dapat melihat hasil kueri yang ditampilkan di Konsol Google Cloud.

API

Untuk membuat kueri tabel BigLake menggunakan API, ikuti langkah-langkah berikut:

  1. Buat Objek tugas.
  2. Panggil metode jobs.insert untuk menjalankan kueri secara asinkron, atau metode jobs.query untuk menjalankan kueri secara sinkron, meneruskan objek Job.
  3. Baca baris yang memuat jobs.getQueryResults dengan meneruskan referensi tugas yang diberikan, dan metode tabledata.list dengan meneruskan referensi tabel tertentu dari hasil kueri.

Membuat kueri kolom semu _FILE_NAME

Tabel yang didasarkan pada sumber data eksternal menyediakan kolom pseudo bernama _FILE_NAME. Kolom ini berisi jalur yang sepenuhnya memenuhi syarat ke file yang memiliki baris tersebut. Kolom ini hanya tersedia untuk tabel yang merujuk ke data eksternal yang tersimpan di Cloud Storage, Google Drive, Amazon S3, dan Azure Blob Storage.

Nama kolom _FILE_NAME adalah nama yang dicadangkan, yang berarti Anda tidak dapat membuat kolom dengan nama tersebut di tabel mana pun. Untuk memilih nilai _FILE_NAME, Anda harus menggunakan alias. Contoh kueri berikut menunjukkan pemilihan _FILE_NAME dengan menetapkan fn alias ke kolom pseudo.

  bq query \
  --project_id=PROJECT_ID \
  --use_legacy_sql=false \
  'SELECT
     name,
     _FILE_NAME AS fn
   FROM
     `DATASET.TABLE_NAME`
   WHERE
     name contains "Alex"' 

Ganti kode berikut:

  • PROJECT_ID adalah project ID yang valid (tanda ini tidak diperlukan jika Anda menggunakan Cloud Shell atau jika Anda menetapkan project default di Google Cloud CLI)
  • DATASET adalah nama set data yang menyimpan tabel eksternal permanen
  • TABLE_NAME adalah nama tabel eksternal permanen

Jika kueri memiliki predikat filter pada kolom semu _FILE_NAME, BigQuery akan mencoba melewati pembacaan file yang tidak memenuhi filter. Rekomendasi yang serupa dengan membuat kueri tabel yang dipartisi berdasarkan waktu penyerapan menggunakan kolom pseudo berlaku saat membuat predikat kueri dengan kolom pseudo _FILE_NAME.

Langkah selanjutnya