PostgreSQL 12 faʻamalolo

Ua fa'asalalauina e le 'au PostgreSQL le fa'asa'olotoina o le PostgreSQL 12, le fa'ata'ita'iga lata mai o le fa'aogaina o feso'ota'iga fa'amaumauga tu'ufa'atasi.
PostgreSQL 12 ua matua faʻaleleia le faʻatinoga o faʻamatalaga - aemaise lava pe a galue i le tele o voluma o faʻamaumauga, ma ua faʻamalieina foi le faʻaogaina o le vaʻa vaʻa lautele.

O foliga fou e aofia ai:

  • fa'atinoga o le gagana fesili ole JSON Path (le vaega pito sili ona taua o le tulaga SQL/JSON);
  • fa'asilisiliina o le fa'atinoina o fa'amatalaga masani laulau (WITH);
  • lagolago mo koluma gaosia

O loʻo faʻaauau pea ona galulue le faʻalapotopotoga i luga o le faʻalauteleina ma le faʻamaoni o PostgreSQL, atinaʻeina o lagolago mo faʻasalalauga faʻavaomalo, faʻamaonia gafatia, ma tuʻuina atu auala faigofie e faʻatautaia ai le faiga.

O lenei faʻasalalauga e aofia ai le faʻatinoina o se atinaʻe mo masini faʻapipiʻi faʻapipiʻi, lea e mafai ai nei e le au atinaʻe ona fatuina a latou lava auala e teu ai faʻamatalaga.

Faʻaleleia atili o galuega

PostgreSQL 12 e aofia ai faʻatinoga taua ma le faʻaleleia o le tausiga mo le faʻasinoina ma le vaeluaga o faiga.

B-tree indexes, le tulaga masani fa'asino igoa i PostgreSQL, ua fa'asilisiliina i le version 12 mo galuega mamafa e a'afia ai suiga fa'asino i taimi uma. O le faʻaaogaina o le TPC-C benchmark mo PostgreSQL 12 na faʻaalia ai le averesi o le 40% faʻaitiitiga i le faʻaogaina o avanoa ma le faʻateleina o le faʻatinoga o fesili.

O su'esu'ega fa'asaga i laulau vaelua na maua ai fa'alelei iloga, aemaise lava mo laulau e aofia ai le faitau afe o vaeluaga e mana'omia le galue i na'o vaega fa'atapula'a o fa'amaumauga fa'amaumauga. O le faʻatinoga o le faʻaopoopoina o faʻamatalaga i laulau vaeluaga e faʻaaoga ai INSERT ma COPY ua faʻaleleia, faʻapea foʻi ma le mafai ona faʻapipiʻi se vaeluaga fou e aunoa ma le polokaina o fesili.

PostgreSQL 12 ua faia ni faʻaleleia atili i le faasino igoa e aʻafia ai le faʻatinoga atoa, e aofia ai:

  • fa'aitiitiga fa'aulu pe a fa'atupuina WAL mo fa'ailoga fa'ailoga GiST, GIN ma SP-GIST;
  • le mafaia ona fai mea e ta'ua o fa'asino igoa (INCLUDE clause) i luga o fa'asino igoa GiST;
  • le mafai ona faia fesili "latalata lata ane" (k-NN search) e faʻaaoga ai le masini mamao (<->) ma faʻaoga SP-GiST indexes;
  • lagolago mo le aoina o fuainumera sili ona taatele (MCV) e faʻaaoga ai le CREATE STATISTICS, lea e fesoasoani e maua ai faʻamatalaga sili atu pe a faʻaogaina koluma o latou tau e le tutusa le tufatufaina.

JIT tu'ufa'atasiga e fa'aaoga ai le LLVM, fa'afeiloa'i i le PostgreSQL 11, ua mafai nei ona fa'aletonu. O le tu'ufa'atasiga a le JIT e fa'aleleia ai le fa'atinoga pe a galulue fa'atasi ma fa'amatalaga i WHERE fuaiupu, lisi fa'atatau, fa'aputuga, ma nisi fa'atinoga i totonu. E avanoa pe afai na e tuʻufaʻatasia le PostgreSQL ma le LLVM pe o loʻo faʻaaogaina se pusa PostgreSQL na fausia ma LLVM mafai.

