Ob­jek­ti­tal­len­nus ja loh­ko­tal­len­nus ovat kaksi tal­len­nusark­ki­teh­tuu­ria, jotka eroavat toi­sis­taan mer­kit­tä­väs­ti ra­ken­teel­taan, käy­töl­tään ja tar­koi­tuk­sel­taan. Ob­jek­ti­tal­len­nuk­sen ja loh­ko­tal­len­nuk­sen keskeinen ero on se, että edellinen tallentaa tiedot objektina me­ta­tie­doil­la API:n kautta, kun taas jäl­kim­mäi­nen jakaa tiedot osoit­teel­li­sik­si lohkoiksi, joita hallitaan suoraan käyt­tö­jär­jes­tel­män kautta.

Mitä ovat objektien ja lohkojen tallennus?

Ob­jek­ti­tal­len­nus on moderni tal­len­nusark­ki­teh­tuu­ri, jossa data tal­len­ne­taan ob­jek­tei­na. Jokainen objekti koostuu var­si­nai­ses­ta datasta, me­ta­da­tas­ta ja yk­si­löl­li­ses­tä tun­nis­tees­ta. Nämä objektit tal­len­ne­taan ta­sai­ses­sa ni­mi­ti­las­sa. Tämä tar­koit­taa, että kaikki tal­len­ne­tut objektit on jär­jes­tet­ty samalle tasolle. Siinä ei ole tie­dos­to­jär­jes­tel­mien kaltaista hie­rark­kis­ta ra­ken­net­ta, kuten kansioita tai ha­ke­mis­to­ja. Ob­jek­ti­tal­len­nuk­sen da­taob­jek­tei­hin pääsee tyy­pil­li­ses­ti HTTP-pohjaisen so­vel­lus­liit­ty­män kautta.

Block storage puo­les­taan jakaa tiedot, kuten nimikin kertoo, sa­man­ko­koi­sik­si, kiin­teik­si lohkoiksi, joilla jo­kai­sel­la on oma osoite. Jokainen lohko sisältää vain raa­ka­da­taa ilman li­sä­me­ta­tie­to­ja tai kon­teks­ti­tie­to­ja. Tietoja käyttävä jär­jes­tel­mä – yleensä käyt­tö­jär­jes­tel­mä tai vir­tua­li­soin­tia­lus­ta – vastaa tal­len­net­tu­jen tietojen rakenteen ja mer­ki­tyk­sen tul­kin­nas­ta. Käyt­tö­jär­jes­tel­män nä­kö­kul­mas­ta loh­ko­tal­len­nus toimii kuten fyysinen kiin­to­le­vy tai SSD: se voidaan osioida, alustaa ja käyttää eri­lai­sis­sa so­vel­luk­sis­sa.

Objekti- ja loh­ko­tal­len­nus­ti­lan vertailu yhdellä sil­mäyk­sel­lä

Seu­raa­vas­sa tau­lu­kos­sa on yh­teen­ve­to tär­keim­mis­tä eroista ob­jek­ti­tal­len­nuk­sen ja loh­ko­tal­len­nuk­sen välillä suorassa ver­tai­lus­sa:

Omi­nai­suus Objektien tallennus Loh­ko­tal­len­nus
Tie­to­ra­ken­ne Me­ta­tie­don si­säl­tä­vät objektit Tie­to­loh­kot ilman kon­teks­tia
Pääsy HTTP(S) (REST-ra­ja­pin­nat) Suoraan käyt­tö­jär­jes­tel­män kautta
Viive Korkea Matala
Skaa­lau­tu­vuus Korkea (ihan­teel­li­nen pil­vi­pal­ve­luil­le) Ra­joi­tet­tu, pää­asias­sa pai­kal­li­nen tai SAN-verkon kautta
Me­ta­tie­dot Laaja, käyttäjän mää­rit­tä­mä Hädin tuskin tai ei lainkaan
Käyt­tö­ta­pauk­set Var­muus­ko­piot, media, big data Tie­to­kan­nat, käyt­tö­jär­jes­tel­mät, VM-levyt
Kus­tan­nuk­set Halvempi teratavua kohti suurille tie­to­mää­ril­le Kalliimpi, eri­tyi­ses­ti korkean suo­ri­tus­ky­vyn jär­jes­tel­mis­sä
Jous­ta­vuus Hyvä ra­ken­teet­to­mil­le, harvoin käy­te­tyil­le tiedoille Hyvä jä­sen­nel­lyil­le, usein käy­te­tyil­le tiedoille

Kuinka objekti- ja loh­ko­tal­len­nus toimivat

