Tabel statistik bawaan untuk Spanner membantu Anda menyelidiki masalah di database Anda. Anda dapat membuat kueri tabel ini untuk mendapatkan insight tentang kueri, transaksi, dan pembacaan. Daftar tabel statistik bawaan (atau alat introspeksi) berikut tersedia di Spanner:
- Statistik DML yang dipartisi aktif
- Statistik operasi kolom
- Statistik kunci
- Statistik kueri aktif terlama
- Statistik kueri
- Statistik operasi baca
- Membagi statistik
- Statistik operasi tabel
- Statistik ukuran tabel
- Statistik transaksi
- Statistik indeks vektor
Tabel ini mengakses data SPANNER_SYS, yang hanya tersedia melalui antarmuka Spanner SQL berikut:
- Halaman Spanner Studio database di konsol Google Cloud .
- Perintah
gcloud spanner databases execute-sql. - Metode
executeSqlatauexecuteStreamingSql.
Anda tidak dapat menggunakan metode baca tunggal lainnya untuk membuat kueri tabel SPANNER_SYS.
Metode API yang disertakan untuk setiap alat
Di Spanner, ada beberapa tumpang-tindih antara transaksi, pembacaan, dan kueri. Oleh karena itu, metode API mana yang disertakan saat mengompilasi hasil untuk setiap alat introspeksi mungkin tidak jelas. Tabel berikut mencantumkan metode API utama dan hubungannya dengan setiap alat.
| Metode API | Mode Transaksi | Statistik kueri | Kueri aktif terlama | Statistik operasi baca | Statistik transaksi | Statistik kunci |
|---|---|---|---|---|---|---|
| Read, StreamingRead | Transaksi hanya baca1 | Tidak | Tidak | Ya | Tidak | Tidak |
| Transaksi baca-tulis | Tidak | Tidak | Ya | Ya | Ya | |
| ExecuteSql, ExecuteStreamingSql | Transaksi hanya baca1 | Ya2 | Ya2 | Tidak | Tidak | Tidak |
| Transaksi baca-tulis | Ya | Ya | Tidak | Ya | Ya | |
| ExecuteBatchDml | Transaksi baca-tulis | Ya3 | Ya4 | Tidak | Ya | Ya |
| Commit | Transaksi baca-tulis (DML5, Mutasi6) | Tidak | Tidak | Tidak | Ya | Ya |
Catatan:
1 Transaksi hanya baca tidak disertakan dalam statistik transaksi atau statistik kunci. Hanya transaksi baca-tulis yang disertakan dalam statistik transaksi dan statistik kunci.
2 Kueri yang dijalankan dengan PartitionQuery API tidak disertakan dalam statistik kueri aktif terlama.
3 Batch pernyataan DML muncul dalam statistik kueri sebagai satu entri.
4 Pernyataan dalam batch akan muncul di kueri aktif terlama, bukan seluruh batch.
5 Operasi DML yang belum di-commit tidak disertakan dalam statistik transaksi.
6 Mutasi kosong yang pada dasarnya tidak beroperasi tidak disertakan dalam statistik transaksi.
Statistik DML yang dipartisi aktif
Statistik bahasa manipulasi data (DML) berpartisi aktif memberikan progres real-time untuk DML berpartisi yang aktif di database Anda.
Statistik operasi kolom
Anda dapat menggunakan Statistik operasi kolom untuk melakukan hal berikut:
- Pantau statistik kolom dalam tabel Anda.
- Temukan tren penggunaan kolom tabel Anda.
Statistik kunci
Statistik kunci dapat digunakan untuk menyelidiki konflik kunci di database Anda. Jika digunakan dengan statistik transaksi, Anda dapat menemukan transaksi yang menyebabkan konflik penguncian dengan mencoba mendapatkan penguncian pada sel yang sama pada waktu yang sama.
Anda dapat memvisualisasikan metrik ini pada deret waktu menggunakan dasbor Kunci insight. Dasbor bawaan membantu Anda melihat waktu tunggu kunci dan mengonfirmasi apakah latensi disebabkan oleh persaingan kunci dengan waktu tunggu kunci yang tinggi.
Statistik kueri aktif terlama
Terkadang Anda ingin melihat beban kerja saat ini pada sistem dengan memeriksa kueri yang sedang berjalan. Gunakan alat Kueri aktif terlama untuk menyelidiki kueri yang berjalan lama yang mungkin berdampak pada performa database. Alat ini memberi tahu Anda kueri apa saja, kapan kueri tersebut mulai berjalan, dan sesi mana yang memilikinya.
Kueri aliran perubahan tidak disertakan dalam kueri aktif terlama.
Statistik kueri
Saat menyelidiki masalah di database, akan sangat membantu untuk mengetahui kueri mana yang mahal, sering dijalankan, atau memindai banyak data.
Statistik kueri adalah statistik gabungan untuk kueri (termasuk pernyataan DML dan kueri aliran perubahan), yang dikumpulkan dalam interval 1, 10, dan 60 menit. Statistik dikumpulkan untuk pernyataan yang berhasil diselesaikan serta yang gagal, kehabisan waktu, atau dibatalkan oleh pengguna.
Statistik ini mencakup penggunaan CPU tertinggi, jumlah total eksekusi kueri, latensi rata-rata, data yang paling banyak dipindai, dan statistik kueri dasar tambahan. Gunakan statistik ini untuk membantu mengidentifikasi kueri yang mahal, sering dijalankan, atau membutuhkan banyak data.
Anda dapat memvisualisasikan metrik ini pada deret waktu menggunakan dasbor Query Insights. Dasbor bawaan ini membantu Anda melihat lonjakan penggunaan CPU dan mengidentifikasi kueri yang tidak efisien.
Statistik operasi baca
Statistik baca dapat digunakan untuk menyelidiki bacaan yang paling umum dan paling banyak menggunakan resource di database Anda menggunakan Reads API Spanner. Statistik ini dikumpulkan dan disimpan dalam 3 interval waktu yang berbeda - menit, 10 menit, dan satu jam. Untuk setiap interval waktu, Spanner melacak pembacaan yang menggunakan sebagian besar resource.
Gunakan statistik baca untuk mengetahui gabungan penggunaan resource oleh semua bacaan, menemukan bacaan yang paling banyak menggunakan CPU, dan mengetahui bagaimana frekuensi bacaan tertentu berubah dari waktu ke waktu.
Membagi statistik
Anda dapat men-debug hotspot di database untuk menemukan bagian dalam database yang hangat atau panas, yang berarti persentase beban yang tinggi pada bagian dibatasi oleh resource yang tersedia. Anda dapat melihat statistik untuk pemisahan yang memiliki skor penggunaan CPU pemisahan tertinggi selama 6 jam terakhir, berdasarkan interval 1 menit.
Statistik operasi tabel
Anda dapat menggunakan Statistik operasi tabel untuk melakukan hal berikut:
- Pantau penggunaan tabel dan indeks di database Anda.
- Temukan tren penggunaan tabel dan indeks Anda.
- Mengidentifikasi perubahan lalu lintas.
Selain itu, Anda dapat mengorelasikan perubahan dalam penyimpanan tabel dengan perubahan dalam traffic penulisan.
Statistik ukuran tabel
Anda dapat menggunakan Statistik ukuran tabel untuk memantau ukuran historis tabel dan indeks dalam database Anda.
Gunakan statistik ukuran tabel untuk menemukan tren ukuran tabel, indeks, dan tabel aliran perubahan. Anda juga dapat melacak tabel dan indeks terbesar.
Perhatikan bahwa fitur ini hanya memberikan perspektif historis. Fitur ini tidak untuk pemantauan real-time.
Statistik transaksi
Anda dapat menggunakan Statistik transaksi untuk menyelidiki masalah terkait transaksi. Misalnya, Anda dapat memeriksa transaksi yang berjalan lambat yang mungkin menyebabkan pertentangan atau mengidentifikasi perubahan bentuk transaksi yang menyebabkan regresi performa. Setiap baris berisi statistik semua transaksi yang dijalankan melalui database selama interval 1, 10, dan 60 menit.
Anda dapat memvisualisasikan metrik ini pada deret waktu menggunakan dasbor Insight transaksi. Dasbor bawaan membantu Anda melihat latensi dalam transaksi dan mengidentifikasi transaksi yang bermasalah.
Statistik indeks vektor
Anda dapat menggunakan statistik indeks vektor untuk meninjau performa indeks vektor, mengidentifikasi area yang perlu ditingkatkan, dan menyesuaikan indeks berdasarkan metrik yang diberikan.