Shromažďování dat a datové sady sledovacích procesů databáze (Preview)
Platí pro:Azure SQL DatabaseAzure SQL Managed Instance
Sledovací proces databáze shromažďuje data monitorování ze systémových zobrazení SQL a ingestuje je do úložiště dat ve formě datových sad. Každá datová sada se vytvoří pomocí dat z jednoho nebo více systémových zobrazení SQL. Pro každou datovou sadu je v úložišti dat samostatná tabulka.
Shromažďování dat
Sledovací proces databáze shromažďuje data monitorování v pravidelných intervalech pomocí dotazů T-SQL. Data shromážděná při každém spuštění dotazu se nazývají ukázka. Četnost ukázkových kolekcí se liší podle datové sady. Například často se měnící data, jako jsou čítače výkonu SQL, se můžou shromažďovat každých 10 sekund, zatímco se můžou shromažďovat většinou statická data, jako je konfigurace databáze, každých pět minut. Další informace najdete v tématu Datové sady.
Sledovací proces databáze využívá ingestování streamování v Azure Data Exploreru a analýzách v reálném čase v Microsoft Fabric k zajištění monitorování téměř v reálném čase. Shromážděná data monitorování SQL se obvykle zpřístupní pro generování sestav a analýzu za méně než 10 sekund. Latenci příjmu dat můžete monitorovat na řídicích panelech sledovacích procesů databáze pomocí odkazu Statistika příjmu dat.
Interakce mezi sledovacím procesem databáze a úlohami aplikací
Povolení sledovacího nástroje pro databáze pravděpodobně nebude mít pozorovatelný dopad na úlohy aplikace. Častější dotazy monitorování se obvykle spouštějí v podsekundovém rozsahu, zatímco dotazy, které můžou vyžadovat více času, například vrácení velkých datových sad, se spouštějí v občasných intervalech.
Aby se dále snížilo riziko dopadu na úlohy aplikací, všechny dotazy sledovacích procesů databáze ve službě Azure SQL Database se řídí prostředky jako interní úlohy. Pokud kolize prostředků existuje, spotřeba prostředků monitorováním dotazů je omezená na malý zlomek celkových prostředků dostupných pro databázi nebo elastický fond. Tím se upřednostní úlohy aplikací před monitorovacími dotazy.
Ve službě Azure SQL Managed Instance můžete správci prostředků povolit správu spotřeby prostředků pomocí monitorovacích dotazů podobným způsobem, pokud je to potřeba.
Následující příklad nakonfiguruje Správce prostředků ve spravované instanci SQL. Omezuje spotřebu procesoru podle dotazů sledovacího procesu databáze na 30 %, pokud nedojde k kolizí procesoru. V případě kolize procesoru si tato konfigurace vyhrazuje 5 % procesoru pro monitorovací dotazy a omezuje jejich využití procesoru na 10 %. Omezuje také velikost přidělení paměti pro každý dotaz monitorování na 10 % dostupné paměti.
USE master;
GO
CREATE OR ALTER FUNCTION dbo.dbw_classifier()
RETURNS sysname
WITH SCHEMABINDING
AS
BEGIN
DECLARE @WorkloadGroupName sysname = 'default';
IF APP_NAME() IN (N'SQLExternalMonitoring',N'x_ms_reserved_sql_external_monitoring')
SET @WorkloadGroupName = N'database_watcher_workload_group'
RETURN @WorkloadGroupName;
END;
GO
BEGIN TRY
IF EXISTS (
SELECT 1
FROM sys.resource_governor_configuration
WHERE classifier_function_id <> 0 OR is_enabled <> 0
)
THROW 50001, 'Resource Governor is already configured. No changes were made.', 1;
CREATE RESOURCE POOL database_watcher_resource_pool
WITH (MIN_CPU_PERCENT = 5, MAX_CPU_PERCENT = 10, CAP_CPU_PERCENT = 30);
CREATE WORKLOAD GROUP database_watcher_workload_group
WITH (REQUEST_MAX_MEMORY_GRANT_PERCENT = 10)
USING database_watcher_resource_pool;
ALTER RESOURCE GOVERNOR WITH (CLASSIFIER_FUNCTION = dbo.dbw_classifier);
ALTER RESOURCE GOVERNOR RECONFIGURE;
END TRY
BEGIN CATCH
THROW;
END CATCH;
Poznámka:
Pokud chcete, aby konfigurace správce prostředků okamžitě byla efektivní na sekundární replice spravované instance SQL, připojte se k replice a spusťte ALTER RESOURCE GOVERNOR RECONFIGURE;
ji.
Aby nedocházelo ke konfliktům souběžnosti, jako jsou blokování a zablokování mezi úlohami shromažďování dat a databázovými úlohami spuštěnými na prostředcích Azure SQL, monitorování dotazů používá krátké časové limity uzamčení a nízkou prioritu zablokování. Pokud dojde ke konfliktu souběžnosti, priorita se udělí dotazům na úlohy aplikace. V závislosti navzorch
Shromažďování dat v elastických fondech
Pokud chcete monitorovat elastický fond, musíte určit jednu databázi ve fondu jako databázi ukotvení. Sledovací proces databáze se připojí k databázi ukotvení. Vzhledem k tomu, že sledovací proces obsahujeVIEW SERVER PERFORMANCE STATE
oprávnění, systémová zobrazení v databázi ukotvení poskytují data monitorování pro fond jako celek.
Tip
Do každého elastického fondu, který chcete monitorovat, můžete přidat prázdnou databázi a určit ji jako ukotvenou databázi. Tímto způsobem můžete přesunout další databáze do fondu nebo mimo fond nebo mezi fondy, aniž byste přerušili monitorování elastického fondu.
Data shromážděná z databáze ukotvení obsahují metriky na úrovni fondu a určité metriky výkonu na úrovni databáze pro každou databázi ve fondu. To například zahrnuje metriky využití prostředků a frekvence požadavků pro každou databázi. V některých scénářích monitorování elastického fondu jako celku znamená, že není nutné monitorovat každou jednotlivou databázi ve fondu.
Určitá data monitorování, jako je využití procesoru, paměti a úložiště na úrovni fondu, a statistiky čekání se shromažďují pouze na úrovni elastického fondu, protože je nelze přiřazovat jednotlivým databázím ve fondu. Naopak určitá další data, jako jsou statistiky modulu runtime dotazu, vlastnosti databáze, metadata tabulky a indexu, jsou k dispozici pouze na úrovni databáze.
Pokud jako cíle sledovacího nástroje pro sledování databáze přidáte jednotlivé databáze z elastického fondu, měli byste také přidat elastický fond jako cíl. Tímto způsobem získáte ucelenější přehled o výkonu databáze a fondu.
Monitorování hustých elastických fondů
Hustý elastický fond obsahuje velký počet databází, ale má relativně malou velikost výpočetních prostředků. Tato konfigurace umožňuje zákazníkům dosáhnout značné úspory nákladů tím, že zajistí minimální alokaci výpočetních prostředků za předpokladu, že je aktivní jenom malý počet databází ve fondu současně.
Výpočetní prostředky dostupné pro dotazy sledovacího modulu databáze v hustě elastickém fondu jsou dále omezené, aby nedošlo k ovlivnění dotazů aplikace. Z tohoto důvodu nemusí sledovací proces databáze shromažďovat data monitorování z každé databáze v hustě elastickém fondu.
Tip
Pokud chcete monitorovat hustý elastický fond, povolte monitorování na úrovni fondu přidáním elastického fondu jako cíle.
Nedoporučuje se monitorovat více než několik jednotlivých databází v hustě elastickém fondu. V shromážděných datech nebo větších než očekávaných intervalech mezi vzorky dat můžete vidět mezery kvůli nedostatečným výpočetním prostředkům dostupným pro dotazy sledovacího modulu databáze.
Datové sady
Tato část popisuje datové sady dostupné pro každý cílový typ, včetně četností shromažďování a názvů tabulek v úložišti dat.
Poznámka:
Během období Preview můžou být datové sady přidány a odebrány. Vlastnosti datové sady, jako je název, popis, frekvence shromažďování a dostupné sloupce, se můžou změnit.
Název datové sady | Název tabulky | Frekvence shromažďování (hh:mm:ss) | Popis |
---|---|---|---|
Aktivní relace | sqldb_database_active_sessions |
00:00:30 |
Každý řádek představuje relaci, která spouští požadavek, je blokátorem nebo má otevřenou transakci. |
Historie zálohování | sqldb_database_sql_backup_history |
00:05:00 |
Každý řádek představuje úspěšně dokončené zálohování databáze. |
Zpracování změn | sqldb_database_change_processing |
00:01:00 |
Každý řádek představuje snímek agregované statistiky prohledávání protokolu pro funkci zpracování změn, jako je change data capture nebo kanál změn (Azure Synapse Link). |
Chyby zpracování změn | sqldb_database_change_processing_errors |
00:01:00 |
Každý řádek představuje chybu, ke které došlo během zpracování změn při použití funkce zpracování změn, jako je záznam dat změn nebo kanál změn (Azure Synapse Link). |
Připojení | sqldb_database_connectivity |
00:00:30 |
Každý řádek představuje sondu připojení (přihlášení a dotaz) pro databázi. |
Geografické repliky | sqldb_database_geo_replicas |
00:00:30 |
Každý řádek představuje primární nebo sekundární geografickou repliku, včetně metadat geografické replikace a statistiky. |
Metadata indexu | sqldb_database_index_metadata |
00:30:00 |
Každý řádek představuje oddíl indexu a zahrnuje definici indexu, vlastnosti a provozní statistiky. |
Využití paměti | sqldb_database_memory_utilization |
00:00:10 |
Každý řádek představuje úředníka paměti a zahrnuje spotřebu paměti úředníkem v instanci databázového stroje. |
Chybějící indexy | sqldb_database_missing_indexes |
00:15:00 |
Každý řádek představuje index, který může zvýšit výkon dotazů při vytváření. |
Události mimo paměť | sqldb_database_oom_events |
00:01:00 |
Každý řádek představuje událost mimo paměť v databázovém stroji. |
Čítače výkonu (běžné) | sqldb_database_performance_counters_common |
00:00:10 |
Každý řádek představuje čítač výkonu instance databázového stroje. Tato datová sada obsahuje běžně používané čítače. |
Čítače výkonu (podrobné) | sqldb_database_performance_counters_detailed |
00:01:00 |
Každý řádek představuje čítač výkonu instance databázového stroje. Tato datová sada obsahuje čítače, které můžou být potřeba k podrobnému monitorování a řešení potíží. |
Vlastnosti | sqldb_database_properties |
00:05:00 |
Každý řádek představuje databázi a zahrnuje možnosti databáze, omezení zásad správného řízení prostředků a další metadata databáze. |
Statistika modulu runtime dotazu | sqldb_database_query_runtime_stats |
00:15:00 |
Každý řádek představuje interval modulu runtime úložiště dotazů a zahrnuje statistiky spouštění dotazů. |
Statistika čekání dotazu | sqldb_database_query_wait_stats |
00:15:00 |
Každý řádek představuje interval modulu runtime úložiště dotazů a zahrnuje statistiky kategorií čekání. |
Repliky | sqldb_database_replicas |
00:00:10 |
Každý řádek představuje repliku databáze, včetně metadat replikace a statistiky. Zahrnuje primární repliku a geografické repliky při shromažďování na primární a sekundární repliky, když jsou shromážděny na sekundárním serveru. |
Využití zdroje | sqldb_database_resource_utilization |
00:00:15 |
Každý řádek představuje statistiku využití procesoru, vstupně-výstupních operací protokolů, vstupně-výstupních operací protokolu a dalších prostředků pro databázi v časovém intervalu. |
Statistika relace | sqldb_database_session_stats |
00:01:00 |
Každý řádek představuje souhrn statistik relací pro databázi agregované atributy relace, jako jsou přihlašovací jméno, název hostitele, název aplikace atd. |
Plánovače SOS | sqldb_database_sos_schedulers |
00:01:00 |
Každý řádek představuje plánovač SOS a obsahuje statistiky pro plánovač, uzel procesoru a paměťový uzel. |
Vstupně-výstupní operace úložiště | sqldb_database_storage_io |
00:00:10 |
Každý řádek představuje databázový soubor a obsahuje kumulativní statistiky IOPS, propustnosti a latence souboru. |
Využití úložiště | sqldb_database_storage_utilization |
00:01:00 |
Každý řádek představuje databázi a zahrnuje její využití úložiště, včetně tempdb úložiště dotazů a úložiště trvalých verzí. |
Metadata tabulky | sqldb_database_table_metadata |
00:30:00 |
Každý řádek představuje tabulku nebo indexované zobrazení a obsahuje metadata, jako je počet řádků, využití místa, komprese dat, sloupce a omezení. |
Statistika čekání | sqldb_database_wait_stats |
00:00:10 |
Každý řádek představuje typ čekání a obsahuje kumulativní statistiky čekání instance databázového stroje. Pro databáze v elastickém fondu se shromažďují pouze statistiky čekání v oboru databáze. |
Poznámka:
U databází v elastickém fondu se neshromažďují datové sady databáze SQL obsahující data na úrovni fondu. To zahrnuje využití paměti, události mimo paměť, čítače výkonu (běžné) a čítače výkonu (podrobné) datové sady. Datová sada statistik čekání se shromažďuje, ale obsahuje pouze čekání v oboru databáze. Tím se zabrání shromažďování stejných dat z každé databáze ve fondu.
Data na úrovni fondu se shromažďují v datových sadách elastického fondu SQL. U daného elastického fondu obsahují čítače výkonu (běžné) a čítače výkonu (podrobné) metriky na úrovni fondu a určité metriky na úrovni databáze, jako jsou procesor, vstupně-výstupní operace dat, zápis protokolu, požadavky, transakce atd.
Běžné sloupce
Pro každý cílový typ mají datové sady společné sloupce, jak je popsáno v následujících tabulkách.
Název sloupce | Popis |
---|---|
sample_time_utc |
Čas, kdy byly hodnoty v řádku pozorovány, v UTC. |
collection_time_utc |
Čas, kdy byl řádek shromážděn sledovacím procesem, v UTC. Tento sloupec se nachází v datových sadách, kde se čas shromažďování může lišit od ukázkového času. |
replica_type |
Jedna z těchto možností: primární, sekundární, sekundární geografická replikace, pojmenovaná sekundární. |
logical_server_name |
Název logického serveru ve službě Azure SQL Database obsahující monitorovanou databázi nebo elastický fond. |
database_name |
Název monitorované databáze. |
database_id |
ID databáze monitorované databáze, jedinečné v rámci logického serveru. |
logical_database_id |
Jedinečný identifikátor databáze, který po celou dobu životnosti uživatelské databáze zůstává beze změny. Přejmenování databáze nebo změna cíle služby tuto hodnotu nezmění. |
physical_database_id |
Jedinečný identifikátor databáze pro aktuální fyzickou databázi odpovídající uživatelské databázi. Změna cíle databázové služby způsobí, že se tato hodnota změní. |
replica_id |
Jedinečný identifikátor repliky výpočetních prostředků Hyperscale |
Datová sada obsahuje sloupce sample_time_utc
i collection_time_utc
sloupce, pokud obsahuje vzorky pozorované před tím, než byl řádek shromážděn sledovacím procesem databáze. V opačném případě je čas pozorování a čas shromažďování stejný a datová sada obsahuje pouze sample_time_utc
sloupec.
Datová sada je například sqldb_database_resource_utilization
odvozena z sys.dm_db_resource_stats zobrazení dynamické správy (DMV). Zobrazení dynamické správy obsahuje end_time
sloupec, což je čas pozorování pro každý řádek, který hlásí agregované statistiky prostředků pro 15sekundový interval. Tento čas se zobrazí ve sloupci sample_time_utc
. Když sledovací proces databáze dotazuje toto zobrazení dynamické správy, sada výsledků může obsahovat více řádků, z nichž každá má jiný end_time
. Všechny tyto řádky mají stejnou collection_time_utc
hodnotu.
Související obsah
- Monitorování úloh Azure SQL pomocí sledovacího procesu databáze (Preview)
- Rychlý start: Vytvoření sledovacího procesu databáze pro monitorování Azure SQL (Preview)
- Vytvoření a konfigurace sledovacího procesu databáze (Preview)
- Analýza dat monitorování sledovacího procesu databáze (Preview)
- Nejčastější dotazy ke sledovacím procesům databáze
Váš názor
https://aka.ms/ContentUserFeedback.
Připravujeme: V průběhu roku 2024 budeme postupně vyřazovat problémy z GitHub coby mechanismus zpětné vazby pro obsah a nahrazovat ho novým systémem zpětné vazby. Další informace naleznete v tématu:Odeslat a zobrazit názory pro