Ob­jek­ti­tal­len­nus tallentaa tiedot kol­mio­sai­si­na ob­jek­tei­na:

  • to­del­li­set käyt­tä­jä­tie­dot (esim. kuva tai video)
  • me­ta­tie­dot (li­sä­tie­to­ja, kuten luon­ti­päi­vä, tie­dos­to­tyyp­pi tai mu­kau­te­tut tun­nis­teet)
  • ai­nut­laa­tui­nen avain, joka toimii osoit­tee­na

Nämä objektit tal­len­ne­taan ta­sai­ses­sa ni­mi­ti­las­sa. Tek­ni­ses­ti tämä on yk­sin­ker­tai­sem­paa ja skaa­lau­tu­vam­paa, koska mo­ni­mut­kais­ta ha­ke­mis­to­ra­ken­net­ta ei tarvitse hallita. Pääsy tapahtuu HTTP-pro­to­kol­lan kautta, yleensä REST-ra­ja­pin­to­jen avulla. So­vel­luk­set ovat vuo­ro­vai­ku­tuk­ses­sa tal­len­nus­ti­lan kanssa kuten verk­ko­pal­ve­lu. Monet pil­vi­pal­ve­lut, kuten Amazon S3 tai Google Cloud Storage, pe­rus­tu­vat tähän tek­niik­kaan. Ob­jek­ti­tal­len­nus voidaan jakaa maa­il­man­laa­jui­ses­ti, jolloin data voi sijaita useissa paikoissa sa­ma­nai­kai­ses­ti. Tämä parantaa sekä vi­ka­sie­toi­suut­ta että globaalia saa­ta­vuut­ta.

Loh­ko­tal­len­nus toimii enemmän kuin pe­rin­tei­nen asema tai kiin­to­le­vy. Tässä ta­pauk­ses­sa data jaetaan sa­man­ko­koi­siin lohkoihin, joille kullekin annetaan osoite. Nämä lohkot eivät sisällä me­ta­tie­to­ja. Tämä tar­koit­taa, että käyt­tö­jär­jes­tel­män tai sen päällä toimivan so­vel­luk­sen (esim. tie­dos­to­jär­jes­tel­mä tai tie­to­kan­ta) vastuulla on tietää, mitkä lohkot kuuluvat yhteen. Loh­ko­tal­len­nus tarjotaan usein tal­len­nusa­lue­ver­kon (SAN) tai iSCSI-verk­kopro­to­kol­lan kautta. Tal­len­nus­ti­la näkyy käyt­tö­jär­jes­tel­mäl­le pai­kal­li­se­na asemana, ja se voidaan osioida, alustaa ja kir­joit­taa nor­maa­lis­ti.

Ob­jek­ti­tal­len­nuk­sen ja loh­ko­tal­len­nuk­sen erot ja yh­tä­läi­syy­det

Vaikka ob­jek­ti­tal­len­nus ja loh­ko­tal­len­nus pal­ve­le­vat molemmat tietojen tal­len­nus­tar­koi­tuk­sia, ne eroavat toi­sis­taan pe­rus­ta­van­laa­tui­ses­ti ra­ken­teel­taan, käy­tet­tä­vyy­del­tään ja käyt­tö­tar­koi­tuk­sel­taan. Suurin ero on siinä, miten tiedot on jär­jes­tet­ty. Viiveen ja suo­ri­tus­ky­vyn osalta loh­ko­tal­len­nuk­sel­la on muutamia etuja, koska se mah­dol­lis­taa nopean, loh­ko­ta­son käytön. Ob­jek­ti­tal­len­nus puo­les­taan on erin­omai­nen skaa­lau­tu­vuu­den ja pit­kä­ai­kai­sen tietojen säi­lyt­tä­mi­sen kannalta.

Molemmat tal­len­nus­tyy­pit ovat yleisiä pil­vi­pal­ve­lu­ym­pä­ris­töis­sä, ja ne voivat eri­tyi­so­mi­nai­suuk­sien­sa ansiosta tukea te­hok­kaas­ti erilaisia työ­kuor­mia. Molemmat voivat olla osa yh­dis­tet­tyä tal­len­nus­rat­kai­sua. Luo­tet­ta­vuu­den ja vi­ka­sie­toi­suu­den kannalta molempien tek­no­lo­gioi­den ny­ky­ai­kai­set to­teu­tuk­set tarjoavat tärkeitä me­ka­nis­me­ja, kuten repli­koin­tia ja re­dun­dans­sia. Loh­ko­tal­len­nus on suo­ri­tus­ky­ky- ja suo­ra­kont­rol­li­pai­not­tei­sem­paa, kun taas ob­jek­ti­tal­len­nus tarjoaa joustavan ja kus­tan­nus­te­hok­kaan ratkaisun suurille tie­to­mää­ril­le. Ny­ky­ai­kai­sis­sa IT-ym­pä­ris­töis­sä molempia tal­len­nus­tyyp­pe­jä yh­dis­tel­lään usein, jotta niiden edut voidaan hyödyntää parhaalla mah­dol­li­sel­la tavalla.

