Microsoft SQL Server Analysis Services, neboli SSAS je nástroj online analytického procesování (OLAP) a data miningu v Microsoft SQL Serveru. SSAS je nástroj, který používají firmy k analýze informací, které mohou být rozprostřeny mezi více databázemi nebo v oddělených tabulkách či souborech.

Microsoft do balíčku SQL Server vložil mnoho služeb zaměřených na business intelligence a datové sklady. Tyto služby zahrnují integrační služby, reportingové služby i analytické služby. Analytické služby obsahuje skupinu OLAP a data miningových funkcionalit a nabízí dva alternativní pohledy: multidimenzionální a tabulární.

Multidimenzionální způsoby uložení

Microsoft Analysis Services zaujímá neutrální postoj, co se týče MOLAP (tedy multidimenzionální OLAP) proti ROLAP (neboli relační OLAP) debatě ohledně OLAP produktů. Nabízí přístup MOLAP, ROLAP i HOLAP (tedy hybridní OLAP), které lze používat v rámci jednoho modelu.

Způsoby uložení partition

  • MOLAP, tedy multidimenzionální OLAP – faktická data i agregace jsou procesována, ukládána a indexována za použití speciálního formátu, který je optimalizovaný pro multidimenzionální data.
  • ROLAD, tedy relační OLAP – faktická data i agregace zůstávají v relačním datovém zdroji, což eliminuje potřebu dalšího zpracování.
  • HOLAP, neboli hybridní OLAP – tento mód umožňuje uložení faktických dat v relačním datovém zdroji, ale před-procesuje agregace a indexy, které následně ukládá ve speciálním formátu, který je optimalizovaný pro multidimenzionální data.

Způsoby uložení dimenzí

  • MOLAP – atributy a hierarchie dimenzí jsou zpracovány a uloženy ve speciálním formátu.
  • ROLAP – atributy dimenze nejsou zpracovány a zůstávají v původním relačním datovém zdroji.

Kdy použít multidimenzionální model

  • Pracujete s velkým objemem dat s komplexními požadavky.
  • Potřebujete využívat data mining.
  • Potřebujete využívat funkcionality, jako jsou akce, překlady a další.
  • Potřebujete zabezpečení na co nejnižší úrovni (Call level security).

Kdy použít tabulární model

  • Máte krátký vývojový cyklus. Chcete něco dodat velmi rychle a dostat okamžitou zpětnou vazbu od koncových uživatelů.
  • Datový model je relativně jednoduchý. Tabulky nemusí nutně být fakta a dimenze.
  • Koncoví uživatelé se dotazují na vysoké objemy detailních dat a výkon těchto dotazů je kritickým faktorem. (Za použití ROLAP multidimenzionálního modelu lze toho samého do jisté míry dosáhnout také, ale díky tomu, že tabulární model pracuje in-memory, s jeho využitím lze dosáhnout vyšší rychlosti a lepšího výkonu).
  • Pokud jsou data rozměrná a nevejdou se do paměti, je možné zvážit použití DirectQuery módu, který je ekvivalentem úložného módu ROLAP v tradičních multidimenzionálních modelech. S DirectQuery módem jsou data dotazována přímo z relační databáze a to pokaždé, když je k nim přistupováno. Na druhou stranu má ale DirectQuery i mnohá omezení, například to, že relační databáze musí být SQL Server nebo SQL Server PDW (Parallel Data Warehouse).

API a objektové modely

Microsoft Analysis Services podporuje různé API a objektové modely pro různé druhy operací v různých programovacích prostředích.

Dotazování

  • XML pro analýzu – API nejnižší úrovně. Může být použito na kterékoliv platformě a v kterémkoliv jazyce, který podporuje http a XML.
  • OLE DB pro OLAP – Rozšíření OLEDB. Je založené na COM a je vhodné pro programy v C nebo C++ na platformě Windows.
  • ADOMD – Rozšíření ADO. Založené na COM automatizaci a vhodné pro programy ve VB pro platformu Windows.
  • ADOMD.NET – Rozšíření ADO.NET. Je založený na .NETu a vhodný pro programy se spravovaným kódem na CLR platformách.
  • ADO.NET Entity Framework – Entity Framework a LINQ mohou být použity nad ADOMD.NET (je nutné využít SSAS Entity Framework Provider).

Správa a administrace

  • DSO – pro AS 2000. Založené na COM automatizaci a vhodné pro VB programy na platformě Windows.
  • AMO – pro AS 2005 a pozdější verze. Založené na .NET a vhodné pro programy se spravovaným kódem na CLR platformě.