|
Nuo "SQL Server 2005" "Microsoft" pateikė įvairias didelio prieinamumo technologijas, kad sumažintų prastovas ir padidintų verslo duomenų apsaugą, o nuolat išleidžiant "SQL Server 2008", "SQL Server 2008 R2" ir "SQL Server 2012", "SQL Server" yra daug didelio prieinamumo technologijų, atitinkančių skirtingus scenarijus. Prieš pradėdamas šį straipsnį, pradėsiu nuo trumpos apžvalgos, kas lemia, kokią aukšto prieinamumo technologiją naudoti.
Kuo ji remiasi nusprendžiant, kokią aukšto prieinamumo technologiją naudoti? Daugeliui įmonių reikia, kad visi arba dalis jų duomenų būtų gerai prieinami, pvz., internetinės prekybos svetainės, internetinės produktų duomenų bazės turi būti internete 24 valandas per parą, 7 dienas per savaitę, priešingu atveju labai konkurencingoje rinkos aplinkoje prastovos reiškia prarastus klientus ir pajamas. Pavyzdžiui, skambučių centre, kuris priklauso nuo SQL serverio, jei duomenų bazė sugenda, visi skambinantieji gali tik sėdėti ir atsakyti klientui "Atsiprašome, sistemos gedimas", o tai taip pat nepriimtina. Žinoma, idealiame pasaulyje visi svarbūs duomenys visada bus internete, tačiau realiame pasaulyje bus įvairių priežasčių, dėl kurių duomenų bazė nebus pasiekiama, nes neįmanoma numatyti nelaimės laiko ir formos, būtina iš anksto imtis priemonių, kad būtų išvengta įvairių ekstremalių situacijų, todėl SQL Server teikia įvairias didelio prieinamumo technologijas, šios technologijos daugiausia apima: klasterizavimą, replikavimą, atspindėjimą, žurnalų pristatymą, "AlwaysOn" prieinamumo grupes ir kitas, tokias kaip failų grupės atsarginė kopija ir atkūrimas, Vieno egzemplioriaus didelio prieinamumo technologijos, pvz., internetiniai atkūrimo indeksai. Aukšto prieinamumo technologijos naudojimas nėra pasirinkti pažįstamą technologiją tiesioginiam naudojimui, bet visapusiškai apsvarstyti verslą ir technologijas. Nes nėra vienos technologijos, galinčios atlikti visas funkcijas. Kaip pritaikyti šias technologijas atsižvelgiant į jūsų konkretų verslą ir biudžetą, yra vadinama didelio prieinamumo strategija. Kurdami didelio prieinamumo strategiją, pirmiausia turėtumėte atsižvelgti į šiuos veiksnius: - RTO (atkūrimo laiko tikslas) - tai yra atkūrimo laiko tikslas, reiškia, kiek prastovos leidžiama, paprastai išreiškiama keliais 9, pavyzdžiui, 99,999% prieinamumas reiškia ne daugiau kaip 5 minutes prastovos per metus, 99,99% prieinamumas reiškia ne daugiau kaip 52,5 minutės prastovos per metus, o 99,9% prieinamumas reiškia ne daugiau kaip 8,75 valandos prastovos per metus. Verta paminėti, kad RTO skaičiavimo metodas atsižvelgia į tai, ar sistema yra 24*365, ar tik nuo 6 iki 21 val. ir pan. Taip pat reikia atkreipti dėmesį į tai, ar priežiūros langas skaičiuojamas kaip prastova, ir lengviau pasiekti didesnį pasiekiamumą, jei duomenų bazės priežiūra ir pataisymas leidžiami priežiūros laikotarpiu.
- RPO (atkūrimo taško tikslas) – taip pat žinomas kaip atkūrimo taško tikslas, reiškia, kiek duomenų praradimas leidžiamas. Paprastai, jei sukuriate gerą atsarginę kopiją, galite lengvai pasiekti nulinį duomenų praradimą. Tačiau įvykus nelaimei, atsižvelgiant į duomenų bazės sugadinimo mastą, laikas, kurio reikia duomenims atkurti iš atsarginės kopijos, sukels duomenų bazės nepasiekiamumą, o tai turės įtakos RTO įgyvendinimui. Ankstyvas ir garsesnis pavyzdys yra bankų sistema Europoje ir JAV, tik atsižvelgiant į RPO, sistemoje yra tik visos atsarginės kopijos ir žurnalo atsarginės kopijos, visos atsarginės kopijos kas 3 mėnesius, žurnalo atsarginės kopijos kas 15 minučių, kai įvyksta nelaimė, tik per pilnas atsargines kopijas ir žurnalo atsargines kopijas galima atkurti duomenis, taigi, nors duomenų praradimo nėra, bet dėl to, kad duomenims atkurti prireikė dviejų dienų, banko sistema buvo nepasiekiama 2 dienas, todėl buvo prarasta daug klientų. Kitas priešingas pavyzdys yra vietinė internetinė vaizdo įrašų svetainė, kurioje SQL serveris naudojamas kaip back-end reliacinė duomenų bazė, front-end naudoja No-SQL ir reguliariai importuoja No-SQL duomenis į reliacinę duomenų bazę kaip atsarginę kopiją.
Biudžetas – RTO ir RPO bendrai žinomi kaip SLA (paslaugų lygio susitarimai), o kurdami didelio pasiekiamumo strategiją turite įvertinti, kaip gerai atitinkate SLA pagal savo verslą, atsižvelgiant į biudžetą ir skirtingų SLA kainą gedimo atveju. Paprastai tariant, sunku pasiekti aukštus SLA su ribotu biudžetu, ir net jei aukštos SLA pasiekiamos naudojant sudėtingas architektūras, sudėtingos architektūros taip pat reiškia dideles eksploatavimo ir priežiūros išlaidas, todėl būtina pasirinkti tinkamą technologiją pagal biudžetą, kad atitiktų SLA. Todėl apskritai didelę didelio prieinamumo sistemą galima nustatyti keliais užsakymų priėmimo klausimais: - Kokią prastovą akcininkai nori priimti?
- Kokios prastovos yra priimtinos vadovams?
- Koks biudžetas numatytas didelio prieinamumo scenarijui?
- Kiek nuostolių per valandą dėl prastovos?
Šalta, šilta ir karšta Priklausomai nuo duomenų sinchronizavimo tarp pagrindinio kompiuterio ir budėjimo režimo laipsnio, atsargines kopijas galima suskirstyti į tris situacijas: šaltą, šiltą ir karštą.- Šalta atsarginė kopija: budėjimo režimo serveris sukonfigūruotas priimti pirminio serverio duomenis, o kai nepavyksta, rankiniu būdu atkurti duomenis į pirminę duomenų bazę arba iš naujo sukonfigūruoti ryšio eilutę ar programos leidimus, kad atsarginė duomenų bazė būtų prijungta prie interneto.
- Šilta atsarginė kopija: Pirminiai serverio duomenys nuolat perduos žurnalus į atsarginį serverį (nereguliariais intervalais tai gali būti 15 minučių, 30 minučių, 1 minutė ir kt.), Tokiu būdu pirminis serveris į atsarginį serverį paprastai atnaujinamas asinchroniškai, todėl pirminio serverio ir atsarginio serverio duomenys negali būti garantuoti. Be to, ši schema paprastai neįgyvendina automatinio gedimų stebėjimo ir perjungimo.
- Karšta atsarginė kopija: Pirminio serverio duomenys automatiškai sinchronizuojami atsarginiame serveryje, daugeliu atvejų įtraukiamas automatinis gedimų stebėjimas ir perjungimas, taip pat galima garantuoti pirminio serverio ir atsarginio serverio duomenų nuoseklumą.
Nuo šalto iki šilto ir karšto atsarginių kopijų, išlaidos šokteli į viršų.
SQL serveryje palaikomos didelio prieinamumo funkcijos "SQL Server" palaikomos didelio pasiekiamumo funkcijos yra glaudžiai susijusios su versija, o "Enterprise" leidimas palaiko visas didelio pasiekiamumo funkcijas, įskaitant: - Perjungimo klasteris
- l Duomenų bazės vaizdas
- l Operacijų žurnalo perdavimas
- l Duomenų bazės momentinės nuotraukos
- l Aukšto prieinamumo atnaujinimai
- l Karštos apkrovos atmintis
- l Indeksavimo operacijos internetu
- l Duomenų bazė dalinai prisijungusi (atkuriama tik pagrindinė failų grupė arba pagrindinė failų grupė ir papildomi NDF failai)
Konkrečių versijų, kurių didelio pasiekiamumo funkcijos, žr.:http://msdn.microsoft.com/zh-cn/library/cc645993.aspxVerta paminėti, kad nemokama "Express" versija gali būti duomenų bazės atspindėjimo liudytojų serveris, todėl sutaupoma išlaidų. Perjungimo klasteris Perjungimo klasteriai palaiko aukštą pasiekiamumą visam SQL serverio egzemplioriui, o tai reiškia, kad SQL serverio egzempliorius klasterio mazge dėl aparatinės įrangos klaidų, operacinės sistemos klaidų ir kt. Aukštą prieinamumą pasiekia keli serveriai (mazgai), kurie dalijasi vienu ar keliais diskais, o perjungimo klasteriai tinkle pasirodo taip pat, kaip ir vienas kompiuteris, tačiau pasižymi aukštomis prieinamumo charakteristikomis. Svarbu pažymėti, kad kadangi perjungimo klasteriai yra pagrįsti bendrai naudojamais diskais, yra vienas disko gedimo taškas, todėl disko lygiu reikia įdiegti papildomas apsaugas, tokias kaip SAN replikacija. Dažniausias perjungimo klasteris yra dviejų mazgų perjungimo klasteris, įskaitant pagrindinį ir pavaldų.
Operacijų žurnalo perdavimas Operacijų žurnalo siuntimas užtikrina duomenų bazės lygio aukšto prieinamumo apsaugą. Registravimas naudojamas palaikyti vieną ar daugiau atitinkamos gamybos duomenų bazės (vadinamos "antrinėmis duomenų bazėmis") budėjimo režimo duomenų bazių (vadinamų "antrinėmis duomenų bazėmis"). Prieš įvykstant perkėlimui, antrinė duomenų bazė turi būti visiškai atnaujinta rankiniu būdu pritaikant visas neatkurtas žurnalo atsargines kopijas. Žurnalų pristatymas gali lanksčiai palaikyti kelias budėjimo režimo duomenų bazes. Jei reikalingos kelios alternatyvios duomenų bazės, žurnalo pristatymas gali būti naudojamas atskirai arba kaip duomenų bazės atspindėjimo papildymas. Kai šie sprendimai naudojami kartu, pagrindinė dabartinės duomenų bazės atspindėjimo konfigūracijos duomenų bazė taip pat yra pagrindinė dabartinės žurnalo siuntimo konfigūracijos duomenų bazė. Operacijų žurnalo pristatymas gali būti naudojamas šaltoms ir šiltoms atsarginėms kopijoms kurti.
Duomenų bazės atspindys Duomenų bazės atspindėjimas iš tikrųjų yra programinės įrangos sprendimas, kuris taip pat užtikrina duomenų bazės lygio apsaugą, užtikrinantį beveik momentinį perjungimą, siekiant pagerinti duomenų bazės prieinamumą. Duomenų bazės veidrodis gali būti naudojamas vienai budėjimo režimo duomenų bazei (arba "veidrodinei duomenų bazei") atitinkamos gamybos duomenų bazės (vadinamos "pagrindine duomenų baze") tvarkyti. Kadangi veidrodinė duomenų bazė visada yra atkūrimo būsenoje, bet duomenų bazė neatkuriama, veidrodinės duomenų bazės negalima pasiekti tiesiogiai. Tačiau tik skaitymo įkėlimams, pvz., ataskaitoms, galite naudoti veidrodinę duomenų bazę netiesiogiai, sukurdami veidrodinės duomenų bazės momentinę kopiją. Duomenų bazės momentinės kopijos suteikia klientams tik skaitymo prieigą prie duomenų bazės duomenų, kai sukuriama momentinė kopija. Kiekviena duomenų bazės atspindėjimo konfigūracija apima "pagrindinį serverį", kuriame yra pagrindinė duomenų bazė, taip pat veidrodinį serverį, kuriame yra veidrodinė duomenų bazė. Veidrodinis serveris nuolat atnaujina veidrodinę duomenų bazę su pagrindine duomenų baze. Duomenų bazės atspindėjimas veikia sinchroniškai didelio saugumo režimu arba asinchroniniu veikimu didelio našumo režimu. Didelio našumo režimu operacijoms nereikia laukti, kol veidrodinis serveris įrašys žurnalus į diską, kad juos būtų galima pateikti, o tai padidina našumą. Aukšto saugumo režimu įsipareigojimus vykdo abu partneriai, tačiau operacijos vėlavimo laikas pailgėja. Paprasčiausia duomenų bazės atspindėjimo konfigūracija apima tik pagrindinį serverį ir veidrodinį serverį. Šioje konfigūracijoje, praradus pagrindinį serverį, veidrodinis serveris gali būti naudojamas kaip budėjimo serveris, tačiau tai gali sukelti duomenų praradimą. Aukšto saugumo režimas palaiko budėjimo konfigūraciją, aukšto saugumo režimą su automatiniu perjungimu. Ši konfigūracija apima trečiosios šalies serverio egzempliorių, vadinamą "liudytojų serveriu", kuris leidžia veidrodinį serverį naudoti kaip karštą atsarginį serverį. Perėjimas iš pirminės duomenų bazės į veidrodinę duomenų bazę paprastai trunka kelias sekundes. Duomenų bazės atspindėjimas gali būti naudojamas tiek šiltoms, tiek karštoms atsarginėms kopijoms.
kopija Replikacija nėra griežtai funkcija, skirta dideliam prieinamumui, tačiau ją galima pritaikyti dideliam pasiekiamumui. Replikacija suteikia duomenų bazės objekto lygio apsaugą. Replikacijai naudojamas publikavimo-prenumeratos modelis, kai duomenis skelbia pirminis serveris, žinomas kaip leidėjas, vienam ar keliems antriniams arba prenumeratoriams. Replikacija užtikrina pasiekiamumą realiuoju laiku ir mastelio keitimą tarp šių serverių. Jis palaiko filtravimą, kad prenumeratoriams pateiktų duomenų poaibį, taip pat palaiko skaidinių atnaujinimus. Abonentas yra prisijungęs ir gali teikti ataskaitas ar kitas funkcijas be užklausos atkūrimo. SQL serveris siūlo keturis replikacijos tipus: momentinės kopijos replikaciją, operacijų replikaciją, lygiavertę replikaciją ir sujungimo replikaciją.
Visada įjungtaTinkamumo naudoti grupė "AlwaysOn" pasiekiamumo grupės yra nauja "SQL Server 2012" funkcija. Taip pat suteikiama duomenų bazės lygio apsauga. Tai taip pat išplečia ribą, kad duomenų bazės atspindėjimas gali būti tik 1:1, kad viena pirminė replika galėtų atitikti iki 4 antrinių replikų (SQL Server 2014 ši riba išplėsta iki 8), iš kurių 2 antrinės replikos gali būti sinchronizuojamos kaip karštos atsarginės kopijos ir pirminės replikos realiuoju laiku, o kitos dvi asinchroninės antrinės replikos gali būti naudojamos kaip šiltos atsarginės kopijos. Be to, antrinės replikos gali būti sukonfigūruotos kaip tik skaitomos ir gali būti naudojamos atsarginėms kopijoms įkelti. Dėl šios priežasties duomenų bazės atspindėjimas "SQL Server 2012" pažymėtas kaip "pasenęs".
Didelio prieinamumo strategijos kūrimas Supratę pagrindines didelio pasiekiamumo sąvokas ir didelio prieinamumo technologijas, pateiktas SQL serveryje, pažvelkime į didelio pasiekiamumo strategijos kūrimą. Didelio prieinamumo strategijos planavimą galima suskirstyti į keturis etapus: Surinkite reikalavimus Pirmasis žingsnis priimant sprendimą dėl didelio prieinamumo strategijos neabejotinai yra surinkti verslo reikalavimus SLA nustatyti. RTO ir RPO yra svarbiausios dalys, todėl jais remdamiesi nustatomi realistiški prieinamumo reikalavimų lūkesčiai ir šiais lūkesčiais pagrįsta realistiška didelio prieinamumo strategija. Vertinimo ribos Vertinimo ribos apsiriboja ne tik skirtingų didelio prieinamumo technologijų apribojimais SQL serveryje, bet ir netechninėmis. Jei turite tik dešimčių tūkstančių juanių biudžetą, bet norite sukurti didelio prieinamumo sprendimą, pagrįstą ne vietoje esančiais duomenų centrais ir SAN replikacija, tai neabejotinai kvailio svajonė. Kitas netechninis apribojimas yra operacijų personalo lygis, o dažnai sudėtinga architektūra reiškia labiau kvalifikuotą operacijų personalą. Kiti netechniniai apribojimai apima vietos diske prieinamumą duomenų centre, ar maitinimo šaltinis ir oro kondicionavimas gali patenkinti poreikius ir laiką, reikalingą prieinamumo strategijai įgyvendinti. Techniniai apribojimai apima įvairias didelio pasiekiamumo funkcijas ir apribojimus, skirtingų SQL Server versijų palaikomas funkcijas, procesorių skaičių ir atminties dydį. Prieš diegiant didelio pasiekiamumo strategiją, primygtinai rekomenduojama pirmiausia peržiūrėti skirtingų SQL serverio versijų ir funkcijų apribojimus Microsoft MSDN svetainėje. Pasirinkite technologiją Surinkus reikalavimus ir įvertinus apribojimus, kitas žingsnis yra pasirinkti anksčiau šiame straipsnyje aprašytas technologijas arba technologijų derinį, kad atitiktų SLA reikalavimus. Jei pasirinkta technologija neatitinka SLA, lengva pranešti, kokie apribojimai neatitinka SLA, todėl galite prašyti trūkstamų išteklių arba kompromiso dėl SLA. Testavimas, tikrinimas ir dokumentavimas Aukšto pasiekiamumo strategijos turi būti kruopščiai išbandytos ir patvirtintos nuo pat pradžių, siekiant užtikrinti, kad dabartinė pasiekiamumo politika atitiktų SLA. Tačiau pradėjus taikyti aukšto pasiekiamumo strategiją, taip pat būtina ją reguliariai išbandyti ir patvirtinti, kad dabartinė politika vis tiek atitiktų SLA, nepaisant duomenų augimo, verslo ar reikalavimų pokyčių. Tuo pačiu metu prieinamumo sprendimo konfigūracija, perjungimo metodas ir atkūrimo planas turėtų būti dokumentuojami tuo pačiu metu, kad juos būtų galima atsekti gedimo ar būsimo didelio prieinamumo strategijos koregavimo atveju.
SantraukaŠiame straipsnyje paaiškinamos pagrindinės didelio pasiekiamumo sąvokos, SLA sąvoka, įvairios SQL serveryje palaikomos didelio pasiekiamumo funkcijos ir veiksmai, kurių reikia norint sukurti didelio pasiekiamumo strategiją. Verta paminėti, kad nors šiame straipsnyje kalbama tik apie aukštą prieinamumą duomenų bazės lygiu, didelis prieinamumas yra ne tik DBA reikalas, bet ir apima įvairių vaidmenų, tokių kaip sistemos eksploatavimo ir priežiūros personalas, tinklo administratoriai, kūrėjai ir vadovai, bendradarbiavimą, kad geriau atitiktų SLA.
|