Data replication: Difference between revisions

From ICO wiki
Jump to navigationJump to search
Kkallas (talk | contribs)
Edmund (talk | contribs)
mNo edit summary
 
(25 intermediate revisions by 2 users not shown)
Line 1: Line 1:
=== Autor ===
=== Autor ===
Kalmer Kallas AK41
Liis Vaupere AK21
03.01.2016


=== Sissejuhatus ===
=== Sissejuhatus ===
''Data replication'' on mitmes erinevas andmebaasis olevate samade andmete kopeerimise protsess (''replication - kopeerimine, kordamine''). ''Data replication'' tagab andmetele parema ligipääsu kuna andmete lugemiseks on mitu võimalust. Näiteks andmete kiiremaks kättesaamiseks ja võrguliikluse minimiseerimiseks suhtleb kasutatav programm kohaliku serveriga, selle asemel, et pärida andmeid mõnes teises linnas asuvast serverist. Andmetele parem ligipääs seisneb vastupidises - kui kohalikule serverile peaks erinevatel põhjustel puuduma ligipääs siis töö ei pea jääma seisma vaid vajalikud andmed saab kätte teises asukohas olevast serverist.




=== Basic (read-only) replication ===
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.
Kohalikel andmebaaside koopiatel (''data replicas'') on ainult andmete lugemise õigus, andmed ise pärinevad primaarsest andmebaasist. Rakendused saavad teha päringuid kohalikest andmebaasi koopiatest sõltumata (välise) võrguühenduse olemasolust. Siiski peavad rakendused saama uuendada andmeid otse primaarses andmebaasis kui selleks on vajadus.


[https://docs.oracle.com/cd/A58617_01/server.804/a58227/ch_repla.gif]
<b>Andmete replikatsioon</b> 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.<ref>[https://www-01.ibm.com/software/data/replication/ #https://www-01.ibm.com/software/data/replication/]</ref><ref>[http://www.oracle.com/technetwork/articles/systems-hardware-architecture/o11-080-art-data-replication-487868.pdf #http://www.oracle.com/technetwork/articles/systems-hardware-architecture/o11-080-art-data-replication-487868.pdf]</ref>  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. <ref>[http://www.oracle.com/technetwork/articles/systems-hardware-architecture/o11-080-art-data-replication-487868.pdf #http://www.oracle.com/technetwork/articles/systems-hardware-architecture/o11-080-art-data-replication-487868.pdf]</ref> 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.


=== Advanced (symmetric) replication ===
=== Andmebaasi replikatsioon ===
''Advanced replication'' peamine erinevus ainult lugemisõigustes olevast andmebaasikoopiast ongi see, et rakendused saavad ka andmeid uuendada (primaarset andmebaasi, kui sellist, pole) lisaks lugemisele.


[https://docs.oracle.com/cd/A58617_01/server.804/a58227/ch_repa1.gif]
<b>Andmebaasi replikatsiooni</b> 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<ref>[http://searchsqlserver.techtarget.com/definition/database-replication #http://searchsqlserver.techtarget.com/definition/database-replication]</ref>:
 
• <u>Pildistav (snapshot) replikatsioon</u> – andmed kopeeritakse lihtsalt ühest serverist teise (või siis teise andmebaasi samal serveril)
 
• <u>Ühendatav (merging) replikatsioon</u> – andmed koondatakse kahest või enamast serverist kokku ühte serverisse.
 
• <u>Trasaktsiooniline (transactional) replikatsioon</u> – 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.
 
<b>Sünkroonne replikatsioon</b> 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.<ref>[http://searchdisasterrecovery.techtarget.com/definition/synchronous-replication #http://searchdisasterrecovery.techtarget.com/definition/synchronous-replication]</ref> 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.
 
<b>Asünkroonne replikatsioon</b> 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. <ref>[http://searchdatabackup.techtarget.com/definition/asynchronous-replication #http://searchdatabackup.techtarget.com/definition/asynchronous-replication]</ref>


=== Kokkuvõte ===
=== Kokkuvõte ===
Siin esitatud näited ning mõisted on Oracle lahendused. Need pole ainsaid, võimalikke lahendusi andmebaaside kopeerimiseks on mitmeid. Loodan, et kirjeldatud näited annavad ligikaudse pildi andmebaaside replikeerimisest.
 
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 ===
 
<references/>
 
Lisa lugemislingid :
 
https://en.wikipedia.org/wiki/Replication_(computing)
 
https://docs.oracle.com/cd/A64702_01/doc/server.805/a58227/ch_repli.htm
 
[[Category:Andmesalvestustehnoloogiad]]

Latest revision as of 02:08, 27 October 2016

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