Multitenantné zdieľanie databáz

Zdie­ľa­nie da­ta­báz je čo­raz bež­nej­šie naj­mä pri pos­ky­to­va­ní sof­tvé­ru ako služ­by (SaaS) ale­bo v pros­tre­diach cloud com­pu­tin­gu. V pros­tre­dí SaaS mô­žu or­ga­ni­zá­cie vý­raz­ne ušet­riť nák­la­dy, ak zdie­ľa­jú zdro­je. No čím viac ich zdie­ľa­jú, tým viac kom­pli­ku­jú rie­še­nie a ris­ku­jú mož­né prob­lé­my v ob­las­ti bez­peč­nos­ti ale­bo dos­tup­nos­ti.

Je pre­to ne­vyh­nut­né náj­sť správ­ny spô­sob zdie­ľa­nia, za­ru­ču­jú­ci nie­len re­duk­ciu nák­la­dov, ale aj správ­ne od­de­le­nie dát jed­not­li­vých pou­ží­va­te­ľov tak, aby spĺňa­li po­žia­dav­ky pou­ží­va­te­ľov aj ap­li­ká­cie. Kaž­dá ap­li­ká­cia vy­tvá­ra iný workload na da­ta­bá­zu a má špe­ci­fic­ké po­žia­dav­ky na kon­fi­gu­rá­ciu. Nie vždy je pre­to vhod­né spá­jať do jed­nej da­ta­bá­zy rôz­ne ty­py ap­li­ká­cií. V nas­le­du­jú­com člán­ku opí­še­me jed­not­li­vé spô­so­by zdie­ľa­nia da­ta­báz.

1. Dá­ta v rov­na­kých ta­buľ­kách

Všet­ci pou­ží­va­te­lia vy­uží­va­jú tie is­té ta­buľ­ky na ulo­že­nie svo­jich dát, te­da pred­pok­la­dom je pou­ži­tie v rám­ci jed­nej ap­li­ká­cie. Kaž­dý ria­dok by mal byť od­lí­ši­teľ­ný - naj­lep­šie po­mo­cou ID pou­ží­va­te­ľa ale­bo po­mo­cou prís­luš­nej re­fe­ren­čnej in­teg­ri­ty. Bez­peč­nosť mu­sí byť rie­še­ná buď na úrov­ni ap­li­ká­cie, ale­bo po­mo­cou za­bez­pe­če­nia jed­no­li­vých zá­zna­mov - riad­kov v ta­buľ­ke. Ta­ká­to bez­peč­nosť bý­va ozna­čo­va­ná ako La­bel ba­sed ac­cess con­trol, resp. la­bel se­cu­ri­ty či row and co­lumn ac­cess con­trol. Niek­to­ré da­ta­bá­zy po­nú­ka­jú tú­to fun­kcio­na­li­tu za­dar­mo už od zá­klad­ných edí­cií a niek­to­ré, žiaľ, iba ako príp­lat­ko­vú od en­terpri­se edí­cií. Vte­dy sa od­po­rú­ča zvá­žiť vhod­nú da­ta­bá­zo­vú plat­for­mu na ta­ké­to rie­še­nie. V ta­kom­to prí­pa­de sú zdie­ľa­né nas­le­du­jú­ce zdro­je:

  • da­ta­bá­zo­vý server
  • in­štan­cia
  • da­ta­bá­za
  • sché­ma
  • ta­buľ­ky

To­to rie­še­nie je vhod­né pre men­šie ap­li­ká­cie, keď­že s množ­stvom pou­ží­va­te­ľov na­ras­tá aj množ­stvo zá­zna­mov v ta­buľ­kách, kto­ré mô­žu byť po ča­se ťaž­ko spra­vo­va­teľ­né.

2. Dá­ta v roz­lič­ných ta­buľ­kách, ale rov­na­kej sché­me

Kaž­dý pou­ží­va­teľ má svo­ju sku­pi­nu ta­bu­liek, nad kto­rý­mi pra­cu­je je­ho ap­li­ká­cia, pri­čom sa zdie­ľa­jú nas­le­du­jú­ce zdro­je:

  • da­ta­bá­zo­vý server
  • in­štan­cia
  • da­ta­bá­za
  • sché­ma

V tom­to prí­pa­de je jed­no­duch­šia sprá­va pou­ží­va­teľ­ských dát v rám­ci ob­jek­tov da­ta­báz - da­jú sa od­lí­šiť aj do­py­ty pou­ží­va­te­ľov na zá­kla­de náz­vu a mož­no ich spra­vo­vať aj sa­mos­tat­ne. Bez­peč­nosť sa mô­že de­fi­no­vať na úrov­ni da­ta­bá­zo­vých ob­jek­tov (napr. ta­buľ­ka, in­dex) - pred­pok­la­dom je však vy­uži­tie auto­ri­zá­cie na úrov­ni da­ta­bá­zy.

