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

Бастапқы сервердегі күту түрінен бастаңыз

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

Байланыс туралы қандай да бір қорытынды жасамас бұрын жұмыс жүктемесін растау жиілігі бойынша сұрыптаңыз.

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

Растауды қосалқыға дейін бақылаңыз

Синхронды растау кезінде бастапқы сервер растауды аяқталды деп жарияламас бұрын тиісті журналдың қосалқыда қатайтылғаны туралы растауды күтеді. Қатайтылған – журналда тұрақты, деректер беттерінде қайта орындалған емес. Дәл осы айырмашылық синхронды қосалқының redo-да артта қалып, сонымен бірге қатайтуды растай алатынын түсіндіреді.

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

SELECT ag.name AS ag_name, drs.database_id, drs.synchronization_state_desc,
       drs.log_send_queue_size, drs.redo_queue_size
FROM sys.dm_hadr_database_replica_states AS drs
JOIN sys.availability_groups AS ag ON ag.group_id = drs.group_id;

Бұл суретті тыныш түстен кейін бір рет емес, өкілді жазбаның алдында және кейін түсіріңіз. Айырмашылық растау күтіп тұрғанда қай кезектің жылжығанын айтады.

Байланысты емес, жолды өлшеңіз

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

Өлшеу кезінде дерекқор көлігінің қауіпсіздігін және кіруді бақылауды бұзбай сақтаңыз. Жолды өлшеу оларды айналып өтуге ешқашан себеп емес.

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

Асинхронды режим шын мәнінде нені өзгертеді

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

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

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

Қатысты мақалалар