Monitorování využití pomocí systémových tabulek

Důležité

Tato funkce je ve verzi Public Preview. Za použití této funkce se v současné době neúčtují žádné poplatky. V budoucnu se některé z těchto využití můžou účtovat poplatky.

Tento článek vysvětluje koncept systémových tabulek v Azure Databricks a zvýrazňuje prostředky, které můžete použít k využití dat systémových tabulek na maximum.

Co jsou systémové tabulky?

Systémové tabulky jsou analytické úložiště hostované službou Azure Databricks provozních dat vašeho účtu nalezených system v katalogu. Systémové tabulky se dají použít pro historickou pozorovatelnost v rámci vašeho účtu.

Poznámka:

Dokumentaci naleznete system.information_schemav tématu Informační schéma.

Požadavky

Pokud chcete získat přístup k systémovým tabulkám, musí být váš pracovní prostor povolený pro katalog Unity. Další informace naleznete v tématu Povolení schémat systémových tabulek.

Které systémové tabulky jsou k dispozici?

Azure Databricks v současné době hostuje systémové tabulky pro:

Table Popis Location Podporuje streamování. Uchovávání Zahrnutí globálních nebo regionálních dat
Protokoly auditu Zahrnuje záznamy pro všechny události auditu z pracovních prostorů ve vaší oblasti. Seznam dostupných událostí auditu najdete v referenčních informacích k diagnostickým protokolům. system.access.audit Ano 365 dní Regionální pro události na úrovni pracovního prostoru. Globální pro události na úrovni účtu.
Rodokmen tabulky Obsahuje záznam pro každou událost čtení nebo zápisu v tabulce nebo cestě katalogu Unity. system.access.table_lineage Ano 365 dní Regionální
Rodokmen sloupců Obsahuje záznam pro každou událost čtení nebo zápisu ve sloupci katalogu Unity (ale neobsahuje události, které nemají zdroj). system.access.column_lineage Ano 365 dní Regionální
Fakturovatelné využití Zahrnuje záznamy pro veškeré fakturovatelné využití v rámci vašeho účtu. Každý záznam o využití je hodinová agregace fakturovatelného využití prostředku. system.billing.usage Ano 365 dní Globální
Ceny Historický protokol cen skladové položky. Záznam se přidá pokaždé, když dojde ke změně ceny skladové položky. system.billing.list_prices No Globální
Clustery Pomalu se měnící tabulka dimenzí, která obsahuje úplnou historii konfigurací clusteru v průběhu času pro všechny clustery. system.compute.clusters Ano Nic Regionální
Typy uzlů Zaznamenává aktuálně dostupné typy uzlů pomocí základních informací o hardwaru. system.compute.node_types No Regionální
Události SQL Warehouse Zaznamenává události související se sklady SQL. Například spuštění, zastavení, spuštění, vertikální navýšení nebo snížení kapacity. system.compute.warehouse_events Ano 365 dní Regionální
Události trychtýře Marketplace Zahrnuje dojmy uživatelů a trychtýřová data pro vaše výpisy. system.marketplace.listing_

funnel_events
Ano 365 dní Regionální
Přístup k výpisu z Marketplace Zahrnuje informace o spotřebiteli pro dokončená data žádosti nebo získání datových událostí ve vašich výpisech. system.marketplace.listing_

access_events
Ano 365 dní Regionální
Prediktivní optimalizace Sleduje historii operací funkce prediktivní optimalizace. system.storage.predictive_

optimization_operations_history
No 180 dní Regionální

Poznámka:

Kromě výše uvedených systémových tabulek se ve vašem účtu můžou zobrazit i jiné systémové tabulky. Tyto tabulky jsou aktuálně ve verzi Private Preview a ve výchozím nastavení jsou prázdné. Pokud chcete použít některou z těchto tabulek, obraťte se prosím na svůj tým účtů Databricks.

Povolení schémat systémových tabulek

Vzhledem k tomu, že systémové tabulky se řídí katalogem Unity, musíte mít v účtu alespoň jeden pracovní prostor s podporou katalogu Unity, abyste povolili systémové tabulky a měli k němu přístup. Systémové tabulky zahrnují data ze všech pracovních prostorů ve vašem účtu, ale dají se k nim přistupovat jenom z pracovního prostoru s podporou katalogu Unity.

Systémové tabulky jsou povolené na úrovni schématu. Pokud povolíte systémové schéma, povolíte všechny tabulky v rámci daného schématu. Po vydání nových schémat musí správce účtu schéma povolit ručně.

Systémové tabulky musí povolit správce účtu. Systémové tabulky můžete povolit pomocí rozhraní SystemSchemas API.

Výpis dostupných systémových schémat

Pomocí následujícího příkazu curl zobrazte seznam dostupných systémových schémat:

curl -v -X GET -H "Authorization: Bearer <PAT Token>" "https://adb-<xxx>.azuredatabricks.net/api/2.0/unity-catalog/metastores/<metastore-id>/systemschemas"

Následuje příklad výstupu GET příkazu:

{"schemas":[{"schema":"access","state":"<AVAILABLE OR EnableCompleted>"},{"schema":"billing","state":"<AVAILABLE OR EnableCompleted>"},{"schema":"information_schema","state":"<AVAILABLE OR EnableCompleted>"}]}

state: AVAILABLE: Systémové schéma je k dispozici, ale dosud nebylo povoleno.

state: EnableCompleted: Povolili jste systémové schéma a je viditelné v Průzkumníku katalogu.

Povolení systémového schématu

K zapnutí systémového schématu použijte následující příkaz curl:

curl -v -X PUT -H "Authorization: Bearer <PAT Token>" "https://adb-<xxx>.azuredatabricks.net/api/2.0/unity-catalog/metastores/<metastore-id>/systemschemas/<SCHEMA_NAME>"

Pokud je schéma systému úspěšně povolené, vrátí se kód 200 výsledku.

Pokud se pokusíte znovu povolit systémové schéma, vrátí se následující: "error_code":"SCHEMA_ALREADY_EXISTS","message":"Schema <schema-name> already exists".

Zakázání systémového schématu

K zakázání systémového schématu použijte následující příkaz curl:

curl -v -X DELETE -H "Authorization: Bearer <PAT Token>" "https://adb-<xxx>.azuredatabricks.net/api/2.0/unity-catalog/metastores/<metastore-id>/systemschemas/<SCHEMA_NAME>"

Udělení přístupu k systémovým tabulkám

Přístup k systémové tabulce se řídí katalogem Unity. Ve výchozím nastavení nemají žádní uživatelé přístup k systémovým tabulkám. Aby bylo možné udělit přístup, musí správce metastoru nebo jiný privilegovaný uživatel udělit USE oprávnění k systémovým schématům.SELECT Viz Správa oprávnění v katalogu Unity.

Systémové tabulky jsou jen pro čtení a nelze je upravovat.

Poznámka:

Pokud byl váš účet vytvořen po 9. listopadu 2023, možná ve výchozím nastavení nemáte správce metastoru. Další informace najdete v tématu Nastavení a správa katalogu Unity.

Obsahují systémové tabulky data pro všechny pracovní prostory ve vašem účtu?

Tabulky protokolu auditu a rodokmenu obsahují provozní data pro všechny pracovní prostory ve vašem účtu nasazených ve stejné cloudové oblasti. Tabulka fakturačního systému (system.billing.usage) obsahuje data pro všechny pracovní prostory ve vašem účtu bez ohledu na to, v jaké oblasti jsou nasazené.

I když k systémovým tabulkám lze přistupovat pouze prostřednictvím pracovního prostoru katalogu Unity, tabulky také obsahují provozní data pro pracovní prostory mimo Unity Catalog ve vašem účtu.

Kde jsou systémové tabulky umístěné?

Systémové tabulky ve vašem účtu se nacházejí v katalogu s názvem system, který je součástí každého metastoru katalogu Unity. system V katalogu uvidíte schémata, jako access jsou systémové tabulky.billing

Poznámka:

Během systémových tabulek Ve verzi Public Preview si Azure Databricks zachovají všechna data systémových tabulek.

Důležité informace o systémových tabulkách streamování

Rozdílové sdílení podporuje přístup k systémovým tabulkám. Při streamování pomocí rozdílového sdílení mějte na paměti následující aspekty:

  • Pokud používáte streamování se systémovými tabulkami, nastavte možnost skipChangeCommit na truehodnotu . Tím se zajistí, že úloha streamování nebude narušena odstraněním v systémových tabulkách. Viz Ignorovat aktualizace a odstranění.
  • Trigger.AvailableNow není podporováno streamováním rozdílového sdílení. Převede se na Trigger.Once.
  • Pokud ve své úloze streamování použijete trigger a zjistíte, že úloha nedosáhne nejnovější verzi systémové tabulky, doporučuje Databricks zvýšit naplánovanou frekvenci úlohy.

Známé problémy

  • V současné době není podpora pro monitorování v reálném čase. Data se aktualizují v průběhu dne. Pokud se protokol nedávné události nezobrazuje, zkuste to později.

  • Pokud chcete povolit systémové tabulky, možná budete muset udělit síťový přístup ke koncovému bodu úložiště objektů blob systémových tabulek. Pokud chcete zobrazit seznam koncového bodu úložiště systémových tabulek každé oblasti, přečtěte si téma IP adresy koncového bodu úložiště.

  • Systémová schémata system.operational_data a system.lineage jsou zastaralá a budou obsahovat prázdné tabulky.