V prí­pa­de, že ta­buľ­ky pou­ží­va­te­ľov ma­jú mať rov­na­ký ná­zov, pred­pok­la­dá sa pou­ži­tie pre­fixu v náz­ve (napr. čís­lo pou­ží­va­te­ľa). Ale lo­gic­kej­šie je už po­tom pou­žiť sché­mu na od­lí­še­nie pou­ží­va­te­ľov, čím sa dos­tá­va­me k ďal­šie­mu spô­so­bu zdie­ľa­nia.

3. Dá­ta v roz­lič­ných sché­mach, ale v zdie­ľa­nej da­ta­bá­ze

Ten­to spô­sob spo­ľah­li­vo fun­go­val v ča­se slá­vy main­fra­mo­vých da­ta­báz a sys­té­mov host. Kaž­dý pou­ží­va­teľ je uzav­re­tý vo svo­jej sché­me, kto­rá oby­čaj­ne ne­sie ná­zov v po­do­be me­na pou­ží­va­te­ľa. Za­bez­pe­če­nie sa nas­ta­vu­je na úrov­ni sché­my, a tak od­pa­dá prác­ne nas­ta­vo­va­nie pre kaž­dú ta­buľ­ku zvlášť. Zdie­ľa sa však eš­te stá­le:

  • da­ta­bá­zo­vý server
  • in­štan­cia
  • da­ta­bá­za

Kaž­dá sché­ma má vlas­tné ta­buľ­ky, a te­da da­ta­bá­za mô­že ob­sa­ho­vať rov­na­ko po­me­no­va­né ta­buľ­ky, od­de­le­né náz­vom sché­my. Tak­to mož­no pou­žiť sché­my na na­sa­de­nie via­ce­rých rov­na­kých ap­li­ká­cií, kto­ré pou­ži­jú vždy roz­lič­nú sché­mu pre svoj sú­bor ta­bu­liek. Pou­ží­va­te­lia ma­jú auto­ri­zá­ciu pra­co­vať nad dá­ta­mi v rám­ci svo­jej sché­my.

4. Dá­ta v rôz­nych da­ta­bá­zach, ale v rám­ci jed­nej in­štan­cie

V tom­to prí­pa­de má kaž­dý pou­ží­va­teľ vlas­tnú da­ta­bá­zu, nad kto­rou pra­cu­je je­ho ap­li­ká­cia. Vý­hod­ná je mož­nosť spra­vo­va­nia da­ta­bá­zo­vých pa­ra­met­rov sa­mos­tat­ne pre kaž­dé­ho pou­ží­va­te­ľa. To mô­že byť veľ­ká pred­nosť, naj­mä ak ide o ap­li­ká­cie ge­ne­ru­jú­ce roz­lič­ný typ workloa­du ale­bo po­ža­du­jú­ce rôz­ne kon­fi­gu­rač­né pa­ra­met­re. Tre­ba však pri­hlia­dať na maximál­ne množ­stvo da­ta­báz, kto­ré mô­žu bež­ať v rám­ci in­štan­cie, ty­pic­ky ich je 256. Na úrov­ni da­ta­bá­zy sa rie­ši vy­so­ká dos­tup­nosť, kto­rá tak mô­že byť rie­še­ná pre kaž­dé­ho pou­ží­va­te­ľa zvlášť, ale aj mož­nos­ti zá­lo­ho­va­nia a ob­no­vy da­ta­bá­zy. Zdie­ľa sa te­da nas­le­du­jú­ce:

  • da­ta­bá­zo­vý server
  • in­štan­cia

Tre­ba eš­te poz­na­me­nať, že nie všet­ky DBMS umož­ňu­jú mať viac da­ta­báz v rám­ci jed­nej in­štan­cie.

5. Dá­ta v rôz­nych in­štan­ciách

Ten­to spô­sob umož­ňu­je vy­tvá­rať via­ce­ré in­štan­cie na da­ta­bá­zo­vom server­i, čo pos­ky­tu­je mož­nosť sko­ro ab­so­lút­ne od­de­liť jed­not­li­vé da­ta­bá­zy, čo sa tý­ka sprá­vy, ale aj dos­tup­nos­ti. Všet­ky nas­ta­ve­nia sú spra­vo­va­né sa­mos­tat­ne a aj v prí­pa­de reš­tar­tu in­štan­cie sa ap­li­ká­cie a pou­ží­va­te­lia neov­plyv­ňu­jú. No stá­le sa ov­plyv­ňu­jú, čo sa tý­ka vý­ko­nu, pre­to­že stá­le zdie­ľa­jú:

  • da­ta­bá­zo­vý server

Vý­ko­no­vo však mož­no tie­to in­štan­cie la­diť po­mo­cou workload ma­na­ge­men­tu ope­rač­né­ho sys­té­mu, pri­čom v os­tat­ných prí­pa­doch je ne­vyh­nut­né li­cen­co­vať workload ma­na­ge­ment da­ta­bá­zy. Vý­hod­ná je aj mož­nosť be­hu da­ta­báz na rôz­nych ver­ziách da­ta­bá­zo­vé­ho sof­tvé­ru. Mig­rá­cie a ak­tua­li­zá­cie sa však mu­sia vy­ko­ná­vať pre kaž­dú ap­li­ká­ciu, res­pek­tí­ve pou­ží­va­te­ľa zvlášť.

