Na koncu tega obsežnega seznama težav in žalostink pridemo tudi do teme, ki jo bomo natančneje obdelali v tokratnem članku. Tako v nadaljevanju tega kot v intervjuju z Markom Heidom, direktorjem programa Enterprise Clouds & Mashups pri IBM-ju, je namreč govor o največji težavi na strani ponudnikov (poleg skepse uporabnikov seveda), in sicer razvojem, nastankom in/ali prilagajanjem »oblačnih« aplikacij ter možnih rešitvah. Natančni razlogi različnih pristopov k prilagajanju ali razvoju tovrstnih aplikacij so s stališča multinacionalke IBM-ovega kova podrobneje pojasnjeni v že prej omenjenem intervjuju. A kot na prenekaterem drugem področju razvoja programske opreme in rešitev si velja zapomniti, da še tako veliki vložki še tako velikih ponudnikov običajno zaostajajo za navdušenjem množic programerjev, razvijalcev, strategov in drugih dejavnih podpornikov odprte kode. To v zadnjem času podpirajo tudi velikani, kot so Yahoo, Google in IBM, ki bi jih težko obtožili nezadostnih vložkov v svoje interne raziskovalne napore, financirajo pa tudi posamezne skupine znanstvenikov, sicer zaposlenih v akademskih ustanovah, ki se ukvarjajo s finančno sicer še nezanimivimi projekti, ki pa utegnejo v prihodnosti vdihniti novo življenje novemu-staremu konceptu računalništva v oblaku. Navadno je namreč tako, da se nove platforme »primejo« takrat, ko neodvisni razvijalci začnejo inovativno uporabljati njihove posebnosti oziroma edinstvene lastnosti, in čeprav koncept »time-sharinga« obstaja že zelo dolgo, do tega prihaja šele zdaj.

Računalništvo v oblaku ima nedvomno potencial, da postane ena platform, ki se bodo »prijele,« toda koda, ki »usmerja«, nadzira in upravlja strojno opremo v oblaku, je (vsaj za zdaj še) precej nerodna in neprilagojena novim razmeram, pri čemer so tudi »nove razmere« sporne in stvar različnih definicij (glej okvirček). Vendarle pa je večini teh definicij skupna podmena, da gre za nekaj prelomnega v razvoju računalništva, in če to »nekaj« doseže kritično maso …

B(L)OOM

Podobnih misli je tudi skupina vrhunskih strokovnjakov, ki na univerzi Berkeley pod vodstvom profesorja Josepha Hellersteina raziskujejo nove programske jezike za nadziranje in upravljanje oblaka, s katerimi bi lahko končno začeli učinkovito izkoriščati distribuirane sisteme v podatkovnih centrih. Problem računalništva v oblaku je predvsem razkorak med dosegljivim in »izkoristljivim«; trenutno recimo lahko prek različnih ponudnikov najamemo nekaj deset, nekaj sto ali še kaj več virtualnih strojev, vendar ne poznamo preprostega načina, ki bi na osnovi obstoječih programskih jezikov omogočal dejanski izkoristek tolikšnih zmogljivosti.

Trenutno torej še ni programskega modela, ki bi razvijalcem omogočal vsaj zmerno preprosto usklajevanje v podatkovnih centrih porazdeljenih zmogljivosti, kar bržkone precej prispeva k »ekskluzivnosti« znanja, potrebnega za kreativno (iz)rabo teh. Napori raziskovalcev z Berkeleyja potekajo v okviru projekta BOOM – Berkeley Order Of Magnitude, kar bi lahko prevedli kot »red velikosti z Berkeleyja,« saj je namen tega omogočiti razvoj sistemov, ki bi bili za red velikosti obsežnejši kot trenutni, ter razviti za red velikosti preprosteje, kot je to mogoče s sedanjimi metodami programiranja.

BOOM sloni na raziskavah, ki so bile opravljene v osemdesetih letih prejšnjega stoletja in katerih cilj je bil iskanje načina za učinkovito programiranje podatkovnih zbirk. Tehnologije, ki jih dandanes uporabljamo pri delu s podatkovnimi zbirkami, namreč omogočajo zbiranje posameznih naborov podatkov ter procesiranje teh na različne načine, kar bi bilo lahko po besedah prof. Hellersteina dobro izhodišče za izkoriščanje novih možnosti, ki se nam odpirajo z računalništvom v oblaku.

