Deskripsi metrik sisi klien
Metrik sisi klien tersedia untuk beberapa library klien Bigtable. Halaman ini memberikan deskripsi mendetail tentang setiap metrik sisi klien.
Untuk Go, C++, dan Node.js, metrik ini diaktifkan secara default di versi yang didukung. Untuk library klien Java, metrik tersedia sebagai fitur keikutsertaan atau secara default, bergantung pada versi library klien. Untuk mengetahui informasi tentang versi tertentu, lihat bagian "Dukungan library klien" di setiap metrik.
Untuk mempelajari cara menyiapkan dan mengonfigurasi metrik sisi klien, lihat Menyiapkan metrik sisi klien. Untuk ringkasannya, lihat Ringkasan metrik sisi klien.
Metrik dipublikasikan ke region cluster Bigtable yang
ditujukannya. Jika Bigtable tidak dapat menyelesaikan cluster untuk metrik, seperti saat operasi gagal, metrik akan dipublikasikan ke region global dan tag cluster memiliki nilai unspecified.
Gunakan metrik sisi klien bersama dengan metrik sisi server untuk men-debug performa. Untuk mengetahui daftar lengkap metrik sisi server dan sisi klien Bigtable, lihat Metrik.
Latensi operasi
Tabel berikut menunjukkan atribut dan detail metrik latensi operasi.
| Atribut | Deskripsi |
|---|---|
| Metrik lengkap | bigtable.googleapis.com/client/operation_latencies |
| Definisi | Total latensi end-to-end di semua percobaan RPC yang terkait dengan
operasi Bigtable. Metrik ini mengukur
perjalanan pulang pergi operasi dari klien ke Bigtable dan
kembali ke klien serta mencakup semua percobaan ulang. Untuk permintaan ReadRows, latensi operasi mencakup
waktu pemrosesan aplikasi untuk setiap pesan yang ditampilkan. |
| Operasi Bigtable yang didukung |
|
| Jenis | Distribusi |
| Dimensi yang tersedia |
|
Dukungan library klien
Tabel berikut menunjukkan versi library klien minimum yang diperlukan untuk menggunakan metrik latensi operasi.
| Bahasa | Klien | Versi (Ikut serta) | Versi (Diaktifkan secara default) |
|---|---|---|---|
| Java | java-bigtable |
2.16.0 | 2.38.0 |
java-bigtable-hbase |
2.6.4 | 2.14.1 | |
| Go | 1.27.0 | ||
| Node.js | 6.2.0 (operasi ReadRows dan ReadRow), 6.3.0 (operasi lainnya) |
||
| C++ | 2.40.0 | ||
Latensi percobaan
Tabel berikut menunjukkan atribut dan detail metrik latensi percobaan.
| Atribut | Deskripsi |
|---|---|
| Metrik lengkap | bigtable.googleapis.com/client/attempt_latencies |
| Definisi | Latensi upaya RPC klien. Dalam keadaan normal, nilai ini sama dengan operation_latencies. Namun, jika klien menerima error sementara, operation_latencies adalah jumlah semua attempt_latencies dan penundaan eksponensial. |
| Operasi Bigtable yang didukung |
|
| Jenis | Distribusi |
| Dimensi yang tersedia |
|
Dukungan library klien
Tabel berikut menunjukkan versi library klien minimum yang diperlukan untuk menggunakan metrik latensi percobaan.
| Bahasa | Klien | Versi (Ikut serta) | Versi (Diaktifkan secara default) |
|---|---|---|---|
| Java | java-bigtable |
2.16.0 | 2.38.0 |
java-bigtable-hbase |
2.6.4 | 2.14.1 | |
| Go | 1.27.0 | ||
| Node.js | 6.2.0 (operasi ReadRows dan ReadRow), 6.3.0 (operasi lainnya) |
||
| C++ | 2.40.0 | ||
Jumlah percobaan ulang
Tabel berikut menunjukkan atribut dan detail metrik jumlah percobaan ulang.
| Atribut | Deskripsi |
|---|---|
| Metrik lengkap | bigtable.googleapis.com/client/retry_count |
| Definisi | Penghitung yang mencatat jumlah upaya yang diperlukan untuk menyelesaikan operasi. Dalam keadaan normal, nilai ini kosong. |
| Operasi Bigtable yang didukung |
|
| Jenis | INT64 |
| Dimensi yang tersedia |
|
Dukungan library klien
Tabel berikut menunjukkan versi library klien minimum yang diperlukan untuk menggunakan metrik jumlah percobaan ulang.
| Bahasa | Klien | Versi (Ikut serta) | Versi (Diaktifkan secara default) |
|---|---|---|---|
| Java | java-bigtable |
2.16.0 | 2.38.0 |
java-bigtable-hbase |
2.6.4 | 2.14.1 | |
| Go | 1.27.0 | ||
| Node.js | 6.2.0 (operasi ReadRows dan ReadRow), 6.3.0 (operasi lainnya) |
||
| C++ | 2.40.0 | ||
Latensi pemblokiran aplikasi
Tabel berikut menunjukkan atribut dan detail metrik latensi pemblokiran aplikasi.
| Atribut | Deskripsi |
|---|---|
| Metrik lengkap | bigtable.googleapis.com/client/application_blocking_latencies |
| Definisi | Waktu sejak klien menerima respons terhadap permintaan hingga aplikasi membaca respons. Metrik ini paling
relevan untuk permintaan ReadRows. Waktu mulai dan berhenti
untuk metrik ini bergantung pada cara Anda mengirim permintaan baca; lihat
Contoh timer latensi pemblokiran aplikasi
untuk mengetahui detailnya.
|
| Operasi Bigtable yang didukung |
|
| Jenis | Distribusi |
| Dimensi yang tersedia |
|
Dukungan library klien
Tabel berikut menunjukkan versi library klien minimum yang diperlukan untuk menggunakan metrik latensi pemblokiran aplikasi.
| Bahasa | Klien | Versi (Ikut serta) | Versi (Diaktifkan secara default) |
|---|---|---|---|
| Java | java-bigtable |
2.16.0 | 2.38.0 |
java-bigtable-hbase |
2.6.4 | 2.14.1 | |
| Go | 1.38.0 | ||
| Node.js | 6.3.0 (operasi ReadRows) |
||
| C++ | 2.41.0 | ||
Contoh timer latensi pemblokiran aplikasi
Permintaan ReadRows biasanya dikirim dengan salah satu dari tiga cara: secara iteratif,
secara asinkron, atau sebagai panggilan mendatang. Contoh berikut menunjukkan waktu mulai dan berhenti untuk latensi pemblokiran aplikasi untuk setiap jenis operasi ReadRows.
Iteratif
long totaLatency=0;
ServerStream<Row> stream = bigtableDataClient.readRows(query);
for (Row row : stream) {
timer.start();
// Do something with row
timer.stop();
totalLatency += timer.elapsed();
}
Asinkron
client.readRowsAsync(query, new ResponseObserver<Row>() {
@Override
public void onStart(StreamController streamController) {
}
@Override
public void onResponse(Row row) {
timer.start();
// Do something with the row
timer.stop();
totalLatency += timer.elapsed();
}
@Override
public void onError(Throwable throwable) {
// Do something with the error
}
@Override
public void onComplete() {
}
});
Panggilan mendatang
Latensi pemblokiran aplikasi harus sekitar 0 (tanpa timer) untuk
jenis permintaan ReadRows ini.
List<Row> rows = bigtableDataClient.readRowsCallable().all().call(query);
Latensi respons pertama
Tabel berikut menunjukkan atribut dan detail metrik latensi respons pertama.
| Atribut | Deskripsi |
|---|---|
| Metrik lengkap | bigtable.googleapis.com/client/first_response_latencies |
| Definisi | Latensi dari saat klien mengirim permintaan dan menerima baris pertama respons. |
| Operasi Bigtable yang didukung | ReadRows |
| Jenis | Distribusi |
| Dimensi yang tersedia |
|
Dukungan library klien
Tabel berikut menunjukkan versi library klien minimum yang diperlukan untuk menggunakan metrik latensi respons pertama.
| Bahasa | Klien | Versi (Ikut serta) | Versi (Diaktifkan secara default) |
|---|---|---|---|
| Java | java-bigtable |
2.16.0 | 2.38.0 |
java-bigtable-hbase |
2.6.4 | 2.14.1 | |
| Go | 1.27.0 | ||
| Node.js | 6.2.0 (operasi ReadRows dan ReadRow), 6.3.0 (operasi lainnya) |
||
| C++ | 2.40.0 | ||
Latensi server
Tabel berikut menunjukkan atribut dan detail metrik latensi server.
| Atribut | Deskripsi |
|---|---|
| Metrik lengkap | bigtable.googleapis.com/client/server_latencies |
| Definisi | Latensi antara waktu saat frontend Google menerima RPC dan saat mengirim byte pertama respons. |
| Operasi Bigtable yang didukung |
|
| Jenis | Distribusi |
| Dimensi yang tersedia |
|
Dukungan library klien
Tabel berikut menunjukkan versi library klien minimum yang diperlukan untuk menggunakan metrik latensi server.
| Bahasa | Klien | Versi (Ikut serta) | Versi (Diaktifkan secara default) |
|---|---|---|---|
| Java | java-bigtable |
2.16.0 | 2.38.0 |
java-bigtable-hbase |
2.6.4 | 2.14.1 | |
| Go | 1.27.0 | ||
| Node.js | 6.2.0 (operasi ReadRows dan ReadRow), 6.3.0 (operasi lainnya) |
||
| C++ | 2.41.0 | ||
Jumlah error konektivitas
Tabel berikut menunjukkan atribut dan detail metrik jumlah kesalahan konektivitas.
| Atribut | Deskripsi |
|---|---|
| Metrik lengkap | bigtable.googleapis.com/client/connectivity_error_count |
| Definisi | Jumlah permintaan yang gagal menjangkau jaringan Google. Dalam kasus normal, angka ini adalah 0. Jika angka bukan 0, hal ini dapat menunjukkan masalah konektivitas antara aplikasi dan jaringan Google. |
| Operasi Bigtable yang didukung |
|
| Jenis | Distribusi |
| Dimensi yang tersedia |
|
Dukungan library klien
Tabel berikut menunjukkan versi library klien minimum yang diperlukan untuk menggunakan metrik jumlah error konektivitas.
| Bahasa | Klien | Versi (Ikut serta) | Versi (Diaktifkan secara default) |
|---|---|---|---|
| Java | java-bigtable |
2.16.0 | 2.38.0 |
java-bigtable-hbase |
2.6.4 | 2.14.1 | |
| Go | 1.38.0 | ||
| Node.js | 6.2.0 (operasi ReadRows dan ReadRow), 6.3.0 (operasi lainnya) |
||
| C++ | 2.41.0 | ||
Latensi pemblokiran klien
Tabel berikut menunjukkan atribut dan detail metrik latensi pemblokiran klien.
| Atribut | Deskripsi |
|---|---|
| Metrik lengkap | bigtable.googleapis.com/client/client_blocking_latencies |
| Definisi | Latensi terjadi saat klien memblokir pengiriman lebih banyak permintaan ke server karena terlalu banyak permintaan yang tertunda dalam operasi massal. Untuk versi 2.21.0 dan yang lebih baru, metrik ini juga mencakup latensi permintaan yang diantrekan di channel gRPC saat klien membuat channel. |
| Operasi Bigtable yang didukung |
|
| Jenis | Distribusi |
| Dimensi yang tersedia |
|
Dukungan library klien
Tabel berikut menunjukkan versi library klien Java minimum yang diperlukan untuk menggunakan metrik latensi pemblokiran klien.
| Bahasa | Klien | Versi (Ikut serta) | Versi (Diaktifkan secara default) |
|---|---|---|---|
| Java | java-bigtable |
2.16.0 | 2.38.0 |
java-bigtable-hbase |
2.6.4 | 2.14.1 |