Miks tasuta Eesti e-posti pakkujate limiit on vaid 10 MB?
6. okt 2008Olen juba üle kuu olnud Tallinna Ülikooli IT Juhtimise magistriõppes, õppekava sisaldab muuhulgas ka mitmeid juhtimis ja strateegia alaseid aineid. Igatahes, täna üht vastavat loengut kuulates meenus mulle asjakohane näide, kuidas uus tulija, uute ja selgelt paremate tehnoloogiatega, seniseid parimaid praktikaid hüljates, võib tugevalt muuta ja mõjutada juba väljakujunenud ja ennast tõestanud turgu.
Milles küsimus?
Nimelt näide, kuidas Google oma GMail nimelise teenusega muutis veebipõhist e-mailindust.
Traditsiooniline veebipõhine e-posti klient (mail.ee, hot.ee jne) töötab lihtsalt vahekihina mailiserveri ja kasutaja vahel. Täpselt samamoodi nagu töölaua e-posti kliendid, mis suhtlevad serveriga läbi IMAP või POP3 vormingu, töötavad ka veebipõhised e-maili teenused.
Reeglina käib see järgnevalt. E-kiri tuleb läbi SMTP protokolli saatjalt mailiserverisse ning salvestatakse kasutaja kausta. Kasutaja logib veebilehitsejas oma kasutajatunnusega e-posti kontole sisse ja näeb saabunud e-kirja ja saab seda lugeda.
Tegelikkuses annab kasutaja sisse logides lihtsalt oma kasutajatunnused veebiserveris olevale skriptile, too ühendab ennast mailiserveri külge (reeglina IMAP, kuna see võimaldab arvet pidada loetud/lugemata kirjade üle, pluss kaustade haldus) ja kuvab mailiserverilt saadud nimekirja postkastist. Kasutaja klikib mõnel e-kirjal, veebiserveris skript võtab uuesti mailiserveriga ühendust ja pärib sellelt vastava e-kirja kasutajale kuvamiseks.
Probleemid
Kasutatavad protokollid (POP ja IMAP) on juba aastakümneid vanad ja seega end tõestanud, usaldusväärsed vahendid. Samas aga seesama vanus osutub prototkollide konnasilmaks - nad on arendatud ajal, kui emailid olid peamiselt tekstipõhised ja seega mahult väikesed. Tänapäeval aga, kui pannakse kirjadele kaasa äsja digifotokast võetud 5MB pildifaile võib protokoll kitsaks jääda.
Suureks probleemiks on kirjade kustutamine
Kuna traditsioonilised veebipõhised e-posti teenused (mail.ee jne) pakuvad kasutajatele väga väikest kettaruumi (näiteks 10MB) ja tehnoloogilistel põhjustel polegi võimalik väga palju suuremat pinda pakkuda - kasutaja failid peavad asuma ühes kaustas ja seega ühel kettal serveris, aga kunagi pole teada, palju mingi klient ketast tulevikus täpselt kasutab - siis kustutatakse kirju pidevalt.
Kui kirjad olid suuruses 1-2 kilobaiti, ei olnudki kustutamine väga aktuaalne. Sellisel juhul mahub kirju postkasti päris palju. Kui aga potsatab sinna üks kiri 5MB pildifailiga, on postkast kiirelt täis. Kui meenutada veel hiljaaegset hotmail.com 2MB piirangut, siis tundub see isegi naeruväärne, antud postkasti ei mahuks ükski “moodne” fail ära, ei pilt ega suurem Wordi dokument.
Seega kirjad kustutatakse kiirelt. Igasugune failide kustutamine kettalt aga fragmneteerib selle kiirelt. Windowsi kasutajad teevad aegajalt oma arvuti kõvakettale defragmendi, aga serveri ketastel, kus on igal suvalisel hetkel sisse kirjutatud suur hulk kasutajaid, on see võimatu. Tulemuseks on fragmenteerunud kettad ja see omakorda tähendab kõvaketta aeglustumist - iga faili lugemiseks tuleb teha mitu tiiru, osa faili on võbolla ketta alguses, aga teine pool on kuskil lõpus.
Kettad on raskesti koormatud (mh. risk füüsiliste kettavigade tekkeks (rohkem liikumist) ja seega on tarvis soetada kallimaid kettaid) ning kasutajad on kindlas kettas kinni, kuna nende e-posti konto failid asuvad ühes kohas. Kunagi oli tore, aga täna on probleemne.
Gmaili lahendus
Gmaili erilisus ei tulene sugugi heast kasutajaliidesest, see kõigest kiirendas muutusi - tõeline revolutsioon toimus Gmaili tulekuga aga e-posti hoidmisega serveris. Nimelt on Gmail-i puhul protsess järgmine: Gmail võtab emaili sisse, indekseerib selle otsingu jaoks ning asetab selle (nb! pakitud kujul ehk et ruumisäästlikult) hetkel sobivasse serverisse, sobivale kõvakettale.
Kui nüüd Gmaili kasutaja logib oma kontole sisse, siis keskserver võtab ette nimekirja kasutaja e-kirjadest ja vaatab, kus mingi kiri asub. Kui kasutaja tahab kirja lugeda, tõmmatakse kirja andmed soovitud serverist, pakitakse lahti ja näidatakse kasutajale.
Kuna kirjad ei pea asuma füüsiliselt samas kohas, saab kasutaja postkast olla suvalise suurusega, kasvõi praegu jagatava 7 GB suurune. Kuna kettad pole niivõrd fragmenteeritud ja ei saa suurt füüsilist koormust - kiri asub alati ühes kohas, ketta pea hakkab lugema algaadressilt A ning lõpetab aadressil B ilma vahepeal ringi hüppamata - saab kasutada ka odavamaid kettaid.
Kirja kustutades märgib Gmail selle lihtsalt andmebaasi kirjena kustutatuks, reaalselt jääb kiri alles. Faile (sh. ka kirju) hoitakse Google failisüsteemis (GFS) (mitte nagu näiteks Windowsi puhul NTFS või FAT), mille omaduseks on hoida faile 64MB kogumitena. Kui üks selliste failide kogu koosneb failidest, mis on kõik kustutatuks märgitud, kustutakase ka see kogum ning vabatatakse ruum uuele. Ehk et ei kustutata mitte kunagi kettalt suvalise pikkusega faili, vaid alati kindel suurus, 64MB. Seega ei saa tekkida ka ketta fragmentatsiooni.
Kokkuvõte
Niikaua kuni Eesti e-maili pakkujad ei hakka kasutama sarnast tehnologiat, jäävad tasuta postkastid vähemalt mainstream pakkujatel igaveseks 10MB suuruseks (alternatiivsed pakkujad võivad ka suuremaid mahtusid pakkuda, aga kohe kui nad muutuvad mainstream pakkujaks, ei tule sellest enam midagi välja - mahud kasvavad liiga suureks).
Ilmselt seda aega aga ei tule - ise oleks vastava tehnoloogia arendamine raske, sisse osta aga kallis. Pealegi puudub selleks motivatsioon - kõik ju toimib niisamagi.