úterý 15. února 2011

O cloudu

Jelikož trávím desítky hodin týdně v hromadné dopravě, vypěstoval jsem si slušnou závislost na Internetu v mobilu a na notebooku, a co jde, přesouvám postupně do cloudu. A jelikož zrovna opět sedím v dálkovém autobusu napojen na všechny ty obláčky, napadlo mě, že je cloud pro většinu lidí jen prázdný pojem, o kterém odborná média pořád mluví, ale sotva jej kdy pořádně vysvětlí. Tak bych rád vedle definice shrnul i různé výhody, nevýhody, a mýty týkající se cloud computingu.

Co to je cloud?
Termín obláčku vznikl jednoduše proto, že pokud zrovna nekoukáme v Alpách na mraky zvrchu i zevnitř, je to něco dosti vzdáleného, co nemáme přímo na dosah. Stejně tak je to s cloud computingem - primárním úložištěm dat (a někdy i celých systému, o tom později) zde není pevný disk počítače, ale vzdálený server, na který jsou koncová zařízení připojena prostřednictvím nějaké sítě či Internetu. Pro příklad nemusíme chodit daleko - v praxi se kupodivu s cloudem setkává i drtivá většina českých uživatelů Internetu. Zatímco dříve bylo standardem pracovat se směšně malou e-mailovou schránkou pomocí klienta (Outlook, Thunderbird, The Bat!, atp.), dnes valná většina domácích uživatelů přistupuje k několikagigabytovým schránkám prostřednictvím webového prohlížeče. Když si jde obyčejný uživatel vyzvednout mail, prostě se v prohlížeči přihlásí na Seznam, a přečte si maily. Ty maily nejsou na jeho počítači, ale na diskových polích Seznamu. Proto se na ně může podívat kdykoli a odkudkoli, stačí mít k dispozici připojení a Internetový prohlížeč. V tom spočívá kouzlo i prokletí cloudu.

Výhody cloudu
- Synchronizovaná data na všech koncových zařízeních (když máte desktop, notebook, pracovní počítač a smartphone, je ruční synchronizace dat - hlavně e-mailů - přímo nesnesitelná)
- Data všude k dispozici (většinou i na cizích počítačích)
- Zachování dat při selhání/ztrátě/odcizení hardwaru (prostě se na novém počítači přihlásíte, a máte všechno po ruce - jen po té krádeži to chce skočit po nejbližším počítači a změnit heslo)

Nevýhody cloudu
- Nutnost připojení k Internetu (ale nemusíte ho mít k dispozici neustále, jak mnozí tvrdí - o tom více poději)
- Závislost na spolehlivém vzdáleném serveru (pokud server provozuje neschopná firma a cloud co chvíli padá, je to služba k ničemu)
- Svěřujete svá data třetí straně (pro celou řadu paranoidních ajťáků je to nepřekousnutelná překážka, a vy ostatní musíte dbát na bezpečné heslo, jinak se k vašim datům dostane každý blbec)

Typy cloudů
Cloud computing zná celou řadu způsobů, jak se ke vzdáleným datům dostat a jak se s nimi uvnitř pracuje, a obvykle se i nějakým způsobem kombinují. Ke každému typu se pokusím uvést příklady.

Webová aplikace (+ klient)
Všichni známe. Webovou aplikací je například dříve zmíněný webmail Seznamu, ale najdou se i daleko zajímavější. Zejména Google jich má celou řadu. Ve webovém prohlížeči můžete například chatovat GTalkem - Jabber s centrálně ukládanou historií, ke které máte přístup odkudkoli. Google Reader zase nabízí centralizovanou RSS, a pokud si na telefonu přečtete článek, na počítači už ho vidíte jako přečtený. Označíte si jiný jako nepřečtený třeba na notebooku, a bude zase nepřečtený všude. Google Calendar umožňuje vzdálený přístup ke kalendáři a úkolům. Google a Microsoft dokonce nabízí na webu kompletní kancelářské balíky - můžete tak odkudkoli zpracovávat wordovské dokumenty a excelovské tabulky, aniž byste museli cokoli instalovat. Webových aplikací pracujících s nejrůznějšími daty je velká spousta a nedají se vyjmenovat všechny. Jejich výhodou je reálná dostupnost odkudkoli (od známých, z práce, z Internetové kavárny, atp.) a nevýhodou menší komfort, který je způsoben prodlevami v Internetovém připojení a vyšší hardwarové náročnosti některých webových technologií (když máte pomalé připojení a pomalý počítač, tak vám třeba AJAX a Flash nadělají při práci pořádnou spoustu nepříjemných prodlev). Mnoho webových aplikací to řeší tak, že mají ještě různé desktopové a mobilní klienty, což jsou aplikace, které mají vlastní uživatelské rozhraní (přizpůsobené konkrétní platformě) a při práci nepotřebují připojení k Internetu. To se použije jen ke stažení či uploadu hotových dat (ale i průběžných, pokud aplikace nabízí automatické ukládání).

