Sdílet prostřednictvím


Online analytické zpracování

Online analytické zpracování (OLAP) je technologie, která organizuje velké podnikové databáze pro provádění složitých výpočtů a analýzy trendu. Tato metoda umožňuje složité dotazy bez přerušení transakčních systémů.

Obchodní transakce a záznamy jsou uloženy v databázích označovaných jako databáze olTP (online zpracování transakcí), které jsou optimalizované pro jednotlivé záznamy záznamů. Tyto databáze obsahují cenné informace, ale nejsou navržené pro analýzu, takže načítání dat je časově náročné a obtížné.

Aby se tento problém vyřešil, systémy OLAP efektivně extrahuje business intelligence z dat. Databáze OLAP jsou optimalizované pro úlohy s intenzivním čtením a malým počtem zápisů. Data jsou modelována a očištěna pro efektivní analýzu. Databáze OLAP často uchovávají historická data pro analýzu časových řad.

Systémy OLAP tradičně používají multidimenzionální datové krychle k uspořádání dat způsobem, který podporuje složité dotazy a analýzu. Následující diagram znázorňuje tradiční systémovou architekturu OLAP.

Diagram znázorňující tradiční logickou architekturu OLAP v Azure, která používá Analysis Services

S růstem technologií a škálováním dat i výpočtů se systémy OLAP přecházejí na architektury MPP (Massively Parallel Processing), které Microsoft Fabric podporuje. Další informace najdete v tématu Fabric analytické úložiště dat.

Následující diagram znázorňuje moderní architekturu systému OLAP.

Diagram znázorňující moderní logickou architekturu OLAP v Azure, která používá Fabric.

Sémantické modelování

Sémantický datový model je koncepční model, který popisuje význam datových prvků, které obsahuje. Organizace často mají vlastní termíny pro položky a někdy mají tyto termíny synonyma. Organizace můžou mít také různé významy pro stejný termín. Například databáze inventáře může sledovat kus vybavení pomocí ID prostředku a sériového čísla. Prodejní databáze ale může odkazovat na sériové číslo jako ID aktiva. Neexistuje žádný jednoduchý způsob, jak tyto hodnoty spojit bez modelu, který popisuje vztah.

Sémantické modelování poskytuje úroveň abstrakce schématu databáze, aby uživatelé nemuseli znát základní datové struktury. Koncoví uživatelé můžou snadno zadávat dotazy na data, aniž by prováděli agregace a spojení přes podkladové schéma. Sloupce se často přejmenovávají na uživatelsky přívětivější názvy, aby byl kontext a význam dat srozumitelnější.

Sémantické modelování je pro scénáře náročné na čtení, jako jsou analýzy a business intelligence (OLAP), spíše než zpracování transakčních dat náročných na zápis (OLTP). Sémantické modelování vyhovuje scénářům náročným na čtení z důvodu charakteristik typické sémantické vrstvy:

  • Chování agregace je nastavené tak, aby je nástroje pro vytváření sestav zobrazovaly správně.
  • Obchodní logika a výpočty jsou definovány.
  • Zahrnuté jsou časově orientované výpočty.
  • Data se často integruje z více zdrojů.
  • Podporují se analýzy v reálném čase.

Sémantická vrstva se tradičně umísťuje do datového skladu z těchto důvodů.

Diagram znázorňující sémantickou vrstvu mezi datovým skladem a nástrojem pro vytváření sestav

Existují dva primární typy sémantických modelů:

  • Tabulkové modely používají konstrukty relačního modelování, jako jsou modely, tabulky a sloupce. Interně se metadata dědí z konstruktorů modelování OLAP, jako jsou datové krychle, dimenze a míry. Kód a skript používají metadata OLAP.

  • Multidimenzionální modely používají tradiční konstrukce modelování OLAP, jako jsou datové krychle, dimenze a míry.

Analysis Services a Fabric poskytují potřebnou infrastrukturu a nástroje pro efektivní implementaci sémantického modelování.

Příklad případu použití

Organizace ukládá data ve velké databázi. Chce tato data zpřístupnit firemním uživatelům a zákazníkům, aby vytvořili vlastní sestavy a mohli provádět analýzu.

Může být udělen přímý přístup těmto uživatelům k databázi, ale tato možnost má nevýhody, včetně správy zabezpečení a řízení přístupu. Uživatelé můžou mít potíže s pochopením návrhu databáze, včetně názvů tabulek a sloupců. Tato možnost vyžaduje, aby uživatelé věděli, které tabulky se mají dotazovat, jak se mají tyto tabulky spojit a jak použít další obchodní logiku, aby získali správné výsledky. Uživatelé také potřebují znát dotazovací jazyk, jako je SQL. Tato možnost obvykle vede k tomu, že více uživatelů hlásí stejné metriky, ale s různými výsledky.

