Kupodivu Microsoft ještě nezvládl mnou doporučovanou marketingovou strategii a SQL Server nepřejmenoval na Lucy, místo toho však vyrobil fenomenální produkt s opravdu velkou přidanou hodnotou, a to – světe, div se – i v edici Standard. Otázkou tudíž vůbec není, jestli upgradovat na SQL Server 2016. Od vydání už uběhlo půl roku, takže ta správná otázka spíš zní – Vy ho ještě nemáte? (proneseno s upřímným úžasem ve tváři a povytažením obočí :-) ).
Samozřejmě není možné naprosto nekriticky převzít a začít používat všechny vlastnosti hned – SQL Server 2016 totiž úplně praská ve švech, jak je nacpaný vlastnostmi, které křičí Použij mě. Stejně tak je zde obrovský haló, jaký je nejotestovanější, nejlepší, rychlejší, …, takže je potřeba se míti na pozoru.
Svět se mění
Tvrdím to už dlouho – všichni tam musíme, otázkou je jen kdy. (Jako do cloudu.) Nemusí to být tak úplně pravda – všechny produkty verze 2016 přenášejí cloudové metody a postupy i do on-premise řešení, stejně tak i výrazně těsnější integraci s cloudem. Co to znamená, co to mění? Přestává existovat rozdíl mezi tím, co je on-premise a co je v oblacích. Platforma i technologie je téměř stejná, přechod do cloudu je otázkou kliknutí myši a výrazně se vylepšuje i cesta zpět. Nastává doba skutečně hybridního cloudu. Máte zdroje, nějaké on-premise, nějaké v cloudu. Logicky plně využijete lokální zdroje a v případě potřeby využijete elasticity, kterou nabízí cloud. Těžko se dá najít jedna specifická vlastnost, která by se dala z SQL Serveru 2016 vypíchnout, aby toto pravidlo potvrdila. S Azure je totiž integrováno skoro všechno. Nastává doba hybridní.
Hybridní scénáře nabízejí mnoho nových řešení. Vždy využívají elasticitu, ale už není čistě vyhraněna na zvýšení výkonu. Krásným hybridním scénářem jsou stretch databases. Můžeme si to představit jako partitioning, kde aktivní část dat si držíme nad lokálním rychlým úložištěm a historickou část necháváme odsypávat do relativně levného úložiště v oblacích.
Dalším pohodlným scénářem je použití Azure jako disaster recovery. Od, řekněme, plnotučného řešení za patřičný obolus v podobě hybridní database avaliability group, kdy vlastně půlku clusteru máte doma a druhá leží v microsoftím ažůru. Až k levnému scénáři, kdy do oblaků hrneme jenom backup a v případě potřeby tam provedeme restore a je to. Všechna ta řešení kladou nároky na funkční infrastrukturu (Active Directory, linky a podobně), takže nenastává masivní propouštění administrátorů… Ti jsou stále potřeba, ale musejí perfektně ovládat PowerShell.
In memory
Nevím, jak jste na tom s pamětí, ale nový SQL Server potřebuje i tu vaši. Vždy platilo, čím víc paměti, tím lepší SQL Server. Platí to dvojnásob. SQL Server se snaží mít v paměti vše, co lze, a samozřejmě ve vyšších edicích naplno využívat nových vlastností. Ve skutečnosti všechny nejsou nové. Vyskytují se v SQL po verzi 2014 vlastně už podruhé, takže jsou už plně funkční. Vylepšení jsou na všech frontách. Mě jako analytika nejvíce zaujalo dotažení columnstore indexes. Všechno jsou to na první pohled drobné detaily, které ovšem rapidně zvyšují použitelnost. Columnstore se posouvá z hračky pro pár vyvolených k velmi užitečnému sluhovi. Ovšem nesmíme zapomínat, že každý dobrý sluha má svého zlého pána – řešení to není samospasitelné a bezhlavě použitelné kdekoliv. Hledání rovnováhy mezi sloupcovými indexy a těmi normálními začíná býti zajímavou disciplínou. Rozhodně paměť trénujte, hodí se k tomu sudoku a sčítání alespoň trojciferných čísel nazpaměť. A obě dvě techniky se hodí na odehnání toho pána, co všechno zapomíná – Alzheimera.
Co na to BI?
BI dobrý. Já už vlastně nevím, co všechno bylo v SQL 2014 nového, dokonce si nejsem jistý, jestli umíme udělat projekt nad nějakým starším SQL Serverem. Spousta změn je malých a plíživých, a pak náhle SQL Server předvádí mnoho salt, kotrmelců, výkrutů – úplná spartakiáda. Těžko se mně píše bez nápovědy MSDN What is new in SQL 2016 BI. Ono po několika projektech nad touto verzí to člověku připadá úplně samozřejmé. A protože málo luštím sudoku, tak už zapomínám, jak třeba vypadal Report Manager ve starších verzích, že DataZen byl separátní produkt, a tak bych mohl pokračovat do nekonečna. No něco najdeme…
Kam kráčíš, ty jedna n-rozměrná matice?
To je dobrá nadávka… Jinak je ale samozřejmě řeč o starých dobrých kostkách. Odpověď zní Nikam. Vyhazuji pár vlastností, které souvisejí s tím, aby to fungovalo v cloudu, přidávám další věci, aby to fungovalo rychleji. Prostě pokrok v mezích zákona a je na tobě, milý vývojáři, abys použil a rozšířil vlastnosti, které už dávno nabízím. Třeba by ses mohl víc vyřádit na uložených procedurách, které už dávno umím, nebo zapracovat na svých znalostech a schopnostech při práci s jazykem MDX. Jednoduše řečeno, nic převratného se neděje, není to technologie určená k okamžitému vyhynutí, ale trochu trpí na úkor své ploché sestry.
Ploché sestry? Nekonečná planina nasypaná a zazipovaná ve sloupcích.
Tak to je jiná káva, tabulární modelka má kromě tří plastických operací a dalších 361 kosmetických vylepšení zcela nové kámoše: TOMa a TMSLa.
Plastická chirurgie je mocná, takže zasahuje od zrychlení a zlepšení funkcí editoru tabelárních modelů přes rozšíření funkcí DAX až po změny v DirectQuery. To je prostě seznam hromady vlastností, co něco zlepšují a podobně.
TOM není EMO, ale původně AMO
Tohle bude hodně technické, ale nebojte se, bude z toho závěr pro architekturu. Analytické služby jako takové disponují nějakým objektovým modelem, přes který se dají ovládat, i dimenze přes něj vytvářet atd. Třeba takové Management Studio to používá. Tomuto souboru vlastností se říká AMO – Analysis Services Management Objects. Doteď se pomocí stejného modelu řídily jak tabelární modely, tak kostky. Pro tabelární modely je teď TOM (Tabular Object Model). Co to znamená? Už je to dospělé a chystá se to vydat na svou vlastní cestu. Můžeme očekávat odtržení tabelárních modelů v SSAS od multidimenzionálních a klidně i vznik nového samostatného produktu (to je už možná trochu fantazie).
Ono to má i nějaké další indicie – například si konečně můžete pořídit instanci SSAS – nikoliv jako virtuální počítač, ale jako službu. Tak když Microsoft přihodí ještě ty SSRS (SQL Server Reporting Services), můžeme začít dělat cloudové BI. Proč je to důležité? Může to předznamenávat trend ve štěpení monolitických služeb. Naprostý odklon od dosavadní strategie. Něco koupíme, souvisí to s daty, dáme to do SQL Serveru. Lidé, bděte!
S tím souvisí i nový jazyk pro ovládání analytických služeb – TMSL. A světe, div se, je to JSON. Opět je to další dílek skládačky hybridního prostředí. V Azure se prakticky všechno řídí konfigurací JSON objektů a nyní je tedy podobný princip řízení a ovládání k dispozici i pro on premise. Starší metoda byla řízení pomocí XML. JSON vpřed – XML do propadliště dějin.
Co na to reporty
Myslíte takové to modré, poněkud staré cosi? No, tak to je pryč. Na téhle části páni z Microsoftu opravdu zapracovali. Má to samozřejmě nějaké mouchy, ale každopádně to představuje výrazný posun vpřed. Nový portál, kde se dá mimochodem relativně slušně pracovat se styly a upravovat podle potřeb, umí zobrazit tři druhy reportů. Paginated, což jsou klasické Reporting Services, jak je známe a možná i dlouhá léta používáme. Bohužel zde se žádná zásadní změna neodehrála, a to včetně práce se styly. Rákosníček by k tomu řekl: „Sákryš!“
Mobilní reporty a designer mobilních reportů je bývalý Datazen. Tohle řešení mělo a stále má něco do sebe. Dokonce si dovede přebrat brand, který použijeme u portálu, takže jednotnému vizuálnímu stylu v tomto případě nic nebrání. Komponenty Datazenu považuji za vysoce funkční a vyspělé, bohužel je nalezneme jen v edici Enterprise.
Pecka na závěr
Posledním typem reportů, se kterými si SSRS tykají, je Power Pivot. Umí totiž soubor vytvořený v Power BI for Desktop uložit na report server a zobrazit v přehledu reportů. Chápu, že tím nikoho neohromím, vždyť například s Excelem, pokud není moc velký, to funguje od pradávna. Pecka je totiž z jiného ovoce. Microsoft sliboval plnou integraci někdy po vydání SQL Serveru. Zatím toho není o konkrétní implementaci integrace Power BI a SSRS mnoho známo, ale už si lze v Azure půjčit virtuální stroj, kde to funguje. Přímo v SSRS se zobrazují reporty z Power BI. Power BI přestává být cloudovou hříčkou a můžeme se těšit, že se stává integrální součástí SSRS.
Jak je to tedy s odpověďmi na otázky: Má smysl upgradovat na SQL 2016? Kdy mám upgradovat? To je jednoduché: Ano, upgradujte a hned.
Erik Caha | BI Experts