Нашри PostgreSQL 12

Пас аз як соли рушд нашр шудааст филиали нави устувори DBMS PostgreSQL 12. Навсозиҳо барои филиали нав мебарояд барои панҷ сол то ноябри соли 2024.

асосӣ навовариҳо:

  • Дастгирии иловашуда барои "сутунҳои тавлидшуда", ки арзиши он дар асоси ифодае ҳисоб карда мешавад, ки арзишҳои сутунҳои дигар дар ҳамон ҷадвалро фаро мегирад (монанд ба намудҳо, аммо барои сутунҳои алоҳида). Сутунҳои тавлидшуда метавонанд ду намуд бошанд - захирашуда ва виртуалӣ. Дар ҳолати аввал, арзиш ҳангоми илова кардан ё тағир додани маълумот ҳисоб карда мешавад ва дар ҳолати дуюм, арзиш аз рӯи ҳар як хониш дар асоси ҳолати кунунии сутунҳои дигар ҳисоб карда мешавад. Дар айни замон, PostgreSQL танҳо сутунҳои тавлидшудаи захирашударо дастгирӣ мекунад;
  • Имконияти пурсиши маълумот аз ҳуҷҷатҳои JSON бо истифода илова карда шуд Ифодаҳои роҳшабоҳат дорад XPath ва дар стандарти SQL/JSON муайян карда шудааст. Механизмҳои мавҷудаи индексатсия барои баланд бардоштани самаранокии коркарди чунин ифодаҳо барои ҳуҷҷатҳои дар формати JSONB нигоҳ дошта мешаванд;
  • Бо нобаёнӣ истифодаи компилятори JIT (Just-in-Time) дар асоси коркардҳои LLVM барои суръат бахшидан ба иҷрои баъзе ифодаҳо ҳангоми коркарди дархости SQL фаъол карда шудааст. Масалан, JIT барои тезонидани иҷрои ифодаҳо дар дохили блокҳои WHERE, рӯйхатҳои мақсаднок, ифодаҳои ҷамъшуда ва баъзе амалиёти дохилӣ истифода мешавад;
  • Фаъолияти индексатсия ба таври назаррас беҳтар карда шуд. Индексҳои дарахти B барои кор дар муҳитҳое оптимизатсия карда шудаанд, ки индексҳо зуд-зуд иваз мешаванд - Санҷишҳои TPC-C афзоиши умумии кор ва коҳиши миёнаи масрафи фазои дискро 40% нишон медиҳанд. Хароҷоти изофӣ ҳангоми тавлиди сабти пешакӣ (WAL) барои намудҳои индекси GiST, GIN ва SP-GiST кам карда мешавад. Барои GiST, қобилияти эҷод кардани индексҳои печанда (тавассути ифодаи INCLUDE), ки сутунҳои иловагиро дар бар мегиранд, илова карда шудааст. Дар амал СТАТИСТИКА СОХТ Барои тавлиди нақшаҳои беҳтарини дархост ҳангоми истифодаи сутунҳои нобаробар тақсимшуда омори бештари арзиши умумӣ (MCV)-ро дастгирӣ мекунад;
  • Татбиқи тақсимот барои дархостҳое, ки ҷадвалҳоро бо ҳазорҳо қисмҳо фаро мегиранд, оптимизатсия карда шудааст, аммо бо интихоби зермаҷмӯи маҳдуди додаҳо маҳдуд аст. Фаъолияти илова кардани маълумот ба ҷадвалҳои тақсимшуда бо истифода аз амалиёти INSERT ва COPY зиёд карда шуд ва инчунин имкон дорад, ки қисмҳои навро тавассути "ALTER TABLE ATTACH PARTITION" бидуни бастани иҷрои дархост илова кунед;
  • Дастгирии иловашуда барои тавсеаи автоматии сатри ифодаҳои ҷадвали умумӣ (Ифодаи ҷадвали умумӣ, CTE). Ҷойгиркунии дарунсохт метавонад иҷрои аксари дархостҳоро беҳтар созад, аммо дар айни замон танҳо барои CTE-ҳои ғайрирекурсивӣ истифода мешавад;
  • Дастгирии иловашуда ғайримуқаррарӣ хосиятҳои маҳаллии "Ҷамъкунӣ", ки ба шумо имкон медиҳад қоидаҳои мураттабсозӣ ва усулҳои мувофиқро бо назардошти маънои аломатҳо муқаррар кунед (масалан, ҳангоми мураттаб кардани арзишҳои рақамӣ, мавҷудияти минус ва нуқта дар пеши рақам ва навъҳои гуногун имло ба назар гирифта шуда, хангоми мукоиса холати аломатхо ва мавчудияти аломати акцентй ба назар гирифта намешавад);
  • Дастгирии иловашуда барои аутентификатсияи мизоҷҳои бисёрсоҳавӣ, ки дар он дар pg_hba.conf шумо метавонед тасдиқи сертификати SSL (clientcert=verify-full) бо усули иловагии аутентификатсия ба монанди scram-sha-256 барои аутентификатсия якҷоя кунед;
  • Дастгирии иловашуда барои рамзгузории канали алоқа ҳангоми тасдиқи аутентификатсия тавассути ГССАПИ, ҳам дар тарафи муштарӣ ва ҳам дар тарафи сервер;
  • Дастгирии иловашуда барои муайян кардани серверҳои LDAP дар асоси сабтҳои "DNS SRV", агар PostgreSQL бо OpenLDAP сохта шуда бошад;
  • Амалиёти иловашуда "Ҳамзамон REINDEX» барқарор кардани индексатсияҳо бидуни бастани амалиёти навиштан ба индекс;
  • Фармони иловашуда pg_checksums, ки ба шумо имкон медиҳад, ки санҷиши санҷиши саҳифаҳои маълумотро барои пойгоҳи додаҳои мавҷуда фаъол ё ғайрифаъол кунед (қаблан ин амалиёт танҳо ҳангоми оғоз кардани пойгоҳи додаҳо дастгирӣ мешуд);
  • Натиҷаи нишондиҳандаи пешрафт барои амалиётҳо CREATE INDEX, REINDEX, CLUSTER, VACUUM FULL ва pg_checksums таъмин карда мешавад;
  • Фармони иловашуда "Эҷоди усули дастрасӣ» барои пайваст кардани коркардкунандагон барои усулҳои нави нигоҳдории ҷадвалҳо, ки барои вазифаҳои гуногуни мушаххас оптимизатсия шудаанд. Дар айни замон ягона усули дарунсохташудаи дастрасии ҷадвал "теппа" мебошад;
  • Файли конфигуратсияи recovery.conf бо postgresql.conf якҷоя карда шудааст. Ҳамчун нишондиҳандаҳои гузариш ба ҳолати барқароршавӣ пас аз шикаст, ҳоло бояд файлҳои recovery.signal ва standby.signal-ро истифода баред.

Манбаъ: opennet.ru

Илова Эзоҳ