Data replication

From EIK wiki

Autor

Liis Vaupere AK21

Sissejuhatus

Järjest enam ettevõtteid teadvustab endale, kui tähtsad on nende äri toimimiseks nende äri andmed – andmekadu võib ajutiselt halvata ettevõtte töö või viia isegi pankrotini. Kaitsmaks andmete säilivust peale tehnilise vea või loodusõnnetuse vms. ilmnemist ning tagada ettevõtte jätkusuutlikus, tuleks kasutada andmete replikatsiooni.

Andmete replikatsioon on tehnika, mida kasutakse andmete kopeerimiseks üle võrgu ühest asukohast teise (või mitmesse) , mis erinevad oluliselt oma lokatsiooni poolest. Taoline andmete hoidmine lisab, aga keerukust IT andmete hoidmise lahendusele ettevõttes.[1][2] Enamasti kasutatakse lahendust andmebaaside kopeerimiseks, muid andmeid (dokumendid, pildid, videod jms.) üldjuhul varundatakse CD/DVD, mälupulgale, varukettale jne. Andmete hoidmise lahendus ettevõttes peab toetuma suuresti äriprotsessidele (teenindustasemed) ning selle jätkusuutlikuse strateegiale. [3] Seejuures tuleks tähelepanu ka pöörata andmete elutsüklile – ei ole mõtet hoida alles andmeid ilma asjata, kui andmed ei ole enam ajakohased ning kokku saab hoida andmete säilitamisele minevaid kulusid.

Andmebaasi replikatsioon

Andmebaasi replikatsiooni tulemusena kopeeritakse ja hallatakse andmeid mitmes andmebaasis, mis üheskoos moodustavad hajusa andmebaasisüsteemi. Seejuures peab olema tagatud, et igast asukohast jõuavad uuendused teistesse asukohtadesse. Andmebaasi replikatsiooni saab teha vähemalt kolmel viisil[4]:

Pildistav (snapshot) replikatsioon – andmed kopeeritakse lihtsalt ühest serverist teise (või siis teise andmebaasi samal serveril)

Ühendatav (merging) replikatsioon – andmed koondatakse kahest või enamast serverist kokku ühte serverisse.

Trasaktsiooniline (transactional) replikatsioon – kasutaja saab täiskoopia algsest andmebaasist ning seejärel saab põhiandmebaasist perioodiliselt uuendusi.

Võimalik on kasutada näiteks juhte, kus rakenduse põhitöö käib lokaalses töökohas olevas andmebaasis ning andmed saadetakse sealt edasi kesksesse andmebaasi, mis koondab ja edastab endasse lokaalsete baaside tegevusi. Kui peaks ühendus olema ajutiselt kadunud keskse süsteemiga, kuid lokaalselt on võimalik siiski tööd jätkata minimaalsete mõjudega.

Replikatsiooni tüübid

Andmeid saab replitseerida kas sünkroonselt või asünkroonselt. Sünkroonne replikatsioon tagab järjepideva andmete terviklikkuse replikatsiooni protsessi jooksul, ilma et oleks ohtu andmekaoks. Rakenduse käideldatavus seejuures aga võib saada suuresti mõjutatud, sõltuvalt kahe asukoha vahelisest kaugusest. Asünkroonne replikatsioon aga väljatoodud käideltatavuse riski taha ei lange, tuleb aga arvestada andmekao tõenäosusega.

Sünkroonne replikatsioon kopeerib andmed üle SAN (storage area network), LAN (local area network) või WAN (wide area network) võrgu nii, et pidevalt on mitu up-to-date andmeallikat – andmeid kirjutatakse primaar ja sekundaar asukohtadesse samaaegselt, seega on tagatud erinevate lokatsioonide andmete ühisus. Sünkroonne replikatsioon on seejuures ka kallis replikatsioonivorm, aeglustades rakendust ning olles seejuures töötama lokatsioonide vahel, mis on üksteisest kuni 300 km kaugusel.[5] Lahendust kasutatakse eelistatult juhtudel, kus rakendused ei saa lubada maasoleku aega ning andmekadu pole aksepteeritav. Seejuures saab ümberlülitumine primaarasukohast sekundaarasukohta toimuda kiirelt ning rakenduse maasoleku aeg jääb lühikeseks või ei esine maasolekut üldse.

Asünkroonne replikatsioon kasutab oma lahenduses „hoiusta ja saada“ lahendust – andmed kirjutatakse esmalt mällu vms asukohta, kust edasiselt reaalajas või ajaintervallidega kopeeritakse andmeid sihtkohta. Erinevalt sünkroonsele replikatsioonile on asünkroonne replikatsioon ette nähtud töötama üle pikkade vahemaade – lokatsioonide andete ühisuse tagamine ei ole ajakriitiline. [6]

Kokkuvõte

Lähtuvalt andmete replikatsioonist on võimalik tekitada olukord, kus süsteemis esineva rikke või primaarasukoha hävingu tagajärjel lülitub sekundaarasukohas süsteem sisse nii, et andmekadu, mida ettevõte väärtustab, on minimaalne või puudub täielikult. Süsteem on minimaalse aja kättesaamatu (zero downtime) ning süsteemi töö jätkub ilma mõjudeta ettevõtte tegutsemisele.

Viited

Lisa lugemislingid :

https://en.wikipedia.org/wiki/Replication_(computing)

https://docs.oracle.com/cd/A64702_01/doc/server.805/a58227/ch_repli.htm