Nastavení SQL Warehouse pro úlohy BI

Úlohy business intelligence mají jedinečné charakteristiky, které vyžadují specifické aspekty konfigurace SQL Warehouse. Tato stránka obsahuje pokyny k analýze požadavků na úlohy BI a konfiguraci SQL Warehouse tak, aby poskytovaly optimální výkon, nákladovou efektivitu a spolehlivost.

Požadavky na analýzu úloh a smlouvu SLA

Každá úloha BI je jedinečná a před konfigurací vyžaduje pečlivou analýzu. Při vyhodnocování požadavků zvažte následující otázky:

  • Migrace nebo nová implementace: Migruje se tato úloha z jiné platformy, nebo se jedná o novou implementaci? Migrované úlohy mohly mít zavedené smlouvy SLA a standardní hodnoty výkonu.
  • Smlouvy o úrovni služeb (SLA): Jaké jsou požadavky na latenci, propustnost a dostupnost? Zdokumentovat smlouvy SLA pro technické i obchodní účely
  • Vzory přístupu: Jak uživatelé pracují s daty? Pochopení typických vzorů dotazů pomáhá správně nakonfigurovat velikost datového skladu a optimalizovat datovou vrstvu pro konkrétní úlohu.

Typické vzory přístupu BI

Úlohy BI obvykle spadají do dvou různých kategorií vzorů přístupu, z nichž každá vyžaduje různé konfigurace SQL Warehouse.

Vzorec DirectQuery / LiveQuery

Vzory DirectQuery dotazují data v reálném čase a vyžadují odpovědi s nízkou latencí pro interaktivní analýzy:

Charakteristiky:

  • Velký počet dotazů
  • Dotazy obvykle vracejí malé sady výsledků (méně než 1 000 záznamů).
  • Obvykle se provádí během pracovní doby.
  • Přísné požadavky SLA s nízkými očekáváními latence
  • Nepředvídatelné vzory dotazů (dashboardy, sestavy)
  • Data přistupovaná na jeden dotaz jsou obvykle menší než 5 GB.
  • Vyžaduje vysoce škálovatelnou výpočetní kapacitu, aby vyhověla nepravidelným vzorům.

Očekávání výkonu:

  • Doba odezvy dotazu: sekundy (obvykle méně než 5 sekund pro interaktivní řídicí panely)
  • Aktuálnost dat: Aktuální, odrážející nejnovější data

Profil úlohy:

  • Časté špičky během pracovní doby
  • Nepředvídatelné varianty zatížení (řízené uživatelem)
  • Může se rozšířit na 24x7 pro globální organizace.

Vzorec importu a extrakce

Vzorce importu extrahují data pro podřízené systémy a upřednostňují propustnost před latencí:

Charakteristiky:

  • Nízký počet dotazů (naplánované aktualizace)
  • Obvykle velké sady výsledků (více než 1 000 000 záznamů)
  • Obvykle je naplánováno mimo špičku.
  • Předvídatelné vzory dotazů (často řízené přechodem k podrobnostem)
  • Přístup k datům na dotaz: až desítky GB

Očekávání výkonu:

  • Doba odezvy dotazu: minuty do hodin (orientované na dávky)
  • Aktuálnost dat: Snímek dne nebo předchozí den

Profil úlohy:

  • Naplánovaná a předvídatelná okna spouštění
  • Známé charakteristiky úloh a požadavky na prostředky
  • Dávkové zpracování

Kombinace dotazů v úlohách DirectQuery

Při použití vzorů DirectQuery s datovým modelem hvězdicového schématu počítejte s následující distribucí dotazů:

  • Dotazy dimenzí: Mnoho malých dotazů skenuje tabulky dimenzí (zákazník, produkt, čas)
  • Dotazy faktů: Mnoho velkých dotazů skenuje tabulky faktů s spojeními a agregacemi.
  • Extrahování dotazů: Některé jednoduché, ale dlouhotrvající dotazy pro extrahování velkých dat

Tato proměnlivá kombinace dotazů vyžaduje sklady SQL, které efektivně zpracovávají malé, časté dotazy i rozsáhlé analytické dotazy současně.

Strategie více skladů pro izolaci úloh

Databricks doporučuje zřídit více skladů SQL, aby bylo dosaženo:

Nastavení správné velikosti a optimálních nákladů

  • Velikost každého skladu přizpůsobte jeho konkrétnímu pracovnímu zatížení.
  • Vyhněte se předimenzování oddělením úloh s různými požadavky na prostředky.
  • Použití menších skladů pro vývoj a testování, větší pro produkční prostředí
  • Použití škálovatelnosti skladu k nalezení ideální rovnováhy mezi výkonem a náklady

Lepší celkový výkon

  • Zabránění kolizí prostředků mezi vzory DirectQuery a importem/extrahováním
  • Izolace interaktivních řídicích panelů od operací dávkové aktualizace
  • Povolení nezávislého škálování na základě požadavků na úlohy

Křížové účtování a přidělování nákladů

  • Sledování využití a nákladů podle organizační jednotky, projektu nebo týmu
  • Umožnit přesné modely zpětného účtování
  • Zlepšení viditelnosti a odpovědnosti za náklady

Efektivnější správa a řízení

  • Přiřazení odpovědností za vlastnictví a řízení podle týmu nebo projektu
  • Použití různých zásad automatického zastavení na základě vzorů použití
  • Konfigurace samostatných řízení přístupu a monitorování

Pro úlohy DirectQuery / LiveQuery

  • Použití bezserverových skladů SQL pro automatickou správu prostředků
  • Konfigurace agresivního automatického zastavení (15–30 minut) pro optimalizaci nákladů
  • Nastavte velikost clusteru na základě složitosti dotazu a objemu dat (v případě potřeby začněte střední, vertikálně navyšte kapacitu).
  • Nastavení minimálního a maximálního počtu clusterů na základě očekávané úlohy
  • Monitorujte metriku dotazů ve frontě ve špičce a odpovídajícím způsobem upravte maximální počet clusterů.

Pro úlohy importu a extrakce

  • Použití skladů SQL Pro nebo Classic pro předvídatelné, naplánované úlohy
  • Nakonfigurujte delší čas před automatickým zastavením (1 až 2 hodiny), pokud běží více úloh po sobě.
  • Použití větších velikostí clusterů (velké, X velké) pro komplexní agregace
  • Zvažte pevné plánování pro sladění s okny dávkového zpracování.
  • Monitorování doby trvání dotazu a úprava velikosti na základě požadavků smlouvy SLA

Další informace o chování při změně velikosti a škálování služby SQL Warehouse najdete v tématu Určení velikosti, škálování a řazení do fronty.

Stručné referenční informace o osvědčených postupech pro BI najdete v stručné nápovědě k BI.