Vzdálená synchronizace
Moje nejoblíbenější forma cloudu. Předmětem zájmu není celá aplikace (webový e-mailový klient, nějaké řešení pro organizaci času, atp.), ale surová data. Nezajímá nás celý e-mailový klient, ale jen jednotlivé maily. Nezajímá nás celý kalendář, ale jednotlivé události a úkoly. Tato data jsou uložena někde na serveru a vy k nim můžete z různých zařízení přistupovat různými způsoby. Mnoho z vás v práci používá MS Exchange, aniž o tom víte. Na firemním serveru sídlí všechny e-maily, kontakty a události, které se vám stahují dejme tomu do Outlooku. Když zpracováváte mail a prohlížíte starší komunikaci, nejste zdržováni připojením. Staré maily jsou uloženy u vás, a nový se odešle až když je sestaven. Uloží se na firemní server a teprve poté odejde příjemci. Stejně tak příchozí e-mail převezme server, a teprve poté si ho stáhne váš Outlook. V čem je výhoda? Když vám doslouží firemní počítač, není nic ztraceno. Dostanete nový počítač, který po přihlášení zase stáhne ze serveru všechny vaše maily, schůzky a kontakty, jako by se nechumelilo. A než počítač přijde, můžete se ve webovém prohlížeči podívat do Outlook Web Accessu z kolegova počítače, nebo třeba z vlastního notebooku. A když dostanete služební smartphone, můžete mít Exchange synchronizován i tam, a komunikovat s klienty i na cestách. Když ho vzteky hodíte do řeky, data jsou pořád v bezpečí. Já Exchange nepoužívám, ale Google nabízí obdobnou službu pod názvem Google Sync. Mám na všechny strany synchronizovaný Google Calendar (přidám událost do webové aplikace nebo Sunbirdu, a okamžitě se objeví v telefonu - tyto okamžité akce bez intervalů kontroly a zásahů uživatele najdete v odborných textech pod označením "push") a Gmail i s kontakty. Ale existují i zajímavější služby. Kupříkladu můj oblíbený Dropbox (přikládám svůj referenční link - registrací přes něj dostaneme oba nějaký prostor navíc zdarma). Ten funguje tak, že vytvoří na disku vzdáleně synchronizovanou složku. Do té můžete nahrát cokoli, a data budou při nejbližší příležitosti (pokud to jde, tak okamžitě) odeslána na vzdálený server. Váš notebook se stejným klientem je pak na pokyn serveru (push!) okamžitě stáhne k sobě. Na jednom počítači připíšete kus bakalářky a na druhém se bez ptaní aktualizuje. Nainstalujete si do Dropboxu Mirandu, a máte všude stejnou historii chatu. Když nemáte po ruce svůj počítač, stáhnete si své soubory přes webovou aplikaci. Nebo z mobilu. V mobilu soubor upravíte, a nový soubor se zase sám pošle do všech ostatních počítačů. A aby toho nebylo málo, nabízí zajímavé funkce navíc. Můžete například nějaký podadresář sdílet se svými kamarády, aby změny dostávali i oni. Nebo chcete kamarádovi poslat nějaký soubor. Zapomeňte na Rapidshare, Leteckou poštu, Úschovnu.cz a podobné služby. Prostě soubor nakopírujete na svém počítači do složky Public, a pošlete kamarádovi odkaz. Když soubor upravíte, může si ze stejné adresy stáhnout novou verzi (moji zákazníci například dostávají odkaz na instalační soubor s vyvíjenou aplikací, a na té adrese mají vždy nejnovější verzi - stačí je jen upozornit, ať si ji stáhnou). Nebo si do složky nahrajete hromadu fotek a Dropbox vám vygeneruje webovou galerii, aniž byste sami fotky někam uploadovali. Umazali jste si omylem půlku diplomky? Nevadí, Dropbox archivuje starší verze souborů, aniž by vám překážely na disku - jen si nějakou vhodnou verzi stáhnete, a chybějící kapitolu nakopírujete do rozepsané práce. A data budou na všech počítačích stejná. A musím zmínit obrovskou výhodu vzdálené synchronizace - když zrovna nemáte připojení k Internetu, ničemu to nevadí. Dříve stažená data pořád zůstávají na vašem pevném disku, a můžete si listovat v mailech a dokumentech do alelujá. Toto vám ostatní typy cloudu obvykle nedokážou nabídnout, i když už některé webové aplikace umožňují data cachovat pro použití v režimu offline (např. Gmail s Google Gears).

