Hoʻokuʻu ʻia ʻo PostgreSQL 12

Ua hoʻolaha ka hui PostgreSQL i ka hoʻokuʻu ʻia ʻana o PostgreSQL 12, ka mana hou loa o ka ʻōnaehana hoʻokele waiwai relational open source.
Ua hoʻomaikaʻi maikaʻi ʻo PostgreSQL 12 i ka hana noiʻi - ʻoi aku ka nui o ka hana ʻana me ka nui o ka ʻikepili, a ua ʻoi aku ka maikaʻi o ka hoʻohana ʻana i ka hakahaka disk ma ka laulā.

Aia nā hiʻohiʻona hou:

  • ka hoʻokō ʻana i ka ʻōlelo hulina JSON Path (ʻo ka hapa nui o ka maʻamau SQL/JSON);
  • ka hoʻokō ʻana i nā hōʻike papa maʻamau (WITH);
  • kākoʻo no nā kolamu i hana ʻia

Ke hoʻomau nei hoʻi ke kaiāulu e hana i ka hoʻonui a me ka hilinaʻi o PostgreSQL, hoʻomohala i ke kākoʻo no ka internationalization, hiki ke hōʻoia, a me ka hāʻawi ʻana i nā ala maʻalahi e hoʻokele i ka ʻōnaehana.

Aia kēia hoʻokuʻu ʻana i ka hoʻokō ʻana i kahi interface no nā mīkini mālama pluggable, i kēia manawa e hiki ai i nā mea hoʻomohala ke hana i kā lākou mau ʻano mālama ʻikepili.

Hoʻonui i ka hana

Hoʻokomo ʻia ka PostgreSQL 12 i nā hana koʻikoʻi a me ka hoʻomaikaʻi ʻana i ka mālama ʻana no ka kuhikuhi ʻana a me nā ʻōnaehana māhele.

ʻO nā ʻōlelo kuhikuhi lāʻau B, ke ʻano helu kuhikuhi maʻamau ma PostgreSQL, ua hoʻopaʻa ʻia i ka mana 12 no nā haʻahaʻa hana e pili ana i nā hoʻololi kuhikuhi pinepine. ʻO ka hoʻohana ʻana i ka benchmark TPC-C no PostgreSQL 12 hōʻike i ka awelika 40% hōʻemi i ka hoʻohana ʻana i ka lewa a me ka piʻi holoʻokoʻa o ka hana nīnau.

Ua loaʻa i nā nīnau e pili ana i nā papa ʻaina i hoʻomaikaʻi ʻia, ʻoi aku hoʻi no nā papa ʻaina he mau kaukani ʻāpana e pono ai e hana me nā ʻāpana liʻiliʻi wale nō o ka hoʻonohonoho ʻikepili. Ua hoʻomaikaʻi ʻia ka hana o ka hoʻohui ʻana i nā ʻikepili i nā papa ʻāpana me ka hoʻohana ʻana i ka INSERT a me COPY, a me ka hiki ke hoʻopili i kahi ʻāpana hou me ka ʻole o ka pale ʻana i nā nīnau.

Ua hana ʻo PostgreSQL 12 i nā hoʻomaikaʻi hou i ka helu ʻana i ka hopena o ka hana holoʻokoʻa, me:

  • hoʻemi ʻia ma luna o ke poʻo i ka wā e hana ai i ka WAL no nā ʻano kuhikuhi kuhikuhi GiST, GIN a me SP-GiST;
  • ka hiki ke hana i nā mea i kapa ʻia ʻo uhi ʻōlelo kuhikuhi (INCLUDE clause) ma nā kuhikuhina GiST;
  • ka hiki ke hana i nā nīnau "kokoke kokoke loa" (k-NN hulina) me ka hoʻohana ʻana i ka mea hoʻohana mamao (<->) a me ka hoʻohana ʻana i nā kuhikuhi SP-GiST;
  • kākoʻo no ka hōʻiliʻili ʻana i nā helu helu maʻamau (MCV) me ka hoʻohana ʻana i ka CREATE STATISTICS, e kōkua ana i ka loaʻa ʻana o nā hoʻolālā noiʻi maikaʻi aʻe i ka wā e hoʻohana ai i nā kolamu i hoʻokaʻawale ʻole ʻia nā waiwai.

ʻO ka hui pū ʻana o JIT me ka hoʻohana ʻana iā LLVM, i hoʻokomo ʻia ma PostgreSQL 11, ua hoʻohana ʻia e ka paʻamau. Hoʻomaikaʻi ka hui ʻana o JIT i ka hana i ka wā e hana ai me nā ʻōlelo ma WHERE mau māhele, nā papa kuhikuhi, nā aggregates, a me kekahi mau hana kūloko. Loaʻa ia inā ua hōʻuluʻulu ʻoe i ka PostgreSQL me LLVM a i ʻole ke hoʻohana nei i kahi pūʻolo PostgreSQL i kūkulu ʻia me LLVM hiki.