Tyy­pil­li­siä käyt­tö­ta­pauk­sia

Objektien tal­len­nuk­sen käyt­tö­ta­pauk­sia

Ob­jek­ti­tal­len­nus­ti­laa käytetään usein var­muus­ko­pioin­ti- ja ar­kis­toin­ti­rat­kai­suis­sa. Sen korkea skaa­lau­tu­vuus ja kus­tan­nus­te­ho­kas tal­len­nus­ti­la tekevät tästä tal­len­nus­rat­kai­sus­ta ihan­teel­li­sen pit­kä­ai­kai­seen tietojen säi­lyt­tä­mi­seen. Se on suosittu myös si­säl­lön­ja­ke­lu­ver­kois­sa (CDN), koska suuria me­dia­tie­dos­to­ja voidaan jakaa helposti ja te­hok­kaas­ti.

Toinen tärkeä käyt­tö­ta­paus on suurten tie­to­mää­rien, kuten lo­ki­tie­dos­to­jen, an­tu­ri­tie­to­jen tai vi­deo­tal­len­tei­den, tal­len­ta­mi­nen, koska objektit voidaan tallentaa ja käsitellä it­se­näi­ses­ti. Ny­ky­ai­kai­set verk­ko­so­vel­luk­set ja mo­bii­li­so­vel­luk­set käyttävät myös ob­jek­ti­tal­len­nus­ta käyt­tä­jien tie­dos­to­jen, kuvien ja asia­kir­jo­jen tal­len­ta­mi­seen.

Loh­ko­tal­len­nuk­sen käyt­tö­ta­pauk­sia

Loh­ko­tal­len­nus on suo­si­tel­ta­va ratkaisu tie­to­kan­noil­le ja tran­sak­tio­jär­jes­tel­mil­le. Mah­dol­li­suus käyttää lohkoja suoraan takaa korkean suo­ri­tus­ky­vyn ja pienen viiveen. Nämä omi­nai­suu­det ovat erityisen tärkeitä so­vel­luk­sis­sa, joissa tietoja luetaan ja kir­joi­te­taan usein sa­ma­nai­kai­ses­ti.

Myös­vir­tu­aa­li­ko­neet ja käyt­tö­jär­jes­tel­mät hyötyvät loh­ko­tal­len­nus­ti­lan käytöstä, koska ne tar­vit­se­vat nopeaa ja luo­tet­ta­vaa tal­len­nus­ti­laa. Loh­ko­tal­len­nus­ti­laa käytetään edelleen laajalti myös pe­rin­tei­sis­sä da­ta­kes­kuk­sis­sa, joissa de­ter­mi­nis­ti­nen suo­ri­tus­ky­ky on rat­kai­se­van tärkeää.

Edut ja haitat

Ob­jek­ti­tal­len­nuk­sen ja loh­ko­tal­len­nuk­sen suorassa ver­tai­lus­sa edut ja haitat ovat tärkeässä roolissa.

Ob­jek­ti­tal­len­nus tarjoaa korkean skaa­lau­tu­vuu­den, helpon in­tegroin­nin web-API:n kautta ja mah­dol­li­suu­den tallentaa laajaa me­ta­tie­toa jo­kai­ses­ta ob­jek­tis­ta. Tämä tekee siitä erityisen sopivan ra­ken­teet­to­mil­le tiedoille ja pil­vi­poh­jai­sil­le so­vel­luk­sil­le. Käyttö on kuitenkin suh­teel­li­sen hidasta, joten ob­jek­ti­tal­len­nus ei ole yhtä sopiva so­vel­luk­sil­le, joissa matala viive on tärkeää.

Block-tallennus puo­les­taan tarjoaa huo­mat­ta­vas­ti pienemmän viiveen ja erityisen vai­kut­ta­van suo­ri­tus­ky­vyn. Suora in­tegroin­ti vir­tu­aa­li­ko­nei­siin tai kont­tei­hin tekee block-tal­len­nuk­ses­ta myös en­si­si­jai­sen valinnan pe­rin­tei­sil­le IT-infra­struk­tuu­reil­le. Tähän liittyy kuitenkin kor­keam­mat kus­tan­nuk­set ja vähemmän jous­ta­vuut­ta suurten, ha­jau­tet­tu­jen tie­to­jouk­ko­jen kä­sit­te­lys­sä.

Siirry pää­va­lik­koon