Fa'aleleia atili le agava'a o le gagana SQL ma le fetaui lelei

PostgreSQL 12 faʻafeiloaʻi le mafai ona fesiligia pepa JSON e faʻaaoga ai faʻamatalaga ala JSON faʻamatalaina i le tulaga SQL / JSON. O ia fesili e mafai ona fa'aogaina faiga fa'asinomaga o lo'o iai mo pepa o lo'o teuina i le JSONB fa'atulagaina e toe maua lelei ai fa'amaumauga.

Fa'amatalaga masani laulau, fa'aigoa WITH fesili, e mafai nei ona fa'atinoina otometi e fa'aaoga ai le suitulaga i le PostgreSQL 12, lea e mafai ona fesoasoani e fa'aleleia le fa'atinoga o le tele o fesili o lo'o iai. I le lomiga fou, o se vaega suitulaga o se fesili WITH e mafai ona faʻatinoina pe afai e le toe faʻafoʻi, leai ni aʻafiaga, ma e naʻo le tasi le faʻasino i se vaega mulimuli o le fesili.

PostgreSQL 12 faʻalauiloa lagolago mo "koluma gaosia". Faʻamatalaina i le SQL standard, o lenei ituaiga koluma e faʻatatauina se tau faʻavae i luga o mea o loʻo i totonu o isi koluma i le laulau tutusa. I lenei lomiga, PostgreSQL lagolagoina "koluma gaosia teuina", lea e teu ai le tau fuafuaina i luga o le disk.

Нтернационализация

PostgreSQL 12 faʻalauteleina le lagolago mo faʻapipiʻi ICU e ala i le faʻatagaina o tagata faʻaoga e faʻamatalaina "faʻapipiʻi le faʻamaonia" lea e mafai, mo se faʻataʻitaʻiga, faʻatagaina faʻatusatusaga faʻapitoa poʻo le faʻaituau.

Fa'amaoni

PostgreSQL faʻalauteleina lana lagolago mo auala faʻamaonia faʻamaonia ma le tele o faʻaleleia e maua ai le puipuiga faaopoopo ma galuega. O lenei faʻasalalauga e faʻaalia ai faʻamatalaga faʻamaufaʻailoga-itu-ma-aumau mo le faʻamaonia i luga o fesoʻotaʻiga GSSAPI, faʻapea foʻi ma le mafai mo PostgreSQL ona maua sapalai LDAP pe a tuʻufaʻatasia PostgreSQL ma OpenLDAP.

E le gata i lea, o le PostgreSQL 12 o loʻo lagolagoina nei se filifiliga faʻamaonia e tele-factor. O le PostgreSQL server e mafai nei ona manaʻomia le kalani e tuʻuina atu se tusi faamaonia SSL faʻamaonia ma le igoa faʻaoga tutusa e faʻaaoga ai le clientcert=verify-full, ma tuʻufaʻatasia lenei mea ma se isi auala faʻamaonia e manaʻomia (eg scram-sha-256).

Pulega

PostgreSQL 12 faʻafeiloaʻi le mafai ona faʻatino faʻamaufaʻailoga e le faʻasalaina toe fausia e faʻaaoga ai le REINDEX CONCURRENTLY poloaiga. Ole mea lea e mafai ai e tagata fa'aoga ona aloese mai le fa'aletonu ole DBMS ile taimi umi ole toe fausia o fa'amaumauga.

E le gata i lea, i le PostgreSQL 12, e mafai ona e faʻatagaina pe faʻamalo siaki itulau i totonu o le tapuni tapuni e faʻaaoga ai le pg_checksums poloaiga. I le taimi muamua, itulau siaki siaki, o se vaega e fesoasoani e faʻamaonia le saʻo o faʻamaumauga o loʻo teuina i luga o le disk, e faatoa mafai ona faʻaogaina pe a amataina le vaega PostgreSQL e faʻaaoga initdb.

puna: linux.org.ru

Faaopoopo i ai se faamatalaga