PostgreSQL 12 DBMS tso tawm

Tom qab ib xyoos ntawm kev loj hlob luam tawm Cov ceg ruaj khov tshiab ntawm PostgreSQL 12 DBMS. Hloov tshiab rau ceg tshiab yuav tawm los rau tsib xyoos txog rau lub Kaum Ib Hlis 2024.

ntsiab kev tsim kho tshiab:

  • Ntxiv kev txhawb nqa rau "tsim kab", tus nqi ntawm uas yog xam raws li ib qho kev qhia npog qhov tseem ceeb ntawm lwm cov kab nyob rau hauv tib lub rooj (zoo ib yam li views, tab sis rau ib tug neeg txhua kab). Cov kab tsim tawm tuaj yeem yog ob hom - khaws cia thiab virtual. Nyob rau hauv thawj rooj plaub, tus nqi yog xam nyob rau hauv lub sij hawm cov ntaub ntawv ntxiv los yog hloov, thiab nyob rau hauv cov ntaub ntawv thib ob, tus nqi yog xam nyob rau hauv txhua tus nyeem raws li lub xeev tam sim no ntawm lwm kab. Tam sim no, PostgreSQL tsuas yog txhawb nqa cov kab ntawv tsim tawm;
  • Ntxiv lub peev xwm los nug cov ntaub ntawv los ntawm JSON cov ntaub ntawv siv Txoj kev qhia, nco txog XPath thiab txhais hauv SQL/JSON tus qauv. Cov txheej txheem indexing uas twb muaj lawm yog siv los txhim kho qhov ua tau zoo ntawm kev ua cov kab lus no rau cov ntaub ntawv khaws cia hauv JSONB hom;
  • Enabled los ntawm lub neej ntawd yog kev siv JIT (Just-in-Time) compiler raws li LLVM kev txhim kho kom nrawm rau kev ua tiav ntawm qee qhov kev qhia thaum SQL query processing. Piv txwv li, JIT yog siv los ua kom tiav cov lus qhia nyob rau hauv qhov chaw blocks, cov npe phiaj xwm, cov lus sib sau ua ke, thiab qee qhov kev ua haujlwm sab hauv;
  • Indexing kev ua tau zoo tau zoo heev. B-ntoo indexes yog optimized ua hauj lwm nyob rau hauv ib puag ncig uas indexes hloov ntau zaus - TPC-C kev ntsuam xyuas qhia ib tug tag nrho nce nyob rau hauv kev ua tau zoo thiab ib tug nruab nrab txo nyob rau hauv disk chaw noj ntawm 40%. Txo nyiaj siv ua haujlwm thaum tsim cov ntawv sau ua ntej (WAL) rau GiST, GIN thiab SP-GiST index hom. Rau GiST, lub peev xwm los tsim wrapper indexes (los ntawm kev qhia txog INCLUDE) uas suav nrog cov kab ntxiv tau ntxiv. Hauv kev ua haujlwm TSIM NYUJ CIM Muab kev txhawb nqa rau Feem Ntau Cov Nqi (MCV) cov txheeb cais los tsim cov lus nug zoo tshaj plaws thaum siv cov kab tsis sib luag;
  • Qhov kev faib ua feem yog ua kom zoo rau cov lus nug uas nthuav cov lus nrog ntau txhiab tus muab faib, tab sis tsuas yog xaiv cov ntaub ntawv tsawg tsawg. Kev ua tau zoo ntawm kev ntxiv cov ntaub ntawv rau cov rooj sib faib siv INSERT thiab COPY cov haujlwm tau nce ntxiv, thiab nws tseem tuaj yeem ntxiv cov ntu tshiab los ntawm "ALTER TABLE ATTACH PARTITION" yam tsis muaj kev cuam tshuam cov lus nug;
  • Ntxiv kev txhawb nqa rau tsis siv neeg inline nthuav dav ntawm cov lus qhia dav dav (Common Table Expression, CTE) uas tso cai rau siv lub npe ib ntus cov txiaj ntsig tau teev tseg siv WITH nqe lus. Kev xa tawm hauv kab tuaj yeem txhim kho qhov kev ua tau zoo ntawm cov lus nug feem ntau, tab sis tam sim no tsuas yog siv rau CTEs tsis-recursive;
  • Ntxiv kev txhawb nqa tsis txiav txim siab Cov khoom ntawm "Collation" thaj chaw, uas tso cai rau koj los teeb tsa cov kev cai sib cais thiab cov kev sib txuam uas coj mus rau hauv tus account lub ntsiab lus ntawm cov cim (piv txwv li, thaum txheeb xyuas cov txiaj ntsig digital, muaj tus lej rho tawm thiab cov teev nyob rau pem hauv ntej ntawm tus lej thiab ntau hom. kev sau ntawv raug muab coj los siv rau hauv tus account, thiab thaum sib piv, cov ntaub ntawv ntawm cov cim thiab lub xub ntiag ntawm cov cim cim tsis raug suav nrog);
  • Ntxiv kev txhawb nqa rau ntau tus neeg siv khoom authentication, uas nyob rau hauv pg_hba.conf koj tuaj yeem muab SSL daim ntawv pov thawj authentication (clientcert=verify-full) nrog rau ib qho ntxiv authentication txoj kev xws li scram-sha-256 rau authentication;
  • Ntxiv kev txhawb nqa rau encryption ntawm kev sib txuas lus channel thaum authenticating ntawm GSSAPIA, ob qho tib si ntawm tus neeg siv khoom thiab sab server;
  • Ntxiv kev txhawb nqa rau kev txiav txim siab LDAP servers raws li "DNS SRV" cov ntaub ntawv yog PostgreSQL tsim nrog OpenLDAP;
  • Ntxiv kev ua haujlwm "REINDEX CONCURRENTLYΒ» txhawm rau txhim kho indexes yam tsis thaiv kev sau cov haujlwm rau qhov ntsuas;
  • Ntxiv lus txib pg_checksums, uas tso cai rau koj los pab lossis lov tes taw checksums ntawm nplooj ntawv cov ntaub ntawv rau cov ntaub ntawv uas twb muaj lawm (yav dhau los qhov kev ua haujlwm no tau txais kev txhawb nqa tsuas yog thaum pib ntawm database);
  • Muab cov zis ntawm qhov taw qhia kev nce qib rau kev ua haujlwm CREATE INDEX, REINDEX, CLUSTER, VACUUM FULL thiab pg_checksums;
  • Ntxiv command "CREATE ACCESS METODΒ» txhawm rau txuas cov neeg ua haujlwm rau cov lus tshiab cia txoj hauv kev zoo rau ntau yam haujlwm tshwj xeeb. Tam sim no tib txoj hauv kev nkag tau hauv lub rooj yog "heap";
  • Cov ntaub ntawv recovery.conf configuration tau raug merged nrog postgresql.conf. Raws li kev ntsuas ntawm kev hloov mus rau lub xeev ntawm kev rov qab los tom qab tsis ua haujlwm, tam sim no yuav tsum siv cov ntaub ntawv recovery.signal thiab standby.signal.

Tau qhov twg los: opennet.ru

Ntxiv ib saib