V tom­to prí­pa­de je vhod­né pri­hlia­dať na ná­ro­ky jed­nej in­štan­cie, tá si to­tiž alo­ku­je de­faul­tne ne­ja­kú pa­mäť a v prí­pa­de množ­stva bež­iacich in­štan­cií mô­žu server­u dôjsť pa­mä­ťo­vé zdro­je.

Niek­to­ré DBMS umož­ňu­jú vy­tvá­rať viac in­štan­cií bez nut­nos­ti in­šta­lá­cie no­vých bi­ná­riek DBMS. Mno­hé to, žiaľ, po­ža­du­jú a zby­toč­ne kom­pli­ku­jú na­sa­de­nie.

Ako vi­dieť, mož­nos­tí rie­še­nia mul­ti­te­nan­tných da­ta­báz je mno­ho - roz­hod­nu­tie, kto­rý spô­sob sa zvo­lí, bu­de zá­vi­sieť od po­žia­da­viek ap­li­ká­cií (naj­mä veľ­kosť), spra­vo­va­teľ­nos­ti rie­še­nia, ale aj po­žia­da­viek zá­kaz­ní­kov. Dô­le­ži­té je vy­brať vhod­nú da­ta­bá­zo­vú plat­for­mu, kto­rá umož­ňu­je rie­šiť po­ža­do­va­né od­de­le­nie, resp. zdie­ľa­nie zdro­jov, ale aj dos­tup­nosť ale­bo bez­peč­nosť v čo naj­jed­no­duch­šej mie­re.

Ju­raj Hrap­ko, In­for­ma­tion Ma­na­ge­ment Tech­ni­cal Pro­fes­sio­nal IBM Slo­va­kia

Zdroj: IW 5/2013


Ohodnoťte článok:
 
 
 

24 hodín

týždeň

mesiac

Najnovšie články

In­for­mač­ná bez­peč­nosť: Geog­ra­fic­ky dis­tri­buo­va­ná ochra­na dát
Ako minimalizovať výpadok IT služieb a stratu dát v dôsledku nepriaznivých udalostí. Zatiaľ čo v predošlej dekáde stačilo chrániť pred výpadkom niektoré aplikácie.  čítať »
 
Pla­te­ná rek­la­ma vs. op­ti­ma­li­zá­cia SEO – vý­ho­dy, ne­ga­tí­va, mož­nos­ti
Špecialisti na SEO tvrdia, že správnou optimalizáciou webu máte šancu získať oveľa viac ako platenou reklamou. Naproti tomu experti na platenú reklamu argumentujú dosahovaním rýchlych a merateľných výsledkov. čítať »
 
Ar­chi­tekt vs Pro­jek­to­vý ma­na­žér - spo­jen­ci, či ne­pria­te­lia?
Tieto roly existujú v každom väčšom projekte, ale napriek tomu ich spolupráca často neprebieha tak hladko ako by sa očakávalo. Je dôvod v samotných rolách, alebo leží úplne inde? čítať »
 
Ap­pli­ca­tion De­li­ve­ry – efek­tív­na ochra­na pro­ti hac­ke­rom a op­ti­ma­li­zá­cia vý­ko­nu slu­žieb
Sú vaše webové služby chránené proti hackerom? Programátori často urobia chyby, ktoré dokážu útočníci zneužiť.   čítať »
 
Cloud com­pu­ting: Oča­ká­va­nia a reali­ta, preh­ľad pos­ky­to­va­te­ľov (Ama­zon, Goog­le, IBM, Mic­ro­soft)
Cloud computing, technológia predstavujúca model zdieľania hardvérových zdrojov pomocou virtualizácie a automatizácie, v súčasnosti naberá rýchlosť pri globálnom rozširovaní sa do celého spektra sektorov poskytujúcich obrovské množstvo služieb. čítať »
 
Dá­ta nie sú len ved­ľaj­ším pro­duk­tom pre­vádz­ky IS
Na otázku, ako stručne hodnotíte informačný systém vašej organizácie, by sme dostali mnoho rôznych odpovedí. čítať »
 
BYOD pod­po­ru­je ino­vač­né ini­cia­tí­vy ta­len­to­va­ných za­mes­tnan­cov
Jeden z charakteristických atribútov trendu BYOD je možnosť vynútenia technologického pokroku v IT podpore biznisu „zdola", najčastejšie zo strany mladších používateľov. čítať »
 
Li­cen­čnú čis­to­tu je ťaž­ké us­trá­žiť
Pre licenčného manažéra je znalosť aktuálnych licenčných podmienok od dvoch až troch výrobcov softvéru na všetok využívaný softvér v spoločnosti nedosiahnuteľná méta. čítať »
 
 
 
  Zdieľaj cez Facebook Zdieľaj cez Google+ Zdieľaj cez Twitter Zdieľaj cez LinkedIn Správy z RSS Správy na smartfóne Správy cez newsletter