Podatki, shranjeni v zbirkah, so namreč dostikrat obdelani v sklopih, pri čemer ni pomembno, kateri ukaz računalnik za obdelavo uporablja. Zato lahko razvijalci različne obdelovalne naloge preprosto porazdelijo med več procesorjev.

Del projekta BOOM je tako tudi Bloom, programski jezik, ki naj bi brez odvečne kompleksnosti, značilne za svojega predhodnika iz osemdesetih, omogočal preprosto izrabo možnosti vzporednega procesiranja. Bloom bo dostopen v okviru odprte kode kot knjižnica, ki jo bo mogoče uporabiti v okviru priljubljenih programskih jezikov, kot sta Java ali Python. Možnost uporabe Blooma v vsaj enem od teh jezikov bo gotovo sprožila ogromen premik, saj bo pomenila konec prej omenjene ekskluzivnosti znanja, potrebnega za pisanje oblakom primerne kode. Kot napovedujejo člani projekta BOOM na svoji spletni strani, naj bi prva različica Blooma luč dneva ugledala konec tega leta, kmalu za njim pa najbrž tudi prve »ubijalske« aplikacije.

V intervjuju za HPC in the Cloud je prof. Hellerstein dejal, da niti približno ne ve, na kakšne načine bi lahko novi programski jezik vplival na nadaljnji razvoj računalništva v oblaku. »Ko so se pojavili prvi mobilni telefoni z omembe vredno računsko močjo, je sicer bilo nekaj govora o e-pošti in lokacijskih storitvah, vendar tudi takrat nihče ni vedel, kako bodo ti telefoni spremenili razvoj aplikacij ali kakšne aplikacije bi uporabniki v takšnih telefonih sploh uporabljali. In to je zgodba, ki še ni končana. Razvijalci torej ne vedo, kaj bo naslednja »ubijalska« aplikacija, imajo pa orodja, da jo lahko ustvarijo – vse drugo je odvisno od inovativnosti. Na tej točki smo trenutno z oblakom, in kdo ve, kaj se bo zgodilo, ko bodo imeli ljudje za razvoj na voljo moč tisočih računalnikov?«

NAMESTO SKLEPA

Lahko bi torej dejali, da pripravljenosti za »novo paradigmo« računalništva manjka tako na strani ponudnikov kot uporabnikov, vsaj glede dejansko uporabnih, funkcionalno ter komercialno zanimivih aplikacij, razvitih za uporabo v novem, oblačnem okolju. Še več, nemara v tem trenutku manjka tudi kritične mase uporabnikov, za katere bi se izplačalo nove aplikacije sploh razvijati, kar je bržkone tudi razlog za razmeroma dolgo obdobje »cincanja«. Toda če gre dejansko za prelomen trenutek v zgodovini IT-ja, potem smo lahko skoraj prepričani, da bomo čez nekaj let v isti sapi z velikani, kot so Microsoft, IBM in HP, najbrž omenjali še kako, danes docela neznano ime, ki si bo ime in slavo pridobilo ravno s tveganjem v obdobju cincanja. Najbolj v nebo vpijoč primer takšnega razvoja dogodkov je gotovo neponovljiv trenutek, ko se je skupina ljudi s pravo idejo znašla na pravem mestu s pravo idejo ter prepričala svet, da potrebuje osebni računalnik, opremljen s programsko opremo. Razlika je tokrat le v tem, da je treba prepričati predvsem podjetja. Ki ne začenjajo z ničle kot pred leti domači uporabniki, temveč že imajo precej (drage in še neamortizirane) IT-opreme in kadrov, kar pomeni, da jih bo bržčas prepričala šele aplikacija, ki v do zdaj »normalnih« okvirih ne bo mogla teči in ki si je verjetno še ne znamo prav predstavljati. Ni sicer nujno, da bo tisto podjetje, ki mu bo to prepričevanje uspelo, podoživelo uspeh Microsofta, vendar pa bo po vsej verjetnosti na dobri poti k temu. Še zlasti če bo dobro poskrbelo tudi za druge ovire, naštete v začetku tega sestavka, med njimi pa še posebno za varnost podatkov. A več o tem drugič.

Moj mikro, September 2010 | Boštjan Klajnščak |