PostgreSQL жаңартуы. Қайта пішінді шығару, жұмысты тоқтатпай жаңа схемаға көшуге арналған утилита

Түзеткіш жаңартулар PostgreSQL барлық қолдау көрсетілетін тармақтары үшін жасалды: 14.2, 13.6, 12.10, 11.15 және 10.20, олар соңғы үш айда анықталған 55 қатені түзетеді. Басқа нәрселермен қатар, бізде сирек жағдайларда VACUUM операциясы кезінде HOT (тек үйме кортеж) тізбектерін өзгерту кезінде немесе TOAST сақтау механизмін пайдаланатын кестелердегі индекстер бойынша ҚАЙТА ҚОСУ операциясын орындау кезінде индекстің бүлінуіне әкеп соқтырған ақаулықтар түзетілді.

ALTER STATISTICS орындаған кезде және көп диапазон түрлері бар деректерді алу кезінде түзетілген бұзылулар. Сұрауды жоспарлаушыдағы қате нәтижелерді тудырған қателер түзетілді. Өрнектер арқылы индекстерді жаңартқанда және нысандардың үлкен санында МЕНІШІЛІКТІ ҚАЙТА ТАҢДАУ операциясын орындау кезінде бекітілген жадтың ағуы. Сегменттелген кестелер үшін кеңейтілген статистиканың құрылысы қарастырылған.

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

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

Ақпарат көзі: opennet.ru

пікір қалдыру