Catatan
Akses ke halaman ini memerlukan otorisasi. Anda dapat mencoba masuk atau mengubah direktori.
Akses ke halaman ini memerlukan otorisasi. Anda dapat mencoba mengubah direktori.
Berlaku untuk:Azure SQL Database
Azure SQL Managed Instance
Pengamat database mengumpulkan data pemantauan dari tampilan sistem SQL dan menyerapnya ke penyimpanan data dalam bentuk himpunan data. Setiap himpunan data dibentuk menggunakan data dari satu atau beberapa tampilan sistem SQL. Untuk setiap himpunan data, ada tabel terpisah di penyimpanan data.
Kumpulan data
Pengamat database mengumpulkan data pemantauan pada interval berkala menggunakan kueri T-SQL. Data yang dikumpulkan dalam setiap eksekusi kueri disebut sampel. Frekuensi pengumpulan sampel bervariasi menurut himpunan data. Misalnya, data yang sering berubah seperti penghitung kinerja SQL mungkin dikumpulkan setiap 10 detik, sementara sebagian besar data statis seperti konfigurasi database mungkin dikumpulkan setiap lima menit. Untuk informasi selengkapnya, lihat Himpunan data.
Pengamat database memanfaatkan pengambilan streaming di Azure Data Explorer dan Real-Time Analytics di Microsoft Fabric untuk menyediakan pemantauan hampir real-time. Biasanya, data pemantauan SQL yang dikumpulkan tersedia untuk pelaporan dan analisis dalam waktu kurang dari 10 detik. Anda dapat memantau latensi penyerapan data di dasbor pengamat database, menggunakan tautan Statistik penyerapan.
Interaksi antara pengamat database dan beban kerja aplikasi
Mengaktifkan pengamat database tidak mungkin memiliki dampak yang dapat diamati pada performa beban kerja aplikasi. Kueri pemantauan yang lebih sering biasanya dijalankan dalam rentang sub-detik, sedangkan kueri yang mungkin memerlukan lebih banyak waktu, misalnya untuk mengembalikan himpunan data besar, berjalan pada interval yang jarang terjadi.
Untuk lebih mengurangi risiko dampak pada beban kerja aplikasi, semua kueri pengamat database di Azure SQL Database diatur sumber daya sebagai beban kerja internal. Ketika ada persaingan sumber daya, konsumsi sumber daya oleh kueri pemantauan dibatasi pada sebagian kecil sumber daya total yang tersedia untuk database. Ini memprioritaskan beban kerja aplikasi daripada kueri pemantauan.
Untuk menghindari konflik konkurensi seperti pemblokiran dan kebuntuan antara pengumpulan data dan beban kerja database yang berjalan pada sumber daya Azure SQL Anda, kueri pemantauan menggunakan batas waktu singkat untuk penguncian dan prioritas kebuntuan yang rendah. Jika ada konflik konkurensi, prioritas diberikan kepada kueri beban kerja aplikasi.
Anda mungkin mengamati celah dalam data yang dikumpulkan dalam skenario berikut:
- Jika pemanfaatan sumber daya secara keseluruhan tinggi, atau jika konflik konkurensi antara kueri pemantauan dan beban kerja aplikasi terjadi. Dalam kasus ini, kueri pemantauan diprioritaskan demi beban kerja aplikasi.
- Jika Anda memiliki otomatisasi yang mengakhiri sesi yang berdurasi lama. Untuk menghindari celah dalam data yang dikumpulkan, kecualikan sesi apa pun di mana
program_namekolom dalam tampilan sistem sys.dm_exec_sessions adalahSQLExternalMonitoringataux_ms_reserved_sql_external_monitoring.
Pengumpulan data dalam kumpulan elastis
Untuk memantau kumpulan elastis, Anda harus menunjuk satu database di kumpulan sebagai database jangkar. Pemantau terhubung ke database jangkar. Karena pengamat memegangVIEW SERVER PERFORMANCE STATE izin, tampilan sistem dalam database jangkar menyediakan data pemantauan untuk kumpulan secara keseluruhan.
Petunjuk
Anda dapat menambahkan database kosong ke setiap kumpulan elastis yang ingin Anda pantau, dan menunjuknya sebagai database jangkar. Dengan cara ini, Anda dapat memindahkan database lain masuk dan keluar dari kumpulan, atau di antara kumpulan, tanpa mengganggu pemantauan kumpulan elastis.
Data yang dikumpulkan dari database jangkar berisi metrik tingkat kumpulan, dan metrik performa tingkat database tertentu untuk setiap database di kumpulan, seperti pemanfaatan sumber daya dan metrik tingkat permintaan untuk setiap database. Untuk beberapa skenario, menambahkan target SQL kumpulan elastis untuk memantau kumpulan elastis secara keseluruhan dapat membuatnya tidak perlu untuk memantau setiap database individu di kumpulan.
Data pemantauan tertentu seperti CPU tingkat kumpulan, memori, pemanfaatan penyimpanan, dan statistik tunggu hanya dikumpulkan pada tingkat kumpulan elastis karena tidak dapat dikaitkan dengan database individual dalam kumpulan. Sebaliknya, data tertentu lainnya seperti statistik runtime kueri, properti database, metadata tabel dan indeks hanya tersedia jika Anda menambahkan database individual sebagai target SQL.
Jika Anda menambahkan database individual dari kumpulan elastis sebagai target SQL, Anda juga harus menambahkan kumpulan elastis sebagai target SQL. Dengan cara ini, Anda mendapatkan tampilan yang lebih lengkap dari database dan performa kumpulan.
Memantau kumpulan elastis yang padat
Kumpulan elastis yang padat berisi sejumlah besar database, tetapi memiliki ukuran komputasi yang relatif kecil. Konfigurasi ini memungkinkan pelanggan mencapai penghematan biaya yang besar dengan menjaga alokasi sumber daya komputasi tetap minimum.
Yang penting, pendekatan ini mengasumsikan bahwa hanya sejumlah kecil database di kumpulan yang memiliki kueri yang berjalan pada saat yang sama.
Peringatan
Karena kueri pemantauan harus dijalankan terus menerus di setiap database yang dipantau, tidak disarankan untuk memantau lebih dari beberapa database individual dalam kumpulan elastis yang padat.
Jika Anda menambahkan banyak database dari kumpulan elastis yang padat sebagai target SQL, pemanfaatan sumber daya kumulatif oleh kueri pemantauan yang berjalan di setiap database dapat memengaruhi beban kerja aplikasi karena sumber daya yang tidak mencukupi di kumpulan.
Untuk alasan yang sama, Anda mungkin melihat celah dalam data yang dikumpulkan atau lebih besar dari interval yang diharapkan antara sampel data.
Untuk memantau kumpulan elastis yang padat, aktifkan pemantauan di tingkat kumpulan dengan menambahkan kumpulan elastis itu sendiri sebagai target SQL. Dengan mengurangi jumlah total kueri pemantauan di kumpulan elastis, Anda menghindari risiko berdampak pada beban kerja aplikasi, sambil tetap mengumpulkan data tingkat kumpulan yang dapat ditindaklanjuti di himpunan datakumpulan elastis SQL.
Pengumpulan data dalam database tanpa server
Jika opsi jeda otomatis pada database tanpa server dinonaktifkan, pengamat database akan memantaunya seperti memantau database yang telah disediakan.
Jika Anda mengaktifkan jeda otomatis pada database tanpa server, pengumpulan data pengamat database akan berhenti saat database dijeda. Kueri pemantauan pengamat database tidak mencegah database tanpa server dijeda jika memenuhi syarat untuk dijeda.
Tak lama setelah database tanpa server beralih ke status Dijeda , statusnya pada dasbor ringkasan pengamat berubah menjadi Tidak dikumpulkan. Data yang dikumpulkan sebelumnya untuk database tetap berada di penyimpanan data Watcher, dan dapat diakses melalui dashboard dan kueri.
Pengumpulan data dilanjutkan dalam beberapa menit setelah transisi database dari status Dijeda ke Online .
Kedaulatan data
Pelanggan dapat memilih untuk menyimpan data pemantauan SQL yang dikumpulkan di salah satu dari tiga jenis penyimpanan data:
Database pada kluster Azure Data Explorer . Secara default, kluster Azure Data Explorer baru dibuat untuk setiap pengamat baru dan terletak di wilayah Azure yang sama dengan pengamat.
Pelanggan dapat memilih wilayah Azure tertentu dalam geografi Azure sebagai lokasi kluster Azure Data Explorer dan database mereka. Untuk informasi selengkapnya tentang kemampuan replikasi data di Azure Data Explorer, lihat Ringkasan kelangsungan bisnis dan pemulihan bencana.
Database pada kluster Azure Data Explorer gratis.
Pelanggan dapat memilih geografi Azure tertentu, tetapi bukan wilayah Azure tertentu sebagai lokasi kluster Azure Data Explorer gratis dan database mereka. Replikasi data ke wilayah atau geografi yang berbeda tidak didukung.
Sebuah database di Real-Time Analytics di Microsoft Fabric.
Pelanggan tidak dapat memilih lokasi geografis database.
Untuk sepenuhnya mengontrol residensi data untuk data pemantauan SQL yang dikumpulkan, pelanggan harus memilih database pada kluster Azure Data Explorer sebagai penyimpanan data.
Pelanggan dapat menyelaraskan geografi dan wilayah kluster Azure Data Explorer mereka ke geografi dan wilayah sumber daya Azure SQL yang sedang dipantau. Saat sumber daya Azure SQL terletak di beberapa wilayah, pelanggan mungkin perlu membuat beberapa pengamat dan beberapa kluster Azure Data Explorer untuk memenuhi persyaratan residensi data mereka.
Himpunan data
Bagian ini menjelaskan himpunan data yang tersedia untuk setiap jenis target SQL, termasuk frekuensi pengumpulan dan nama tabel di penyimpanan data.
Catatan
Selama pratinjau, himpunan data mungkin ditambahkan dan dihapus. Properti himpunan data seperti nama, deskripsi, frekuensi pengumpulan, dan kolom yang tersedia dapat berubah.
| Nama himpunan data | Nama tabel | Frekuensi pengumpulan (hh:mm:ss) | Deskripsi |
|---|---|---|---|
| Sesi aktif | sqldb_database_active_sessions |
00:00:30 |
Setiap baris mewakili sesi yang menjalankan permintaan, adalah pemblokir, atau memiliki transaksi terbuka. |
| Riwayat pencadangan | sqldb_database_sql_backup_history |
00:05:00 |
Setiap baris mewakili pencadangan database yang berhasil diselesaikan. |
| Mengubah pemrosesan | sqldb_database_change_processing |
00:01:00 |
Setiap baris mewakili cuplikan statistik pemindaian log agregat untuk fitur pemrosesan perubahan seperti Change Data Capture atau Change Feed (Azure Synapse Link). |
| Mengubah kesalahan pemrosesan | sqldb_database_change_processing_errors |
00:01:00 |
Setiap baris mewakili kesalahan yang terjadi selama pemrosesan perubahan, saat menggunakan fitur pemrosesan perubahan seperti Ubah Penangkapan Data atau Umpan Perubahan (Azure Synapse Link). |
| Konektivitas | sqldb_database_connectivity |
00:00:30 |
Setiap baris mewakili pemeriksaan konektivitas (login dan kueri) untuk database. |
| Geo-replika | sqldb_database_geo_replicas |
00:00:30 |
Setiap baris mewakili geo-replika primer atau sekunder, termasuk metadata dan statistik replikasi geografis. |
| Indeks metadata | sqldb_database_index_metadata |
00:30:00 |
Setiap baris mewakili partisi indeks dan mencakup definisi indeks, properti, dan statistik operasional. |
| Penggunaan memori | sqldb_database_memory_utilization |
00:00:30 |
Setiap baris mewakili pengelola memori dan mencakup konsumsi memori oleh pengelola pada instans mesin database. |
| Indeks yang tidak ada | sqldb_database_missing_indexes |
00:15:00 |
Setiap baris mewakili indeks yang mungkin meningkatkan performa kueri jika dibuat. |
| Peristiwa kehabisan memori | sqldb_database_oom_events |
00:01:00 |
Setiap baris mewakili peristiwa di luar memori di mesin database. |
| Penghitung kinerja (umum) | sqldb_database_performance_counters_common |
00:00:10 |
Setiap baris mewakili penghitung kinerja instans mesin database. Himpunan data ini mencakup penghitung yang umum digunakan. |
| Penghitung kinerja (terperinci) | sqldb_database_performance_counters_detailed |
00:01:00 |
Setiap baris mewakili penghitung kinerja instans mesin database. Himpunan data ini mencakup penghitung yang mungkin diperlukan untuk pemantauan dan pemecahan masalah terperinci. |
| Properti | sqldb_database_properties |
00:05:00 |
Setiap baris mewakili database dan menyertakan opsi database, batas tata kelola sumber daya, dan metadata database lainnya. |
| Statistik waktu proses kueri | sqldb_database_query_runtime_stats |
00:15:00 |
Setiap baris mewakili interval runtime Query Store dan menyertakan statistik eksekusi kueri. |
| Statistik tunggu kueri | sqldb_database_query_wait_stats |
00:15:00 |
Setiap baris mewakili interval runtime Query Store dan menyertakan statistik kategori tunggu. |
| Replika | sqldb_database_replicas |
00:00:30 |
Setiap baris mewakili replika database, termasuk metadata replikasi dan statistik. Termasuk replika utama dan replikasi geografis ketika dikumpulkan pada yang utama, serta replika sekunder ketika dikumpulkan pada yang sekunder. |
| Pemanfaatan sumber daya | sqldb_database_resource_utilization |
00:00:15 |
Setiap baris mewakili CPU, IO Data, IO Log, dan statistik konsumsi sumber daya lainnya untuk database dalam interval waktu. |
| Statistik sesi | sqldb_database_session_stats |
00:01:00 |
Setiap baris mewakili ringkasan statistik sesi untuk database, yang dikumpulkan oleh atribut sesi non-aditif seperti nama login, nama host, nama aplikasi, dll. |
| Penjadwal SOS | sqldb_database_sos_schedulers |
00:01:00 |
Setiap baris mewakili penjadwal SOS dan menyertakan statistik untuk penjadwal, node CPU, dan simpul memori. |
| IO Penyimpanan | sqldb_database_storage_io |
00:00:10 |
Setiap baris mewakili file database dan menyertakan statistik IOPS, throughput, dan latensi kumulatif untuk file tersebut. |
| Pemanfaatan penyimpanan | sqldb_database_storage_utilization |
00:01:00 |
Setiap baris mewakili database dan menyertakan penggunaan penyimpanannya, termasuk tempdb, Penyimpanan Kueri, dan Penyimpanan Versi Persisten. |
| Tabel metadata | sqldb_database_table_metadata |
00:30:00 |
Setiap baris mewakili tabel atau tampilan terindeks, dan menyertakan metadata seperti jumlah baris, penggunaan ruang, pemadatan data, kolom, dan batasan. Dikumpulkan ketika jumlah tabel dan tampilan terindeks dalam database adalah 100 atau kurang. |
| Statistik Tunggu | sqldb_database_wait_stats |
00:00:10 |
Setiap baris mewakili jenis tunggu dan menyertakan statistik tunggu kumulatif instans mesin database. Untuk database dalam kumpulan elastis, hanya statistik tunggu yang cakupannya terbatas pada database yang dikumpulkan. |
Catatan
Untuk database dalam kumpulan elastis, himpunan data database SQL yang berisi data tingkat kumpulan tidak dikumpulkan. Ini termasuk pemanfaatan Memori, Peristiwa di luar memori, Penghitung kinerja (umum), dan Himpunan data Penghitung kinerja (terperinci ). Himpunan data Statistik Tunggu dikumpulkan, tetapi hanya mencakup tunggu yang bercakupan dalam database. Ini menghindari pengumpulan data yang sama dari setiap database di kumpulan.
Data tingkat kumpulan dikumpulkan dalam himpunan data kumpulan elastis SQL. Untuk kumpulan elastis tertentu, penghitung kinerja (umum) dan himpunan data Penghitung kinerja (terperinci) berisi metrik tingkat kumpulan dan metrik tingkat database tertentu seperti CPU, IO Data, Penulisan log, Permintaan, Transaksi, dll.
Kolom yang Umum
Untuk setiap jenis target SQL, himpunan data memiliki kolom umum, seperti yang dijelaskan dalam tabel berikut.
| Nama kolom | Deskripsi |
|---|---|
subscription_id |
ID langganan Azure dari database SQL. |
resource_group_name |
Nama grup sumber daya dari database SQL. |
resource_id |
ID sumber daya Azure dari database SQL. |
sample_time_utc |
Waktu ketika nilai dalam baris diamati, dalam UTC. |
collection_time_utc |
Waktu ketika baris dikumpulkan oleh pengamat, di UTC. Kolom ini ada dalam himpunan data di mana waktu pengumpulan mungkin berbeda dari waktu sampel. |
replica_type |
Salah satu: Primer, HA sekunder, Penerus replikasi geografis, Bernama sekunder. |
logical_server_name |
Nama server logis di Azure SQL Database yang berisi database atau kumpulan elastis yang dipantau. |
database_name |
Nama database yang dipantau. |
database_id |
ID database dari database yang dipantau, unik dalam server logis. |
logical_database_id |
Pengidentifikasi database unik yang tetap tidak berubah selama masa pakai database pengguna. Mengganti nama database atau mengubah tujuan layanannya tidak mengubah nilai ini. |
physical_database_id |
Pengidentifikasi database unik untuk database fisik saat ini yang sesuai dengan database pengguna. Mengubah tujuan layanan database menyebabkan nilai ini berubah. |
replica_id |
Pengidentifikasi unik untuk replika komputasi Hyperscale. |
Himpunan data memiliki kolom sample_time_utc dan collection_time_utc jika berisi sampel yang diamati sebelum baris dikumpulkan oleh pengamat database. Jika tidak, waktu pengamatan dan waktu pengumpulan sama, dan himpunan data hanya berisi kolom sample_time_utc.
Misalnya, himpunan sqldb_database_resource_utilization data berasal dari tampilan manajemen dinamis (DMV) sys.dm_db_resource_stats . DMV berisi kolom end_time, yang menunjukkan waktu pengamatan untuk setiap baris yang melaporkan statistik keseluruhan sumber daya pada interval 15 detik. Waktu ini dilaporkan di kolom sample_time_utc. Saat pengamat menanyakan DMV ini, kumpulan hasil mungkin berisi beberapa baris, masing-masing dengan nilai yang berbeda end_time. Semua baris ini memiliki nilai yang sama collection_time_utc .
Konten terkait
- Memantau beban kerja SQL Azure dengan pemantau database (pratinjau)
- Mulai cepat: Buat pemantau untuk memantau Azure SQL (pratinjau)
- Membuat dan mengonfigurasi pengamat (pratinjau)
- Menganalisis data pemantauan pengawas database (pratinjau)
- peringatan pengamat Database (pratinjau)
- Tanya Jawab Umum pengamat database