Pengumpulan data dan himpunan data pengamat database (pratinjau)
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 penyerapan streaming di Azure Data Explorer dan Real-Time Analytics di Microsoft Fabric untuk menyediakan pemantauan mendekati 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 kemungkinan tidak akan memiliki dampak yang dapat diamati pada 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 ketidakcocokan sumber daya, konsumsi sumber daya oleh kueri pemantauan terbatas pada sebagian kecil dari total sumber daya 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 penguncian singkat dan prioritas kebuntuan rendah. Jika ada konflik konkurensi, prioritas diberikan ke kueri beban kerja aplikasi. Bergantung pada pola beban kerja aplikasi, ini dapat menyebabkan celah sesekali dalam data yang dikumpulkan untuk beberapa himpunan data.
Pengumpulan data dalam kumpulan elastis
Untuk memantau kumpulan elastis, Anda harus menunjuk satu database di kumpulan sebagai database jangkar. Pengamat database tersambung ke database jangkar. Karena pengamat memegang VIEW SERVER PERFORMANCE STATE
izin, tampilan sistem dalam database jangkar menyediakan data pemantauan untuk kumpulan secara keseluruhan.
Tip
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. Misalnya, ini termasuk pemanfaatan sumber daya dan metrik tingkat permintaan untuk setiap database. Untuk beberapa skenario, memantau kumpulan elastis secara keseluruhan membuatnya tidak perlu 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 di tingkat database.
Jika Anda menambahkan database individual dari kumpulan elastis sebagai target pengamat database, Anda juga harus menambahkan kumpulan elastis sebagai target. 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 minimal pada asumsi bahwa hanya sejumlah kecil database dalam kumpulan yang aktif pada saat yang sama.
Sumber daya komputasi yang tersedia untuk kueri pengamat database di kumpulan elastis yang padat dibatasi lebih lanjut untuk menghindari memengaruhi kueri aplikasi. Karena itu, pengamat database mungkin tidak dapat mengumpulkan data pemantauan dari setiap database dalam kumpulan elastis yang padat.
Tip
Untuk memantau kumpulan elastis yang padat, aktifkan pemantauan di tingkat kumpulan dengan menambahkan kumpulan elastis sebagai target.
Tidak disarankan untuk memantau lebih dari beberapa database individu dalam kumpulan elastis yang padat. Anda mungkin melihat celah dalam data yang dikumpulkan atau lebih besar dari interval yang diharapkan antara sampel data karena sumber daya komputasi yang tidak mencukupi yang tersedia untuk kueri pengamat database.
Residensi 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.
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 juga 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, 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 rekam jepret statistik pemindaian log agregat untuk fitur pemrosesan perubahan seperti Ubah Penangkapan Data atau Umpan Perubahan (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. |
Metadata indeks | 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:10 |
Setiap baris mewakili petugas memori dan menyertakan konsumsi memori oleh petugas 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 runtime 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:10 |
Setiap baris mewakili replika database, termasuk metadata replikasi dan statistik. Termasuk replika utama dan replika geografis saat dikumpulkan pada replika utama, dan sekunder saat dikumpulkan pada replika 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. |
Metadata tabel | 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. |
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 tercakup 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 berisi tunggu cakupan 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 umum
Untuk setiap jenis target, 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 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 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 sample_time_utc
berisi kolom.
Misalnya, himpunan sqldb_database_resource_utilization
data berasal dari tampilan manajemen dinamis (DMV) sys.dm_db_resource_stats . DMV berisi end_time
kolom, yang merupakan waktu pengamatan untuk setiap baris yang melaporkan statistik sumber daya agregat untuk interval 15 detik. Kali ini dilaporkan dalam sample_time_utc
kolom. Saat pengamat database mengkueri DMV ini, kumpulan hasil mungkin berisi beberapa baris, masing-masing dengan yang berbeda end_time
. Semua baris ini memiliki nilai yang sama collection_time_utc
.