Мәліметтер қоры серверлерінде репликацияны ұйымдастыру әдістері

73

Мәліметтер қоры серверлерінде репликацияны ұйымдастыру әдістері

 

 

Қазіргі таңда барлық мәліметтер қорын басқару жүйелері негізгі бейнесі ретінде «клиент-сервер» архитектурасын қолданады. Қолданушылар біртұтас мәліметтер қорымен жұмыс істейді. Мәліметтер қорын қолдануға мүмкіндік беру мәліметтер қорын басқарру жүйелерінің өздерімен жүзеге асады. Берілген әдістің негізгі сипаттамасы- мәліметтер қоры жеке көшірме түрінде қаттысады. Өкінішке орай, мәліметтер қорына тікелей қатынасты қолдану қиындық тудырады. Оған бірнеше себеп бар. Айтар болсақ, мәліметтер қорын қолданушылар географиялық жағынан бір- бірінен алыстатылып және олардың арасында желілік байланыс жоқ болса немесе мәліметтер қоры көп көлемді қамтитын болса, қолданушылар саны тым көп болса, мәліметтер қорына қатынау қиынға соғады. Сондықтан мәліметтер қорын бірнеше бөлікке бөлу маңызды болады.

Бұл жағдайда мәліметтер қоры бір жерде бола алмайды, қайта бірнеше территориялық алыстатылған станцияларға бөлінеді. Онда әрбір қолданушы жергілікті мәліметтер қорын басқару жүйесі серверімен байланысады, ал мәліметтер эқарапайым жағдайда репликация деп аталатын сәйкестендіру механизмін қолданатын мәліметтер қоры серверлеріне беріледі. Жүйе реттелген мәліметер қорының түйіндерін қосады. Мәліметтер корының тұтастығын қамтамассыз ететін және берілген критерийлерді қанағаттандыратын құрамы мен деңгейі жағынан екі не одан да көп мәліметтер қорының келтірілу процесі. Осы реляциялық  мәліметтер қорын басқару жүйесінің мәліметтері уақыт периодында анықталатын ақпараттармен сипатталады.

Репликацияның жүргізілуінің көптеген күрделі қиындықтары бар. Қаншалықты ұқсас қиындықтар туса да, бұл есептің универсалды шешілуі берілген жағдайда мүмкін емес. Түгелге жуық репликаторлар құрылымына, жинақталу әдісіне, мәліметтер қорындағы кесте мәліметтерінің өзгеруіне елеулі шектеулер қояды. Әрбір мәліметтер қорын басқару жүйесінде мәліметтер репликациясы есебінің шешімі ұсынылады. Бұл реттелген мәліметтер қорын өңдеуде көптүрлі мақсаттардың қолданылуымен байланысты.

Мәліметтер қорының көшіру операциясының ретімен орындалуы ең алдымен үзілістен кейінгі мәліметтерді қайта орнату мүмкіндігін қамтамассыз ету үшін арналған. InterBase  мәліметтер қорын  физикалық тұрғыдан қорды көшіру кезінде қиындық болмайтын мүмкіндігі бар файл ретінде қарастырайық. Сыртқы бағдарламаларды көшіруді жүргізу алдында барлық қолданушылар қордан ажыратылған болуы міндетті.

Қарапайым көшіру оның сенімділігіне және жылдамдығына қарамастан негізгі әдіс ретінде ұсынылмайды. Мәліметтер қорын қолдану арқылы көшіру операциясын жуық түрде орындауды қаррастырайық. Бұл жағдайда көшіру операциясымен бір уақытта мәліметтер қорынның сервистік қызмет етуі орындалады.

InterBase- тің қордағы көшірмесін қолдану және gbak утилитімен немесе сервер диспечерімен қайта орнату  ерекшеліктері көптеген артықшылықтарды  береді. Қордағы көшірмені алу кезінде және өзіндік көшірмесін қайта орнату кезінде қосымша әрекеттер тобы орындалады. Айтатын болсақ,

  • « Қалдықты» жинау орындалады және шегініспен аяқталған транзакция кестесін тазарту жүргізіледі.
  • Индекстер теңгеріледі.
  • Өшірілген жазбалар орналасқан кеңістік босатылып, қалған мәліметтер жинақталады. Мәліметтер қорының өлшемін азайтады және мәліметтермен жұмыс істеуді күшейттеді

Қордағы көшірмені  алу функциясының  орындалуы жеке күйді талап етпейді. Көшіру орындалуы  кезінде қолданушылар жұмысты жалғастыра алады. Көшіру басталғаннан кейін  көшірменің дәл өзіне сәйкес келмейді, бірақ мәліметтер көшірмесінің  сәйкtс келуі кепілдендіріледі.

