Ringkasan analisis BigQuery
Dokumen ini menjelaskan cara BigQuery memproses kueri dan memberikan ringkasan beberapa fitur yang berguna untuk analisis data.
BigQuery dioptimalkan untuk menjalankan kueri analisis pada set data besar, termasuk data terabyte dalam hitungan detik dan petabyte dalam hitungan menit. Dengan memahami kemampuannya dan cara memproses kueri, Anda dapat memaksimalkan investasi analisis data.
Untuk mengikuti tur fitur analisis data BigQuery langsung di konsol Google Cloud, klik Ikuti tur.
Alur kerja analitik
BigQuery mendukung beberapa alur kerja analisis data:
Analisis ad hoc. BigQuery menggunakan GoogleSQL, dialek SQL di BigQuery, untuk mendukung analisis ad hoc. Anda dapat menjalankan kueri di konsol Google Cloud atau melalui alat pihak ketiga yang terintegrasi dengan BigQuery.
Analisis geospasial. BigQuery menggunakan jenis data geografi dan fungsi geografi GoogleSQL untuk memungkinkan Anda menganalisis dan memvisualisasikan data geospasial. Untuk mengetahui informasi tentang jenis dan fungsi data ini, lihat Pengantar analisis geospasial.
Machine learning. BigQuery ML menggunakan kueri GoogleSQL agar Anda dapat membuat dan menjalankan model machine learning (ML) di BigQuery.
Business intelligence. BigQuery BI Engine adalah layanan analisis dalam memori yang cepat dan memungkinkan Anda membuat dasbor dan laporan yang lengkap dan interaktif tanpa mengorbankan performa, skalabilitas, keamanan, atau keaktualan data.
Kueri
Unit utama analisis dalam BigQuery adalah kueri SQL. BigQuery memiliki dua dialek SQL: GoogleSQL dan legacy SQL. GoogleSQL adalah dialek yang disukai. Platform ini mendukung SQL:2011 dan mencakup ekstensi yang mendukung analisis geospasial atau ML.
Bagian berikut menjelaskan cara BigQuery mendukung dan menjalankan kueri data.
Sumber data
BigQuery memungkinkan Anda membuat kueri jenis sumber data berikut:
Data disimpan di BigQuery. Anda dapat memuat data ke BigQuery untuk dianalisis. Anda juga dapat menghasilkan data menggunakan pernyataan bahasa manipulasi data (DML) atau dengan menulis hasil kueri ke dalam tabel. Anda dapat membuat kueri data yang disimpan di lokasi satu region atau multi-region, tetapi Anda tidak dapat menjalankan kueri terhadap beberapa lokasi meskipun salah satunya adalah lokasi satu region dan yang lainnya adalah multi-region lokasi yang berisi lokasi satu region tersebut. Untuk mengetahui informasi selengkapnya, lihat Lokasi, reservasi, dan pekerjaan.
Data eksternal. Anda dapat membuat kueri berbagai sumber data eksternal seperti layanan penyimpanan Google Cloud lainnya (seperti Cloud Storage) atau layanan database (seperti Spanner atau Cloud SQL). Untuk informasi cara menyiapkan koneksi ke sumber eksternal, lihat Pengantar sumber data eksternal
Data multi-cloud. Anda dapat mengkueri data yang disimpan di cloud publik lainnya, seperti AWS atau Azure. Untuk mengetahui informasi cara menyiapkan koneksi ke penyimpanan blob Amazon S3 atau Azure, baca pengantar BigQuery Omni.
Set data publik. Jika tidak memiliki data sendiri, Anda dapat menganalisis set data apa pun yang tersedia di marketplace set data publik.
Tugas kueri
Tugas adalah tindakan yang dijalankan BigQuery atas nama Anda untuk memuat data, mengekspor data, melakukan kueri data, atau menyalin data.
Saat Anda menggunakan konsol Google Cloud atau alat bq untuk melakukan salah satu tugas ini, resource tugas akan otomatis dibuat, dijadwalkan, dan dijalankan. Anda juga dapat membuat tugas pemuatan, ekspor, kueri, atau penyalinan secara terprogram. Saat Anda membuat tugas secara terprogram, BigQuery menjadwalkan dan menjalankan tugas untuk Anda.
Karena tugas berpotensi memerlukan waktu lama untuk diselesaikan, tugas berjalan secara asinkron dan dapat di-polling untuk statusnya. Tindakan yang lebih singkat, seperti mencantumkan resource atau mendapatkan metadata, tidak dikelola oleh resource tugas.
Jenis kueri
Anda dapat membuat kueri data BigQuery menggunakan salah satu jenis tugas kueri berikut:
- Tugas kueri interaktif. Secara default, BigQuery menjalankan tugas kueri interaktif (sesuai permintaan) sesegera mungkin.
Tugas kueri berkelanjutan (Pratinjau). Dengan tugas ini, kueri berjalan terus-menerus, sehingga Anda dapat menganalisis data yang masuk di BigQuery secara real time, lalu menulis hasilnya ke tabel BigQuery, atau mengekspor hasilnya ke Bigtable atau Pub/Sub. Anda dapat menggunakan kemampuan ini untuk melakukan tugas yang sensitif terhadap waktu, seperti membuat dan segera menindaklanjuti insight, menerapkan inferensi machine learning (ML) real-time, dan membangun pipeline data berbasis peristiwa.
Tugas kueri batch. Dengan tugas ini, BigQuery akan mengantrekan setiap kueri batch atas nama Anda, lalu memulai kueri tersebut saat resource tanpa aktivitas tersedia, biasanya dalam beberapa menit.
Anda dapat menjalankan tugas kueri menggunakan metode berikut:
- Buat dan jalankan kueri di konsol Google Cloud.
- Jalankan perintah
bq query
di alat command line bq. - Secara terprogram panggil metode
jobs.query
ataujobs.insert
di BigQuery REST API. - Menggunakan library klien BigQuery.
Kueri yang disimpan dan dibagikan
BigQuery memungkinkan Anda menyimpan kueri dan membagikan kueri dengan orang lain.
Kueri yang Anda simpan dapat bersifat pribadi (hanya dapat dilihat oleh Anda), dibagikan di level project (terlihat oleh akun utama tertentu), atau publik (siapa saja dapat melihatnya). Untuk mengetahui informasi selengkapnya, lihat Bekerja dengan kueri tersimpan.
Cara BigQuery memproses kueri
Beberapa proses terjadi saat BigQuery menjalankan kueri:
Hierarki eksekusi. Saat Anda menjalankan kueri, BigQuery akan menghasilkan hierarki eksekusi yang membagi kueri menjadi beberapa tahapan. Tahapan ini berisi langkah-langkah yang dapat berjalan secara paralel.
Tingkat acak. Tahapan berkomunikasi satu sama lain menggunakan tingkat acak yang cepat dan terdistribusi yang menyimpan data perantara yang dihasilkan oleh pekerja suatu tahap. Jika memungkinkan, tingkat acak akan memanfaatkan teknologi seperti jaringan petabit dan RAM untuk memindahkan data dengan cepat ke node pekerja.
Paket kueri. Setelah memiliki semua informasi yang diperlukan untuk menjalankan kueri, BigQuery akan menghasilkan rencana kueri. Anda dapat melihat rencana ini di konsol Google Cloud dan menggunakannya untuk memecahkan masalah atau mengoptimalkan performa kueri.
Pemantauan kueri dan perencanaan dinamis. Selain pekerja yang melakukan pekerjaan paket kueri itu sendiri, pekerja tambahan memantau dan mengarahkan progres pekerjaan secara keseluruhan di seluruh sistem. Saat kueri berlangsung, BigQuery mungkin menyesuaikan paket kueri secara dinamis untuk beradaptasi dengan hasil berbagai tahap.
Hasil kueri. Setelah kueri selesai, BigQuery akan menulis hasilnya ke penyimpanan persisten, lalu menampilkannya kepada pengguna. Desain ini memungkinkan BigQuery menyajikan hasil yang di-cache saat kueri dijalankan lagi.
Konkurensi dan performa kueri
Performa kueri yang dijalankan berulang kali pada data yang sama dapat bervariasi karena sifat bersama dari lingkungan BigQuery, atau karena BigQuery secara dinamis menyesuaikan paket kueri saat kueri berjalan. Untuk sistem sibuk standar dengan banyak kueri yang berjalan secara serentak, BigQuery menggunakan beberapa proses untuk memperlancar varian dalam performa kueri:
BigQuery menjalankan banyak kueri secara paralel, sehingga tidak selalu perlu mengantrekan kueri.
Dalam sistem yang sibuk, antrean adalah sumber utama performa yang kurang dapat diprediksi karena tidak jelas berapa lama kueri berada dalam antrean. Waktu kueri dalam antrean dapat lebih bergantung pada kueri lain yang sedang berjalan atau berada dalam antrean daripada pada kualitas kueri itu sendiri.
Saat kueri dimulai dan selesai, BigQuery mendistribusikan ulang resource secara adil antara kueri yang baru dan yang sedang berjalan. Proses ini memastikan bahwa performa kueri tidak bergantung pada urutan kueri dikirimkan, melainkan jumlah kueri yang dijalankan pada waktu tertentu.
Pengoptimalan kueri
Setelah kueri selesai, Anda dapat melihat paket kueri di konsol Google Cloud. Anda juga dapat meminta detail eksekusi dengan menggunakan tampilan INFORMATION_SCHEMA.JOBS*
atau metode REST API jobs.get
.
Paket kueri mencakup detail tentang tahapan dan langkah kueri. Detail ini dapat membantu Anda mengidentifikasi cara meningkatkan performa kueri. Misalnya, jika Anda melihat tahap yang menulis lebih banyak output daripada tahap lain, ini mungkin berarti Anda perlu memfilter lebih awal dalam kueri.
Untuk mengetahui informasi selengkapnya tentang paket kueri dan pengoptimalan kueri, lihat referensi berikut:
- Untuk mempelajari lebih lanjut paket kueri dan melihat contoh bagaimana informasi rencana dapat membantu Anda meningkatkan performa kueri, lihat Linimasa dan rencana kueri.
- Untuk mengetahui informasi selengkapnya tentang pengoptimalan kueri secara umum, lihat Pengantar pengoptimalan performa kueri.
Pemantauan kueri
Pemantauan dan logging sangat penting untuk menjalankan aplikasi yang andal di cloud. Begitu pula dengan beban kerja BigQuery, terutama jika beban kerja Anda memiliki volume tinggi atau sangat penting. BigQuery menyediakan berbagai metrik, log, dan tampilan metadata untuk membantu Anda memantau penggunaan BigQuery.
Untuk informasi selengkapnya, lihat referensi berikut:
- Untuk mempelajari opsi pemantauan di BigQuery, lihat Pengantar pemantauan BigQuery.
- Untuk mempelajari log audit dan cara menganalisis perilaku kueri, lihat log audit BigQuery.
Harga kueri
BigQuery menawarkan dua model penetapan harga untuk analisis:
- Harga sesuai permintaan. Anda membayar untuk data yang dipindai oleh kueri Anda. Anda memiliki kapasitas pemrosesan kueri tetap untuk setiap project, dan biaya Anda didasarkan pada jumlah byte yang diproses.
- Harga berdasarkan kapasitas. Anda membeli kapasitas pemrosesan kueri khusus.
Untuk mengetahui informasi tentang kedua model harga dan mempelajari lebih lanjut cara melakukan reservasi untuk harga berdasarkan kapasitas, lihat Pengantar reservasi.
Kuota dan kontrol biaya kueri
BigQuery menerapkan kuota level project saat menjalankan kueri. Untuk mengetahui informasi tentang kuota kueri, lihat Kuota dan batas.
Untuk mengontrol biaya kueri, BigQuery menyediakan beberapa opsi, termasuk kuota kustom dan pemberitahuan penagihan. Untuk mengetahui informasi selengkapnya, lihat Membuat kontrol biaya kustom.
Fitur analisis data
BigQuery mendukung analisis deskriptif dan prediktif. Untuk mengkueri data secara langsung guna menjawab beberapa pertanyaan statistik, Anda dapat menggunakan konsol Google Cloud. Untuk menjelajahi data secara visual, seperti tren dan anomali, Anda dapat menggunakan alat seperti Tableau atau Looker yang terintegrasi dengan BigQuery.
BigQuery Studio
BigQuery Studio membantu Anda menemukan, menganalisis, dan menjalankan inferensi pada data di BigQuery dengan fitur berikut:
- Editor SQL canggih yang menyediakan pelengkapan kode, validasi kueri, dan estimasi byte yang diproses.
- Notebook Python tersemat yang dibuat menggunakan Colab Enterprise. Notebook menyediakan runtime pengembangan Python sekali klik, dan dukungan bawaan untuk BigQuery DataFrames.
- Editor PySpark yang memungkinkan Anda membuat prosedur Python tersimpan untuk Apache Spark.
- Pengelolaan aset dan histori versi untuk aset kode seperti notebook dan kueri tersimpan, yang dibuat berdasarkan Dataform.
- Pengembangan kode pendukung di editor SQL dan notebook, yang dibuat di atas AI generatif Gemini (Pratinjau).
- Fitur Dataplex untuk pemindaian penemuan data, dan pembuatan profil data serta kualitas data singkat ini.
- Kemampuan untuk melihat histori pekerjaan per pengguna atau per project.
- Kemampuan untuk menganalisis hasil kueri tersimpan dengan terhubung ke alat lain seperti Looker dan Google Spreadsheet, serta mengekspor hasil kueri tersimpan untuk digunakan dalam aplikasi lain.
BigQuery ML
Dengan BigQuery ML, Anda dapat menggunakan SQL di BigQuery untuk menjalankan machine learning (ML) dan analisis prediktif. Untuk mengetahui informasi selengkapnya, lihat Pengantar BigQuery ML.
Integrasi alat Analytics
Selain menjalankan kueri di BigQuery, Anda dapat menganalisis data dengan berbagai alat analisis dan business intelligence yang terintegrasi dengan BigQuery, seperti berikut ini:
Looker. Looker adalah platform perusahaan untuk business intelligence, aplikasi data, dan analisis tersemat. Platform Looker dapat digunakan dengan banyak datastore, termasuk BigQuery. Untuk mengetahui informasi cara menghubungkan Looker ke BigQuery, lihat Menggunakan Looker.
Looker Studio. Setelah menjalankan kueri, Anda dapat meluncurkan Looker Studio langsung dari BigQuery di konsol Google Cloud. Kemudian, di Looker Studio, Anda dapat membuat visualisasi dan menjelajahi data yang dihasilkan dari kueri. Untuk mengetahui informasi tentang Looker Studio, lihat Ringkasan Looker Studio.
Sheet yang Terhubung. Anda juga dapat meluncurkan Sheet yang Terhubung langsung dari BigQuery di konsol. Sheet yang Terhubung menjalankan kueri BigQuery atas nama Anda, baik atas permintaan Anda maupun pada jadwal yang ditentukan. Hasil kueri tersebut disimpan di spreadsheet untuk analisis dan berbagi. Untuk informasi tentang Sheet yang Terhubung, lihat Menggunakan sheet yang terhubung.
Integrasi alat pihak ketiga
Beberapa alat analisis pihak ketiga berfungsi dengan BigQuery. Misalnya, Anda dapat menghubungkan Tableau ke data BigQuery dan menggunakan alat visualisasinya untuk menganalisis dan membagikan analisis. Untuk mengetahui informasi selengkapnya tentang pertimbangan saat menggunakan alat pihak ketiga, lihat Integrasi alat pihak ketiga.
Driver ODBC dan JDBC tersedia dan dapat digunakan untuk mengintegrasikan aplikasi Anda dengan BigQuery. Tujuan dari pendorong ini adalah untuk membantu pengguna memanfaatkan efektivitas BigQuery dengan alat dan infrastruktur yang ada. Untuk mengetahui informasi tentang rilis terbaru dan masalah umum, lihat driver ODBC dan JDBC untuk BigQuery.
Library pandas seperti pandas-gbq
memungkinkan Anda berinteraksi dengan data BigQuery di notebook Jupyter. Untuk mengetahui informasi tentang library ini dan perbandingannya dengan penggunaan library klien Python BigQuery, lihat Perbandingan dengan pandas-gbq
.
Anda juga dapat menggunakan BigQuery dengan alat analisis dan notebook lainnya. Untuk informasi selengkapnya, lihat Alat analisis terprogram.
Untuk mengetahui daftar lengkap analisis BigQuery dan partner teknologi yang lebih luas, lihat daftar Partner di halaman produk BigQuery.
Langkah selanjutnya
- Untuk pengantar dan ringkasan pernyataan SQL yang didukung, baca Pengantar SQL di BigQuery.
- Untuk mempelajari sintaksis GoogleSQL yang digunakan untuk membuat kueri data di BigQuery, baca Sintaksis kueri di GoogleSQL.
- Untuk informasi tentang cara membaca rencana penjelasan kueri, lihat Menggunakan penjelasan paket kueri.
- Untuk mempelajari cara menjadwalkan kueri berulang, lihat Menjadwalkan kueri.