Lepší možností je zapouzdření všech informací, které uživatelé potřebují do sémantického modelu. Uživatelé můžou snadněji dotazovat sémantický model pomocí nástroje pro vytváření sestav podle vlastního výběru. Data, která poskytuje sémantický model, pocházejí z datového skladu, což zajišťuje, aby všichni uživatelé viděli jediný zdroj pravdy. Sémantický model také poskytuje uživatelsky přívětivé názvy tabulek a sloupců, definuje relace mezi tabulkami, zahrnuje popisy a výpočty a vynucuje zabezpečení na úrovni řádků.

Typické vlastnosti sémantického modelování

Sémantické modelování a analytické zpracování mají tendenci mít následující vlastnosti.

Požadavek Popis
Schéma Schéma aplikované při zápisu, důsledně vynucené
Používá transakce. Ne
Strategie uzamykání Žádné
Aktualizovatelné Ne, obvykle vyžaduje opětovné přepočítání datové krychle.
Připojitelné Ne, obvykle vyžaduje opětovné přepočítání datové krychle.
Pracovní zátěž Těžké čtení, jen pro čtení
Indexování Multidimenzionální indexování
Velikost datumu Malá až obrovská velikost
Vzor Tabulkové nebo multidimenzionální
Obrazec dat Schéma krychle, hvězdy nebo sněhové vločky
Flexibilita dotazů Vysoce flexibilní
Škála Velké, od stovek gigabajtů (GB) po více petabajtů (PB)

Kdy použít toto řešení

Zvažte použití OLAP pro následující scénáře:

  • Potřebujete rychle spouštět složité analytické dotazy a dotazy na vyžádání, aniž by to negativně ovlivnilo vaše systémy OLTP.

  • Chcete firemním uživatelům poskytnout jednoduchý způsob, jak generovat sestavy z vašich dat.

  • Chcete poskytnout několik agregací, které uživatelům umožňují rychle a konzistentní výsledky.

OLAP je zvlášť užitečné pro použití agregačních výpočtů u velkých objemů dat. Systémy OLAP jsou optimalizované pro scénáře náročné na čtení. OLAP také umožňuje uživatelům segmentovat multidimenzionální data do řezů, které můžou zobrazit ve dvou dimenzích, například v kontingenční tabulce. Nebo můžou data filtrovat podle konkrétních hodnot. Uživatelé mohou tyto procesy, známé jako slicing a dicing dat, provádět bez ohledu na to, zda jsou data rozdělena mezi několik zdrojů dat. Uživatelé můžou data snadno prozkoumat, aniž by znali podrobnosti o tradiční analýze dat.

Sémantické modely můžou firemním uživatelům pomoct abstrahovat složitost vztahů a usnadnit rychlou analýzu dat.

Výzvy

Systémy OLAP také vytvářejí výzvy:

  • Transakce, které proudí z různých zdrojů, neustále aktualizují data v systémech OLTP. Úložiště dat OLAP se obvykle aktualizují v mnohem pomalejších intervalech v závislosti na obchodních potřebách. Systémy OLAP vyhovují strategickým obchodním rozhodnutím, nikoli okamžitým reakcím na změny. Musíte také naplánovat určité stupně čištění a orchestrace dat, aby byla datová úložiště OLAP up-to-date.

  • Na rozdíl od tradičních, normalizovaných relačních tabulek v systémech OLTP jsou datové modely OLAP obvykle multidimenzionální. Proto je obtížné nebo nemožné je přímo mapovat na modely relace entit nebo objektově orientované modely, kde každý atribut odpovídá jednomu sloupci. Systémy OLAP místo tradiční normalizace obvykle používají hvězdicové nebo sněhové schéma.

OLAP v Azure

V Azure se data v systémech OLTP, jako je Azure SQL Database, kopírují do systémů OLAP, jako jsou Fabric nebo Analysis Services. Nástroje pro zkoumání a vizualizaci dat, jako jsou Power BI, Excel a možnosti jiných společností než Microsoft, se připojují k serverům Analysis Services a poskytují uživatelům vysoce interaktivní a vizuálně bohaté přehledy o modelovaných datech. Integrační služby SQL Serveru můžete použít k orchestraci toku dat ze systémů OLTP do systémů OLAP. K implementaci služby SQL Server Integration Services použijte Azure Data Factory.

Následující úložiště dat Azure splňují základní požadavky na OLAP:

SQL Server Analysis Services poskytuje funkce OLAP a dolování dat pro aplikace business intelligence. Službu SQL Server Analysis Services můžete nainstalovat na místní servery nebo ji hostovat v rámci virtuálního počítače v Azure. Analysis Services je plně spravovaná služba, která poskytuje stejné hlavní funkce jako SQL Server Analysis Services. Služba Analysis Services podporuje připojení k různým zdrojům dat v cloudu a místně ve vaší organizaci.

Clusterované indexy columnstore jsou k dispozici v SQL Serveru 2014 a vyšší a ve službě SQL Database. Tyto indexy jsou ideální pro úlohy OLAP. Od SQL Serveru 2016, včetně SQL Database, můžete využít hybridní transakční a analytické zpracování (HTAP) prostřednictvím aktualizovatelných neclusterovaných indexů columnstore. Pomocí protokolu HTAP můžete provádět zpracování OLTP a OLAP na stejné platformě. Tento přístup eliminuje potřebu více kopií dat a samostatných systémů OLTP a OLAP. Další informace najdete v tématu Columnstore pro provozní analýzy v reálném čase.

Klíčová kritéria výběru

Pokud chcete zúžit možnosti, odpovězte na následující otázky:

  • Chcete místo správy vlastních serverů spravovanou službu?

  • Vyžadujete k zabezpečenému ověřování ID Microsoft Entra?

  • Potřebujete integrovat data z několika zdrojů mimo úložiště dat OLTP?

  • Chcete provádět analýzy v reálném čase?

    Fabric Real-Time Intelligence je výkonná služba v rámci Fabric, pomocí které můžete extrahovat přehledy a vizualizovat data v pohybu. Poskytuje ucelené řešení pro scénáře řízené událostmi, streamovaná data a datové protokoly. Bez ohledu na to, jestli spravujete GB nebo PB dat, veškerá data organizace v pohybu konvergují v uzlu Real-Time.

  • Potřebujete použít předem agregovaná data, například k poskytování sémantických modelů, které usnadňují analýzu podnikovým uživatelům?

    Pokud ano, zvolte možnost, která podporuje multidimenzionální datové krychle nebo tabulkové sémantické modely.

    Poskytuje agregace, které uživatelům pomáhají konzistentně vypočítat agregace dat. Předem agregovaná data můžou také poskytovat velké zvýšení výkonu, pokud máte několik sloupců v mnoha řádcích. Data můžete předem agregovat v multidimenzionálních datových krychlích nebo tabulkových sémantických modelech.

Maticová tabulka schopností

Následující tabulky shrnují klíčové rozdíly ve schopnostech mezi těmito službami:

  • Tkanina
  • Služby analýzy
  • SQL Server Analysis Services
  • SQL Server s indexy typu columnstore
  • SQL databáze se sloupcovými indexy

Obecné možnosti

Schopnost Tkanina Služby analýzy SQL Server Analysis Services SQL Server s indexy typu columnstore SQL databáze se sloupcovými indexy
Je spravovaná služba. Ano Ano Ne Ne Ano
MPP Ano Ne Ne Ne Ne
Podporuje multidimenzionální datové krychle Ne Ne Ano Ne Ne
Podporuje tabulkové sémantické modely. Ano Ano Ano Ne Ne
Snadná integrace více zdrojů dat Ano Ano Ano Ne 1 Ne 1
Podporuje analýzy v reálném čase. Ano Ne Ne Ano Ano
Vyžaduje proces kopírování dat ze zdrojů. Volitelné 3 Ano Ano Ne Ne
Integrace Microsoft Entra Ano Ano Ne Číslo 2 Ano

[1] SQL Server a SQL Database nemůžou dotazovat a integrovat více externích zdrojů dat, ale můžete vytvořit kanál, který tyto funkce provede pomocí služeb SQL Server Integration Services nebo Azure Data Factory. SQL Server hostovaný na virtuálním počítači Azure nabízí další možnosti, jako jsou propojené servery a PolyBase. Další informace najdete v tématu Volba technologie orchestrace datového kanálu.

[2] Účet Microsoft Entra nepodporuje připojení k SQL Serveru hostovaného na virtuálním počítači Azure. Místo toho použijte účet služby Active Directory systému Windows Server domény.

[3] Fabric poskytuje flexibilitu při integraci zdrojů dat přesunem dat do OneLake prostřednictvím datových toků Azure Data Factory nebo zrcadlení. Můžete také vytvářet klávesové zkratky nebo provádět analýzy datových proudů v reálném čase bez přesunu dat.

Možnosti škálovatelnosti

Schopnost Tkanina Služby analýzy SQL Server Analysis Services SQL Server s indexy typu columnstore SQL databáze se sloupcovými indexy
Redundantní regionální servery pro zajištění vysoké dostupnosti Ano Ano Ne Ano Ano
Podporuje horizontální navýšení kapacity dotazů. Ano Ano Ne Ano Ano
Dynamická škálovatelnost, zvětšení kapacity Ano Ano Ne Ano Ano

Další kroky