Алынған архивтік көшірме кез- келген құрылғыда сақтала алады. Архивтік  көшірмемен бар болған қорды қайта құруға немесе жаңа қор құруға болады. Көшіру, қайта орнату кезінде қордың қасиеттерін өзгерту бойынша әрекеттер тобын  орындау қажет.

Осының арқасында мәліметтер басқа  операциялық жүйеге беріле алады және де әртүрлі платформалар InterBase файлдарының аппаратты- тәуелді фарматтарына ие және сол себепті де мәліметтер қоры басқа платформаға ауысу  үшін жай ғана көшіріле салмайды. Қордың ауыспалы көшірмесін алу әсіресе, гетерогенді ортада қажет. InterBase жаңа версиясы қор көшірмесін ескі версиясына ауыстыру үшін жарамды деп айтуға болмайды.

InterBase жаңа версисясы мәліметтердің физикалық құрылымы бойынша айырмашылыққа ие болады. Бар қорды жаңа құрылымда жаңарту  үшін мына әрекеттер орындалуы керек:

  1. InterBase жаңа версиясын қондырар алдында утилит көшірудің ескі версиясын қолданушы мәліметтер қорын  көшіріп алу керек.
  2. InterBase серверінің жаңа версиясын орнату.
  3. Жаңа версия қонғанннан кейін , InterBase жаңа версиясынан бастап мәліметтер қорын қайта орнату керек. Қайта қондырылған мәліметтер қоры енді InterBase серверінің жаңа мүмкіндіктерін қолдануға дайын.

Сақталған ақпараттты басқа серверлерге репликациялайтын сервер баспаға шығарушы (publisher) деп аталады. Репликацияланатын ақпарат бірнеше публикациялардан, әрбір публикация логикалық келісімдік жеке мәліметтер қорының ақпараттар жиынынан  және бір немесе бірнеше статьялардан (articles) тұрады. Ал статья келесі типті бір немесе бірнеше обьектілерден тұрады:

  • Бөлік не бүтін кесте (бағана немесе жол бойынша сүзгі);
  • Сақталымды процедура және көріністің айқындалуы ;
  • Сақталымды процедураның орындалуы;
  • Көрініс;
  • Индектелген көрініс
  • Қолданушылық функция;

Репликация процесінде әрбір баспагер таратушымен бірлесе әрекет

жасайды (distributor). Соңғысы баспааға шығарылатын мәліметтер қорын , оқиға тарихын және метамәліметтерді сақтайды. Таратушының ролі репликация типінен тәуелді. Осы жағдайда таратушы локальды (SQL Server дәл сол көшірмесі) немесе өшірілген (SQL Server жеке көшірмесі) болуы мүмкін.

Репликацияланушы ақпаратты алған серверлер тіркелуші деп аталады. Олар таңдалған публикацияларды- қолтаңба (subscriptions)- бір немесе бірнеше баспагерлерді алады. Реплкация типінен тәуелді репликацияланатын ақпаратты тіркелушілерге өзгертуге, сонымен қатар, өзгертілген ақпаратты қайтадан баспагерге репликациялауға рұқсат беріледі. Тіркелушілер авторланған немесе анонимді болуы мүмкін. Анонимді серверлерді қолданушы көп публикациялар үшін жүйенің құрушылығын жоғарылатады.

Репликацияның жүргізілуі үшін бірнеше сәйкестендіру әдісі қолданылады. Олардың әрқайсысның өзінің артықшылығы мен кемшілігі және қолданылу облысы бар. Қазіргі уақытта репликацияланатын мәліметтер қорында сәйкестендіру әдісінің келесідей түрлері кең қолданыста : транзакция журналы бойынша, кестенің ағымдағы жағдайы бойынша және тәуелсіз кестелер жиынын қолданумен. Осы әдістерге толығырақ тоқталсақ.

Транзакция журналы бойынша сәйкестендіру. Бұл әдіс жиірек қолданылады. Операция нәтижесі арнайы ұйымдастырылған журналдың бірінде сақталады. Транзакцияның жүргізілуі кезінде журналға орындалатын операциялар туралы ақпараттар- келесі кезеңдерде мәліметтер қоры қайта орнатылатындай және операцияның орындалуы қайталанатындай болып орналасады. Көбіне журналдың толтырылуы репликацияға қатысатын кестелермен байланысқан триггерлермен жүогізіледі. Кесте жазбаларының қосылуы немесе жаңартылуы кезінде журналда кестенің өзгерістерінің мәні сақталады, ал жазбалар өшірілген кезде өшірілген жазбалар өрісіні идентификаторлары сақталады. Сонымен қатар, журналда өзгеріс жүргізілген уақыт белгісі, өзгеріс жасаған қолданушы идентификаторлары сақталады. Кейде бұған өзгеріс жасалған мәліметтер қоры серверінің де идентификаторлары зқосылады.

