Dapatkan statistik kueri
Halaman ini menjelaskan cara mendapatkan statistik kueri menggunakan CLI cbt
. Anda juga bisa mendapatkan statistik kueri menggunakan library klien Go untuk Cloud Bigtable.
Konten yang diberikan di sini ditujukan untuk developer aplikasi. Sebelum membaca halaman ini, Anda harus memahami model penyimpanan Bigtable. Anda juga harus memahami Praktik terbaik desain skema dan memahami performa.
Kemampuan untuk mendapatkan informasi tentang kueri Bigtable dapat berguna ketika Anda mengembangkan aplikasi. Cara ini memungkinkan Anda mendapatkan data tentang performa kueri, lalu menyesuaikan kueri atau mengubah desain skema untuk menyesuaikan performa kueri Anda.
Meskipun secara umum kueri adalah permintaan data yang dikirim ke tabel, BigQuery menampilkan statistik kueri hanya untuk permintaan baca.
Sebelum memulai
- Jika Anda belum menginstal CLI
cbt
, ikuti petunjuk pada ringkasan CLIcbt
termasuk langkah-langkah untuk membuat file.cbtrc
. - Tinjau bagian Membaca baris dari referensi CLI
cbt
untuk memahami sintaksis command line dan opsi yang tersedia untuk mengirim permintaancbt read
ke tabel Anda. Perlu diperhatikan bahwa CLIcbt
tidak mendukung filter. - Pastikan Anda memiliki izin
bigtable.tables.readRows
untuk tabel atau Anda adalah akun utama peranbigtable.reader
.
Jalankan kueri Anda
Buat kueri menggunakan sintaksis untuk Membaca baris.
Jalankan perintah berikut. Parameter
include-stats=full
memberi tahu Bigtable untuk menampilkan statistik kueri.cbt read TABLE_ID QUERY include-stats=full
Ganti kode berikut:
TABLE_ID
: ID unik untuk tabel yang sedang Anda kuerikanQUERY
: kueri berformat CLIcbt
Terminal menampilkan data yang telah dibaca dan daftar yang berisi statistik berikut:
rows_seen_count
: jumlah baris yang diproses Bigtable untuk permintaanrows_returned_count
: jumlah baris yang ditampilkan setelah menerapkan filtercells_seen_count
: jumlah sel yang diproses untuk permintaancells_returned_count
: jumlah sel yang ditampilkan setelah menerapkan filterfrontend_server_latency
: latensi permintaan yang diukur dari kumpulan server front-end Bigtable, yang dinyatakan dalam milidetik
Menafsirkan hasilnya
Lihat rasio sel yang terlihat terhadap sel yang ditampilkan. Jika hasil bagi untuk
cells_seen_count
/cells_returned_count
adalah 1 atau mendekati 1, itu adalah indikasi bahwa kueri Anda tidak menyebabkan Bigtable memproses data yang pada akhirnya dikecualikan.Pertimbangkan jumlah baris yang ditampilkan. Semakin tinggi angkanya, semakin banyak pekerjaan yang dilakukan Bigtable. Jumlah optimal di sini bergantung pada kasus penggunaan dan persyaratan latensi Anda, tetapi secara umum, kueri yang menampilkan lebih sedikit baris akan memiliki latensi yang lebih rendah.
Contoh
Jika ingin mendapatkan statistik kueri saat membaca semua baris yang cocok dengan ekspresi reguler orange:*.*
dalam tabel yang disebut my-table
, Anda dapat menjalankan hal berikut:
cbt read my-table regex='.*orange' columns='.*:.*' include-stats=full
Outputnya mirip dengan hal berikut ini:
----------------------------------------
orange
Details:Color @ 2022/09/26-14:48:01.286000
"orange"
Details:Size @ 2022/09/26-14:48:01.286000
"medium"
Request Stats
====================
rows_seen_count: 10
rows_returned_count : 1
cells_seen_count: 2
cells_returned_count: 2
frontend_server_latency: 13ms