Mezimráček
To je terminus technicus, který jsem právě teď vymyslel. Tato varianta cloudu najde uplatnění hlavně v mobilních telefonech, ale i jinde. Příkladem budiž chatovací služby Meebo nebo eBuddy (ale podobných je víc - z patra vzpomenu Palringo a Nimbuzz). Přihlásíte se k nějakému vzdálenému serveru (třeba právě na Meebo - je jedno jestli přes webový prohlížeč nebo nějakého klienta), a teprve tam zadáte loginy do různých kecálků - u mě je to čtveřice ICQ, Jabber, Yahoo! a Facebook chat. Meebo pak představuje cloud, který je připojen ke všem těmto IM, přijímá z nich zprávy, odesílá jim vaše zprávy, a vy jste přitom připojeni pouze k Meebu, nikoli k ICQ nebo Jabberu. Výhod je hned několik. Obecně je to jediný login pro mnoho služeb, nebo třeba centralizovaná historie (je jedno odkud se přihlásíte - jestli z domova, z práce, z mobilu; všude je stejná). V mobilu ale vyplouvá na povrch něco lepšího. Jedete třeba vlakem, přičemž půlka trati není pokrytá mobilním Internetem. Pokud se připojíte přímo k ICQ a ztratíte signál, nemá telefon možnost na tuto skutečnost upozornit server (ztratil s ním spojení), a jevíte se všem ostatním jako online. Posílají vám zprávy, ale server je zahazuje, protože je nemůže doručit. Ty zprávy už nikdy neuvidíte, a v komunikaci to dělá pořádný zmatek. V našem případě ale ztratíte kontakt pouze s Meebem. To je připojeno na ICQ dál, a dále přijímá zprávy. Až se obnoví spojení se cloudem, Meebo vám zprávy doručí, a můžete si je všechny přečíst. A tak můžete chatovat třeba i v metru, kdy si zprávy vyměníte vždy na zastávce, i když jste je napsali a potvrdili odeslání už v tunelu bez signálu. Mimochodem - Meebo byl jen příklad. Třeba na Androidu je aplikace špatně napsaná (pořád padá spojení a některé zprávy nedoručí jako nové, ale rovnou je vrazí do historie), a eBuddy funguje daleko lépe a spolehlivěji.

Virtualizace
Tohle je zatím nejdivnější forma cloudu. Tuším, že je to VMware, kdo by něco takového rád prosadil hlavně do firemní sféry. Jde o to, že by na vašem počítači neběžel ani samotný operační systém, ale pouze tenký klient (tímto pojmem rozumíme klienta, který nemá vůbec žádné vlastní uživatelské rozhraní, nebo jej má pouze minimální - celé tělo aplikace je na vzdáleném serveru), který by se připojoval na server s virtuálním strojem, kde byste mohli mít třeba své oblíbené Windows 7 nebo Ubuntu (možná se ve firmě sami občas připojujete na terminálový server pomocí tzv. vzdálené plochy - fungovalo by to obdobně). Popř. byste měli virtuálních strojů několik, a mezi nimi se libovolně přepínali. Výhoda je ta, že může na jediném serveru běžet celá řada virtuálních strojů, což umožňuje optimálnější využití hardwaru (výkonný server dělí své prostředky podle potřeby mezi jednotlivé virtuální stroje), přičemž váš klientský počítač by pracoval jen s minimálním výkonem a tím pádem minimální spotřebou. Navíc platí to co u každého cloudu - můžete se na "svůj počítač" připojit kdykoli a odkudkoli. Nevýhoda je pak zřejmá - prodlevy vždy a ve všem. Každý pohyb myši se odesílá na server, a každé překreslení obrazovky se vrací zpátky. Ve firmě na dobře navržené lokální síti by to snad i fungovat mohlo, ale přes Internet zatím sotva.