Әдістің артықшылығы- тікелей қосылуды орнатудың қажеттілігі жоқ, кез- келген уақытта мәліметтер қорының қайта орындалу мүмкіндігі, салыстырмалы қарапайымдылықтың жүргізілуі, сәйкестендірудің жоғары жылдамдығы.

Әдіс кемшілігі- сақталатын мәліметтердің көлемінің көптігі, қарсылықтың көптігі.

Ағымдағы жағдай бойынша сәйкестендіру. Бұл әдіс үнемі байланыстардың қондырылған жағдайында орындалады. Сондықтан бұл әдісті серверлер арасыындағы қандайда бір каналдың айырмашылығынсыз қолдануға болмайды. Сәйкестендіруді орындайтын процесс мәліметтер қорының екеуімен де байланыс орнатады және барлық сәйкестендірілетін кестелер кеөшіріледі. Басқарушы процесс екі мәліметтер қорын бірдей түрге келтіре отырып, «теңестіреді». Осы жағдайда репликация бағдарламасында мынадай шешімді қабылдауға тура келеді, яғни мәліметтер қорының қайсысының ақпараттары дұрыс.

Бұл әдістің мынадай кемшіліктері бар- сәйкестендіру жылддамдығы мәліметтер қоры кестесіндегі жазба санына пропорционалды, яғни сәйкестендіру жылдамдығының төмендігі, басқарушы процестің мәліметтер қорының екеуімен де байланысты қамтамассыз етудің қажеттілігі.

Әдіс артықшылығы- қарсылықтарды жоюда көптеген мүмкіндіктнрі бар.

Кестелер жиынының  тәуелсіз сәйкестендірілуі. Мысалы, А,В,С мәліметтер қоры берілген болып, өзгеріс тек А мәліметтер қорында жүргізілген болсын. Егер мәліметтер қорында тәуелсіз кестелер жиыны бар болса, онда мұндай жиында тек А мәліметтер қорының мәліметтері өзгере алады, ал басқа жағдайда В мәліметтер қоры өзгереді. Мұндай құрылым бірнеше кестелер жиынымен жүргізілген бірбағыттағы сәйкестендіру жүйесі деп есептеледі. Мұндай құрылымда қарсылық жағдайы жоқ және де оны практикалық түрде ешбір айрықша кедергісіз кез- келген әдіспен жүргізуге болады.

Репликацины cонымен қатар, әр түрлі классификацияға жіктеуге болады:

  1. Репликация бағыты бойынша.

Егер мәліметтер қорының бірінің ғана ақпараты өзгеретін болса, ал екіншісінде сақталатын болса және өзгеріске ұшырауға жақын болмаса, онда мүндай репликацияны біржақты немесе бірбағытталған деп атаймыз. Егер, барлық мәліметтер қорының мәліметтері өзгертілетін және енгізілетін болса, мұндай репликация мультибағытталған немесе көпжолды деп аталады.

  1. Репликация сеансының өту уақыты бойынша.

Егер мәліметтер енгізілгеннен кейін тез арада сәйкестендірілсе, онда мұндай репликацияны нақты уақыт репликациясы деп атаймыз. Егер де репликация процесі қандай да бір уақыт жағдайына немесе мәліметтер қоры  администраторының әсерінен жіберілетін, онда бұндай репликация кейінге қалдырылған репликация деп аталады.

  1. Репликация процесі кезіндегі ақпараттың берілу тәсілдері бойынша.

Егер үлестірілген мәліметтер қоры сақтаушы серверлер байланысы және бір жағынан өз серверімен коннектіленетін, ал басқа жағынан мәліметтер қоры тікелей байланысты екі жақтың да репликацияланған мәліметтерінің тікелей өзгерісіне арналған басқа сервердің мәліметтеріне тікелей қосылуы мүмкін болатын клиент бағдарламасының көмегі арқылы жүретін болса, онда бұндай сәйкестікті тікелей деп атайды.

  1. Репликацияланған ақпараттың анализ әдісі бойынша.

Егер алгоритм ядросы бір кестенің жазбасын басқа жазбамен салыстыру принципі бойынша жұмыс жасайтын болса және негізде сәйкестік шешімі қабылданса, онда бұл просесті ағымды жағдай бойынша репликация деп атайды.

 

Әдебиеттер

 

  1. Дейт К. Введение в системы баз данных, 6-ое издание М:- издательский дом «Вильям», 1999
  2. Кандзюба С.П., Громов В.И. Delphi6 баз данных и приложения. Лекции и упражнения,- К: ДиаСофт, 2001