Většina cloudových on-line aplikací dnes potřebuje využívat nějakou databázi. S ohledem na její vysokou dostupnost a nízkou latenci mezi cloudovým aplikačním a databázovým serverem je logické, že i tuto databázi umístí provozovatel této aplikace do cloudu a pokud možno do toho samého datového centra jako aplikaci samotnou. Cloudové aplikace zkrátka potřebují cloudovou databázi a naopak.
Databáze jsou však od aplikací samotných poněkud odlišné – mohou obsahovat i obrovské objemy dat, u kterých už se třeba mohou projevovat vyšší latence při přístupu k datům na velkou vzdálenost. Cloudové databáze jsou proto ideální pro zpřístupňování dat z jednoho bodu do celého světa – typicky např. pro e-shopy určené pro celou Evropu nebo i svět. Veřejný cloud totiž na rozdíl od vlastního datacentra nebo lokálního hostingového centra může nabídnout možnost lokální replikace dat i v dalších datových centrech provozovatele po celém světě anebo případně i v lokálních distribučních bodech.
Kupříkladu Microsoft nabízí pro svůj cloudový aplikační server Windows Azure a databázový SQL Azure hned 24 de facto proxy serverů rozmístěných po celém světě vyjma Afriky, které lze pro zrychlení přístupu ke globálním datům z jednotlivých zemí využít.
Jedna cloudová databáze sesynchronizuje více lokálních serverů
Databáze v cloudu však může existovat i samostatně, tedy bez aplikačního serveru. Zajímavým schématem využití databáze v cloudu je synchronizace dat mezi několika on-premise databázovými servery. Synchronizace přitom může probíhat jednosměrně i obousměrně podle toho, jakou roli bude cloudová databáze v celé struktuře hrát. Na první pohled se vám možná tento scénář využití nezdá až tolik atraktivní, ale při detailnějším zkoumání je to vlastně ideální scénář pro celou řadu aplikací.
Například pro bezpečné propojení podnikového informačního systému se systémy dodavatelů, partnerů či zákazníků, kdy desítky či stovky jiných serverů zatěžují svými dotazy pouze synchronizační server, který může obsahovat jen vybrané tabulky z původní databáze, jež funguje bez jakéhokoliv vlivu těchto dodatečných přístupů na její výkon. Tentýž scénář lze využít i v opačném gardu, kdy si cloudová databáze bude stahovat data z desítek či stovek externích zdrojů a váš podnikový databázový server si jen v pravidelných intervalech zkopíruje aktuální stav.
Cloudové synchronizační schéma se však hodí i pro zálohování lokální anebo i cloudové databáze či pro synchronizaci dat mezi více cloudovými databázemi např. v různých lokalitách. Ideální je toto schéma i pro distribuci globálních dat do lokálních dceřiných společností a naopak. Cloudová synchronizace může také řešit problém, kdy část dat z nějakých důvodů není přípustné vystavovat na internet, byť pod šifrovaným přístupem, ale zbytek na internetu být může a je tam i potřeba.
BI nástroje v cloudu jako zajímavá alternativa
Spolu s přechodem databází do cloudu se v zde začínají objevovat i některé pokročilé databázové nadstavby, jako je například business intelligence. BI nástroje dnes u databázových serverů nejsou ničím neobvyklým. V případě cloudu se však jedná o čerstvou novinku. Zejména v okamžiku, kdy se kromě tradičního reportingu začínají objevovat i pokročilé nástroje pro interaktivní analýzu dat v databázi přímo na serveru. Právě tady se může velice výrazně projevit jedna z největších výhod cloudu – a to takřka neomezená škálovatelnost a obrovský výkon, který může cloudová aplikace získat během zlomku sekundy.
Cloudová platforma pro vaše aplikace podle Microsoftu
Microsoft postavil svoji cloudovou filosofii, nikoliv překvapivě, na silné a stabilní serverové základně známé z on-premise řešení. Jeho cloudové řešení je tak z pohledu samotných aplikací velmi podobné jako to on-premise, díky čemuž lze jednoduše lokální aplikace migrovat do cloudu a zpět, propojovat lokální a cloudové aplikace navzájem atd. V tomto případě je Windows Azure cloudovou obdobou Windows Server 2008 R2 a SQL Azure, SQL Server 2008 R2 a částečně i blížícího se SQL Server 2012.
Zajímavý je i model používání, na kterém Azure stojí. Uživatelé mají k dispozici v zásadě dvě varianty – buď platit ad hoc spotřebovaný výpočetní výkon a přenosové kapacity (tzv. pre-paid tarify), anebo si zarezervovat určitou kapacitu v podobě zvoleného počtu virtuálních strojů s příslušným výkonem (tzv. post-paid tarify). Logika post-paid tarifů je přitom postavena obdobně jako například u telekomunikačních operátorů – máte k dispozici určitý předplacený objem výkonu, který ale v případě potřeby můžete nejen kdykoliv navýšit nebo snížit, ale také přečerpat (za určitou „minutovou“ sazbu). Architektura celé cloudové platformy je pak postavena tak, že je efektivnější využívat spíše větší množství méně výkonných virtuálních strojů než naopak.
BI od Microsoftu už i v cloudu
Microsoft také na sklonku letošního roku přišel s průlomem v oblasti business intelligence nástrojů, kdy nově představil využití business intelligence v cloudu díky funkcionalitě SQL Azure Reporting (zatím k dispozici v podobě komunitní verze). Ta nabízí možnost využití výstupů populárních nástrojů SQL Reporting Services, business intelligence Design Studio (BIDS) a SQL Server Data Tools v cloudu. Lze tak vytvořit různá hybridní řešení. SQL Azure Reporting jde propojit napřímo i s databází na klasickém Microsoft SQL Serveru 2008 R2 nebo 2012.
I pro SQL Azure Reporting přitom platí, že nad ní lze vyvíjet libovolné aplikace a skripty, které s daty budou dále pracovat. Typicky tak SQL Azure Reporting může sloužit třeba externím obchodníkům k tomu, aby získali rychlý přehled o svých zákaznících a mohli si je libovolně třídit podle regionu, velikosti, data kontaktu atd., a to v přehledném grafickém rozhraní (včetně Bing mapových podkladů). Aby toho nebylo málo, je možné SQL Azure Reporting propojit i s bezplatně dostupným BI nástrojem Microsoft PowerPivot pro Microsoft Excel 2010. Díky tomu je pak možné provádět lokální zpracování libovolných reportů aktualizovaných přes cloud přímo na koncové stanici.
Autor pracuje jako produktový manažer serverové divize společnosti Microsoft
Reporting v SQL Azure.