19. června 2015

Master Data Services – přehled a novinky v SQL 2016

Před nějakou dobou jsem psal článek o novinkách, které se chystají v SQL 2016. CTP2 je venku, tak je čas na testování. Nejvíce se sice těším na nové SSRS, ale tyto zatím vyzkoušet nemůžu z důvodu chybějících vývojových nástrojů. Tak si vezmu na mušku technologii Master Data Services (MDS), která nás provází od SQL 2008 R2, přesto ji spousta lidí zatím nevidělo v akci, nebo dokonce nevědí o co jde. To by měl napravit dnešní článek. První část článku věnuji představení MDS, v druhé rozebereme co nového v SQL2016
Představení MDS
MDS jsou technologií na správu Master dat společnosti. Běží jako webová služba hostovaná v IIS (Internet Information Services), databázové úložiště má v SQL Serveru. Ovládat se dá buď přes webové rozhraní, nebo od SQL 2012 přes Excelový doplněk. Dostupná je v edicích Business Intelligence a Enterprise (Což snad neznechutí další čtení lidem se standardní edicí :) ) Snad nikoho také neurazí kreativní chvilka s obrázkem dole.

První otázka zní, co to jsou Master Data (MD). Volně přeložená definice z Wikipedie říká: „Master Data reprezentují objekty byznysu, které jsou schváleny a sdíleny v rámci firmy.“
Na Master Data  databázi by se tedy dalo dívat jako na centrální úložiště dat, které konsoliduje na jedno místo, co víme o dané entitě. Například některé informace o zákazníkovi máme v CRM, něco v účetním systému, něco v objednávkovém systému. MDS by umožnili mít jednu vyčištěnou verzi všech dostupných informací co víme o zákazníkovi. Mohl by fungovat i automatický sběr ze systemů do MDS a distribuce zpátky do zdrojů, pokud se něco změní.
MDS můžou také sloužit jako zdrojový systém pro data, která v žádném zdrojovém systému nemáte. Například jakým způsobem se chcete dívat na Vaše produkty (např. pro účely reportingu), organizační strukturu ve firmě, obecně mapování. V čem je MDS technologie výjimečná a jiná od datového skladu. Tvořit mapování „jak chcete reportovat produkty“ v datovém skladu by bylo odpovědností BI vývojáře. Ten o těchto věcech ale zpravidla nerozhoduje. Tuto úlohu má pod palcem nějaký uživatel, ze strany byznysu. Neajťák (v literatuře se můžeme setkat s rolí Data Steward). Tito mají tendence psát věci do Excelu. Ajťák obráceně zpozorní v situaci, kdy něco tak kritického, jako Master Data společnosti se válí v Excelu ideálně na Flash disku onoho klíčového uživatele :)
MDS uspokojí obě strany, protože kombinují to nejlepší z obou světů. Díky Excelovému doplňku může Data Steward Master Data spravovat. Ajťák je spokojený, protože data jsou na serveru, kde se pravidelně zálohují a jsou k nim řízeny přístupy. Oba spokojeni a proto zde máme dva usměvavé smajlíky na prvním obrázku :)
MDS jsou technologie, která umužňuje řešit i všechny nezbytné procesy okolo správy Master Dat. Patří sem: Zadávání dat, následné úpravy, sledování změn (kdo to spáchal, kdy to spáchal), verzování, vynucování business rules, vracení transakcí, tvorba hierarchií, řízení přístupů k daným zdrojům, možnost dávkově nahrát data a vytáhnout je ze subscription views.
Základní pojmy MDS
Model – si můžete představit jako kontejner na data. Je to něco podobného jako databáze v rámci SQL Serveru (byť fyzická databáze je jen jedna). Model je kontejnerem na entity
Entita – objekt byznysu, pro nějž chceme spravovat MD. V SQL Serveru by se entita dala přirovnat k tabulce. Každá entita má atributy a tyto mezi sebou můžou tvořit hierarchie. I Entity můžou tvořit hierarchie. (Entita kategorie je nadřízená entitě Produkt)
Atribut – popisná vlastnost entity, čili sloupec. Každý antribut může obsahovat sadu memberů
Member – jeden člen atributu v entitě. Například v entitě produkt, v atributu název školení „GOC342“
Použití MDS
Jaká je tedy logická posloupnost a ovládání MDS. V centrální správě založíte model. Mohli byste tvořit i entity přes webové rozhraní, ale přes Excelový doplněk je to jednodušší. Stačí vyplnit tabulku v Excelu včetně hlavičky a naplnit ji daty a vytvořit po připojení na MDS novou entitu, vybrat klíčový sloupec a volitelně sloupec se jménem. Tímto vznikne nová enita. I kdybychom Excel zavřeli a otevřeli nový. Jsme schopni data pro danou entitu načíst a editovat.
Pokud bychom chtěli k datům přistupovat přes SQL, v databázi se tabulky jmenují strašidelným automaticky generovaným názvem mdm.tbl.... Pokud bychom chtěli k datům přistupovat pohodlněji. Je potřeba vytvořit v centrální správě „subscription view“. Mimo to, že se můžeme dotazovat do view s normálním názvem (pokud jsme jej normálně pojmenovali), nalezneme zde i sledování kdo záznam vložil a kdy, kdo jej  naposledy změnil a kdy, verze atd.
Jedno video lepší než tisíc slov, takže pokud chcete vidět MDS v akci koukněte na video na konci článku. Prvně se ale podívejme pro ty, kteří již MDS viděli na...
Co nového ve verzi 2016
Zvýšení výkonu
Pokud jste v minulých verzích chtěli zadat desetitisíce záznamů přes Excel, bylo to minimálně na jedno kafe, když ne rovnou obě. Excelový doplněk byl přepsán a umožňuje spravovat větší entity. Další výkonové zlepšen můžete dosáhnout díky datové kompresi, což snižuje náročnost na čtení z disku. Je také defaultně zapnutá Dynamic Content Compressions v IIS, což zrychluje xml response. Oba typy komprese se doporučují vypnout v případě, že máte problém s vytížeností procesoru. Tomuto komprese nikterak nepřidá. Do agenta přibyly dva nové joby, pro správu indexů a logu MDS. Údržba MDS indexů běží defaultně týdně.
Rozšířené možnosti pro zabezpečení
Super user funkce dává stejné možnosti jako server admin v minulých verzích. Problém v předchozích verzích byl, že admin mohl být pouze jeden. Tato potíž odpadá. Navíc práva lze rozdělit na samostatný read, create, update a delete. Předchozí verze měla pouze read, update (mohl vkládat, mazat, přepisovat).
Správa transakčního logu
transakční log se dá čistit v definovaných intervalech, nebo na základě harmonogramu. Lze definovat jak dlouho mají MDS ukládat transakce, problémy s validací a jak dlouho si pamatovat dávky.
Závěr slovem
Master Data Services jsem si za poslední roky velmi oblíbil zejmena za účely mapovacích tabulek, případně jako zdrojový systém dat, pro které není lepší zdroj. Adaptace uživateli probíhala také vcelku příjemně. Extra se mi osvědčila kombinace uživatel zadá data (ruční vstupy, změny mapování) přes MDS a v PowerPivotu zvaliduje data. Není spokojen, může dál upravovat, je spokojen druhý den se ETL procesem propasuje do tradičních BI struktur Nová verze použitelnost MDS ještě zvyšuje.
Video na závěr
jak vypadá nové uživatelské rozhraní MDS a jak se technologie používá...


1 komentář: