Doporučení Azure Advisoru pro vyhrazený fond SQL v Azure Synapse Analytics

Tento článek popisuje doporučení vyhrazeného fondu SQL, která jsou k dispozici v Azure Advisoru.

Vyhrazený fond SQL poskytuje doporučení, která zajistí, aby vaše úlohy datového skladu byly konzistentně optimalizované z hlediska výkonu. Doporučení jsou úzce integrovaná se službou Azure Advisor a poskytují vám osvědčené postupy přímo v rámci Azure Portal. Vyhrazený fond SQL shromažďuje telemetrii a denně poskytuje doporučení pro aktivní úlohy. Podporované scénáře doporučení jsou popsané níže spolu s tím, jak použít doporučené akce.

Doporučení si můžete prohlédnout ještě dnes!

Nerovnoměrná distribuce dat

Nerovnoměrná distribuce dat může způsobit další přesun dat nebo kritické body prostředků při spouštění úloh. Následující dokumentace popisuje, jak identifikovat nerovnoměrnou distribuci dat a zabránit jejímu vzniku výběrem optimálního distribučního klíče.

Žádné nebo zastaralé statistiky

Neoptimální statistika může výrazně ovlivnit výkon dotazů, protože může způsobit, že optimalizátor dotazů SQL vygeneruje neoptimální plány dotazů. Následující dokumentace popisuje osvědčené postupy při vytváření a aktualizaci statistik:

Pokud chcete zobrazit seznam ovlivněných tabulek podle těchto doporučení, spusťte následující skript T-SQL. Advisor nepřetržitě spouští stejný skript T-SQL, aby vygeneroval tato doporučení.

Replikace tabulek

V případě doporučení replikovaných tabulek detekuje Advisor kandidáty na tabulky na základě následujících fyzických charakteristik:

  • Velikost replikované tabulky
  • Počet sloupců
  • Typ distribuce tabulky
  • Počet oddílů

Advisor průběžně využívá heuristiku založenou na úlohách, jako je frekvence přístupu k tabulce, průměrné řádky a prahové hodnoty týkající se velikosti a aktivity datového skladu, aby zajistil generování vysoce kvalitních doporučení.

Následující část popisuje heuristiku založenou na úlohách, která najdete v Azure Portal pro každé doporučení replikované tabulky:

  • Prohledat průměr – průměrné procento řádků vrácených z tabulky pro každý přístup k tabulce za posledních 7 dnů.
  • Časté čtení, žádná aktualizace – značí, že tabulka nebyla aktualizována v posledních 7 dnech, když se zobrazuje aktivita přístupu.
  • Poměr čtení/aktualizace – poměr počtu přístupů k tabulce vzhledem k tomu, kdy byla aktualizována za posledních 7 dnů.
  • Aktivita – měří využití na základě aktivity přístupu. Tato aktivita porovnává aktivitu přístupu k tabulce vzhledem k průměrné aktivitě přístupu k tabulce v datovém skladu za posledních sedm dnů.

V současné době advisor zobrazí najednou maximálně čtyři kandidáty replikovaných tabulek s clusterovanými indexy columnstore, které upřednostňují nejvyšší aktivitu.

Důležité

Doporučení replikované tabulky není důkazem o bláznovství a nebere v úvahu operace přesunu dat. Pracujeme na jeho přidání jako heuristické, ale mezitím byste měli po použití doporučení vždy ověřit úlohu. Další informace o replikovaných tabulkách najdete v následující dokumentaci.

Adaptivní využití mezipaměti (Gen2)

Pokud máte velkou pracovní sadu, můžete zaznamenat nízké procento přístupů do mezipaměti a vysoké využití mezipaměti. V tomto scénáři byste měli vertikálně navýšit kapacitu, abyste zvýšili kapacitu mezipaměti, a znovu spustit úlohu. Další informace najdete v následující dokumentaci.

Kolize tempdb

Výkon dotazů se může snížit, když dojde k vysokému kolizím databáze tempdb. Ke kolizím databáze tempdb může dojít prostřednictvím dočasných tabulek definovaných uživatelem nebo v případě velkého přesunu dat. V tomto scénáři můžete škálovat pro větší přidělení databáze tempdb a nakonfigurovat třídy prostředků a správu úloh , aby se vašim dotazům poskytlo více paměti.

Chybná konfigurace načítání dat

Abyste minimalizovali latenci, měli byste vždy načíst data z účtu úložiště ve stejné oblasti jako vyhrazený fond SQL. Pokud chcete dosáhnout maximální propustnosti, použijte příkaz COPY pro příjem dat s vysokou propustností a rozdělte fázované soubory v účtu úložiště. Pokud nemůžete použít příkaz COPY, můžete pro lepší propustnost použít rozhraní API SqlBulkCopy nebo bcp s vysokou dávkovou velikostí. Další pokyny k načítání dat najdete v tématu Osvědčené postupy pro načítání dat.