Bagikan melalui


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 .