Kam zařadit Google Chrome OS?
Tuhle otázku jsem si kladl při psaní hned několikrát. Pokud systém neznáte (čemuž bych se divil, hodně se o něm mluvilo - proto jsem ostatně téma nakousnul), tak jde o rozpracovaný projekt Googlu, který představuje de facto bootovatelný Internetový prohlížeč, ve kterém si zprávy čtete na Gmailu, kalendář spravujete v Google Calendar, dopisy píšete v Google Docs, atp. Žádná aplikace není instalována přímo v počítači, ale odkazuje na nějakou webovou službu, a data nejsou uložena lokálně, nýbrž v nějakém cloudovém úložišti. Mně se ten nápad hodně líbí, ale to není předmětem článku. Na první pohled se může Chrome OS jevit jako tenký klient, ovšem já bych ho tam neřadil, neboť internetový prohlížeč má celou řadu ovládacích prvků, kterých máme plné monitory, aniž si to uvědomujeme (každé tlačítko, textové pole, scrollbar, to všechno existuje u vás lokálně, ne na vzdáleném serveru). Vedle toho je schopen lokálně obsluhovat např. flashku nebo webcameru. Řadím tedy po zralé úvaze jeho pojetí cloudu do první kategorie webových aplikací, sem tam s klientem (např. kvůli GTalku nemusíte otvírat Gmail - je součástí systému). Aby byl notebook s Chromem použitelný, bylo by žádoucí zavést v aplikacích i pořádný systém cachování. Ať už pomocí Gears nebo HTML5. Pak bychom mohli mít svá stávající data k dispozici i offline, a padla by tak většina protiargumentů.

Má pro mě cloud význam?
Pokud používáte několik počítačů, popř. i nějaký ten smartphone, určitě jděte do vzdálené synchronizace. Uvidíte, že vám zásadně zvýší komfort při přechodu mezi počítači. Aspoň zkuste ten Dropbox, a pokud používáte služby Googlu, naťukejte si do telefonu i ten Google Sync (je v různých podobách podporován celou řadou mobilních systémů), a můžete si spravovat upomínky a telefonní seznam z pohodlí svého počítače na Gmailu bez nutnosti instalovat nějaké obludné balíky typu PC Suite. Ať si přečtete mail kdekoli, nikde nebude strašit jako nepřečtený (na počítači stačí používat webmail třeba s Gmail Notifierem, nebo si ve svém oblíbeném mailovém klientovi nastavit IMAP s krátkým intervalem kontroly). Zatímco webové aplikace jsou řadě uživatelů nepohodlné, synchronizací nemáte co pokazit. Navíc v případě selhání hardwaru zůstanou všechna vaše data v bezpečí obláčku. No ale pokud nemáte důvěru k ukládání dat ke třetím stranám, nebo prostě používáte jediný počítač a data pravidelně zálohujete, je to pro vás jen další zbytečné buzzword, kterému se zatím můžete obloukem vyhnout. A stejně jako u všeho - nehrňte se do kdejaké cloudové služby za každou cenu, a jděte jen do těch kvalitních. Když je napsaná špatně, akorát vás rozčílí a zkomplikuje vám práci.

3 komentáře:

Anonymní řekl(a)...

Pěkný článek. Zkusím se kouknout na Dropbox, Tvuj výklad služby mě zaujal - jelikož používám desktop, notebook a Androidphone se to jeví jako elegantní řešení. Díky

Anonymní řekl(a)...

Tesim sa na casy, ktore nas cakaju, ked bude internet na takej urovni, ze sa budu dat vo velkej miere vyuzivat servery na rozne upravy fotiek, videi, 3D grafiky mozno aj hry...

Napr.: naco kupovat drahy soft len preto aby ste raz vyskladali par panoram, ked sa to da do istej nie velmi narocnej miery vyskladat v sluzbach ako je napr. panomonkey.com. Podobne urcite budu v buducnosti fungovat i servery s instalovanou Maya, 3D max alebo niecim podobnym... Pripadne na upravy videa, efekty...

Ktovie mozno nase deti (o 20rokov) si nebudu musiet kupovat vykonne PC na hry, zahraju si hru rovnako na tablete, notebooku i dektope. Jednoducho si zacvakaju sluzby online a vyuziju vykonny server, optimalizovany na hranie danej hry (to uz bude GTA 10).

Anonymní řekl(a)...

A co se týká cloudu, určitě je dobré zmínit možnost zálohování příchozích i odchozích hovorů do vybrané složky Google kalendáře a všech sms zpráv do samostatné složky v Google poště s možností kdykoliv se v čase vrátit ke komunikaci a zjistit volané číslo nebo text zprávy. Když změním telefon nebo smažu data, tyto data lze snadno obnovit ze záloh v cloudu. Jedná se o opravdu velmi jednoduchou záležitost (ne jako dřív, když si člověk potřeboval zálohovat sms, tak musel instalovat programy a prodírat se připojením telefonu k pc atd. atd.). Jen je opravdu potřeba být o trochu méně paranoidní a věnovat se také dobrému zabezpečení svých dat.

Okomentovat