Hoʻomaikaʻi i ka mana ʻōlelo SQL a me ka hoʻohālikelike maʻamau

Ua hoʻolauna ʻo PostgreSQL 12 i ka hiki ke nīnau i nā palapala JSON me ka hoʻohana ʻana i nā ʻōlelo ala JSON i wehewehe ʻia ma ka maʻamau SQL/JSON. Hiki i ia mau nīnau ke hoʻohana i nā mīkini helu kuhikuhi no nā palapala i mālama ʻia ma JSONB format e kiʻi maikaʻi i ka ʻikepili.

Hiki ke hoʻokō ʻia nā ʻōlelo papaʻaina maʻamau, i ʻike ʻia ʻo WITH queries, me ka hoʻohana ʻana i ka hoʻololi ʻana ma PostgreSQL 12, a laila hiki ke kōkua i ka hoʻomaikaʻi ʻana i ka hana o nā nīnau he nui. Ma ka mana hou, hiki ke hoʻokō ʻia kahi ʻāpana hoʻololi o kahi nīnau WITH inā ʻaʻole ia e hoʻihoʻi hou, ʻaʻohe hopena ʻaoʻao, a kuhikuhi ʻia hoʻokahi wale nō ma kahi ʻāpana o ka nīnau.

Hoʻokomo ʻo PostgreSQL 12 i ke kākoʻo no "nā kolamu i hana ʻia". Hōʻike ʻia ma ka maʻamau SQL, helu kēia ʻano kolamu i kahi waiwai e pili ana i nā ʻike o nā kolamu ʻē aʻe ma ka papa like. Ma kēia mana, kākoʻo ʻo PostgreSQL i "nā kolamu i mālama ʻia", kahi i mālama ʻia ai ka waiwai i helu ʻia ma ka disk.

Hoʻohui Aupuni

Hoʻonui ʻo PostgreSQL 12 i ke kākoʻo no nā hōʻuluʻulu ICU ma ka ʻae ʻana i nā mea hoʻohana e wehewehe i nā "hui hoʻoholo ʻole" hiki, no ka laʻana, e ʻae i ka hoʻohālikelike case-insensitive a i ʻole accent-insensitive.

Kalaukina

Hoʻonui ʻo PostgreSQL i kāna kākoʻo no nā ʻano hōʻoia ikaika me nā mea hoʻonui e hāʻawi i ka palekana a me ka hana. Hoʻopuka kēia hoʻokuʻu ʻana i ka ʻaoʻao o ka mea kūʻai aku a me ka ʻaoʻao server-ʻaoʻao no ka hōʻoia ʻana ma luna o nā kikowaena GSSAPI, a me ka hiki no PostgreSQL ke ʻike i nā kikowaena LDAP ke hoʻohui ʻia ʻo PostgreSQL me OpenLDAP.

Hoʻohui hou, kākoʻo ʻo PostgreSQL 12 i kahi koho hōʻoia multi-factor. Hiki i ke kikowaena PostgreSQL ke koi i ka mea kūʻai aku e hāʻawi i kahi palapala SSL kūpono me ka inoa inoa e pili ana me ka hoʻohana ʻana i ka clientcert=verify-full, a hoʻohui i kēia me kahi koi ʻano hōʻoia ʻokoʻa (e like me scram-sha-256).

Nā Administration

Ua hoʻolauna ʻo PostgreSQL 12 i ka hiki ke hana i ka hana hou ʻana i ka index non-blocking me ka hoʻohana ʻana i ke kauoha REINDEX CONCURRENTLY. Hāʻawi kēia i nā mea hoʻohana e pale i ka DBMS downtime i ka wā lōʻihi o ka index index.

Eia hou, ma PostgreSQL 12, hiki iā ʻoe ke ʻae a hoʻopau paha i nā checksums ʻaoʻao i loko o kahi puʻupuʻu pani e hoʻohana ana i ke kauoha pg_checksums. Ma mua, hiki ke hoʻohana ʻia nā ʻaoʻao checksums, kahi hiʻohiʻona e hōʻoia i ka pono o ka ʻikepili i mālama ʻia ma ka disk, hiki ke hoʻohana ʻia i ka wā i hoʻomaka ʻia ai ka puʻupuʻu PostgreSQL me ka hoʻohana ʻana i ka initdb.

Source: linux.org.ru

Pākuʻi i ka manaʻo hoʻopuka