PostgreSQL 12 tuku

Kua panuitia e te roopu PostgreSQL te tukunga o PostgreSQL 12, te putanga hou o te punaha whakahaere patengi raraunga hononga puna tuwhera.
Ko te PostgreSQL 12 kua tino pai ake te mahi uiui - ina koa i te wa e mahi ana me te nui o nga raraunga, kua arotau hoki te whakamahi mokowā kōpae i te nuinga.

Ko nga ahuatanga hou ko:

  • te whakatinanatanga o te reo patai JSON Path (te waahanga tino nui o te paerewa SQL/JSON);
  • arotautanga o te whakatinanatanga o nga whakaaturanga ripanga noa (WITH);
  • tautoko mo nga pou kua hangaia

Kei te mahi tonu te hapori ki te whakawhānui me te pono o PostgreSQL, te whakawhanake i te tautoko mo te ao, te kaha motuhēhēnga, me te whakarato huarahi ngawari ki te whakahaere i te punaha.

Kei roto i tenei tukunga te whakatinanatanga o te atanga mo nga miihini rokiroki mono, ka taea e nga kaihanga te hanga i a raatau ake tikanga rokiroki raraunga.

Whakapai ake i te mahinga mahi

Kei roto i te PostgreSQL 12 nga mahi nui me nga whakapainga tiaki mo te whakariterite me nga punaha wehewehe.

Ko nga tohu tohu B-rakau, ko te momo tohu tohu paerewa i roto i te PostgreSQL, kua arotauhia ki te putanga 12 mo nga kawenga mahi e uru ana ki nga whakarereketanga taurangi auau. Ma te whakamahi i te tohu tohu TPC-C mo PostgreSQL 12 i whakaatu i te toharite 40% te whakahekenga mokowhiti me te pikinga katoa o te mahi uiui.

Ko nga patai mo nga ripanga kua wehewehea kua kitea nga whakapainga ake, ina koa mo nga ripanga kei roto i nga mano o nga wehewehenga me mahi me nga waahanga iti noa o nga rarangi raraunga. Ko te mahinga o te taapiri raraunga ki nga ripanga wehewehe ma te whakamahi i te INSERT me te COPY kua pai ake, me te kaha ki te taapiri i tetahi waahanga hou me te kore e aukati i nga patai.

Kua whakapai ake a PostgreSQL 12 ki te taupū e pa ana ki nga mahi katoa, tae atu ki:

  • kua whakahekehia te upoko ina hanga WAL mo nga momo tohu tohu GiST, GIN me SP-GiST;
  • te kaha ki te hanga i nga mea e kiia ana ko nga tohu hipoki (KORE rara) i runga i nga tohu tohu GiST;
  • te kaha ki te mahi i nga patai "tata tata" (rapu k-NN) ma te whakamahi i te kaiwhakahaere tawhiti (<->) me te whakamahi i nga tohu tohu SP-GiST;
  • tautoko mo te kohi tatauranga uara tino noa (MCV) ma te whakamahi CREATE STATISTICS, e awhina ana kia pai ake nga mahere patai ina whakamahi nga pou kaore e rite te tohatoha o nga uara.

Ko te whakahiato JIT ma te whakamahi i te LLVM, i whakauruhia ki PostgreSQL 11, kua whakahohea inaianei ma te taunoa. Ko te whakahiato JIT he pai ake te mahi i te wa e mahi ana me nga korero i roto i nga rara WHERE, nga rarangi whaainga, nga whakahiato, me etahi mahi o roto. E waatea ana mena kua whakahiatohia e koe te PostgreSQL me te LLVM, kei te whakamahi ranei koe i tetahi kete PostgreSQL i hangaia me te LLVM kua whakahohea.

Te whakapai ake i nga kaha reo SQL me te hototahi paerewa

I whakauruhia e PostgreSQL 12 te kaha ki te uiui i nga tuhinga JSON ma te whakamahi i nga korero ara JSON kua tautuhia ki te paerewa SQL/JSON. Ka taea e enei patai te whakamahi i nga tikanga tohu tohu mo nga tuhinga kua rongoa ki te whakatakotoranga JSONB kia pai ai te tiki raraunga.

Ko nga whakaaturanga ripanga noa, e mohiotia ana ko nga patai WITH, ka taea te mahi aunoa ma te whakakapi i te PostgreSQL 12, ka taea te whakapai ake i te mahinga o nga patai maha. I roto i te putanga hou, ka taea anake te whakahaere i tetahi waahanga whakakapinga o te uiui WITH mena karekau he recursive, karekau he paanga taha, a ka tohutoro kotahi anake i roto i te waahanga o muri o te patai.

Ko te PostgreSQL 12 e whakaatu ana i te tautoko mo "nga pou i hangaia". I whakaahuahia i roto i te paerewa SQL, ka tatauhia e tenei momo tīwae tetahi uara i runga i nga ihirangi o etahi atu pou i roto i te ripanga kotahi. I roto i tenei putanga, ka tautokohia e PostgreSQL nga "tīwae kua rongoatia", kei reira te uara tatau e penapena ana ki te kōpae.

Whakawhanaungatanga

Ka whakawhānuihia e PostgreSQL 12 te tautoko mo nga kohinga ICU ma te tuku i nga kaiwhakamahi ki te tautuhi i nga "kohinga kore-whakatau" ka taea, hei tauira, te tuku whakataurite-kore-kore-kore-kore ranei.

Whakaaturanga

Ka whakawhānuihia e PostgreSQL tana tautoko mo nga tikanga whakamotuhēhēnga kaha me te maha o nga whakapainga e whakarato ana i te haumarutanga me te mahi. Ko tenei tukunga e whakaatu ana i te whakamunatanga taha-kiritaki me te taha-tumau mo te whakamotuhēhēnga i runga i nga atanga GSSAPI, me te kaha o PostgreSQL ki te kite i nga tūmau LDAP ina whakahiatohia a PostgreSQL me OpenLDAP.

Hei taapiri, kei te tautoko a PostgreSQL 12 i tetahi waahanga motuhēhēnga-maha. Ka taea e te tūmau PostgreSQL te tono i te kiritaki ki te whakarato i tetahi tiwhikete SSL whaimana me te ingoa kaiwhakamahi e rite ana ma te whakamahi i te clientcert=verify-full, me te whakakotahi i tenei me tetahi whakaritenga tikanga motuhēhēnga motuhake (hei tauira, scram-sha-256).

Whakahaerenga

I whakauruhia e PostgreSQL 12 te kaha ki te mahi i nga hanganga taurangi kore-aukati ma te whakamahi i te whakahau REINDEX CONCURRENTLY. Ma tenei ka taea e nga kaiwhakamahi te karo i te wa whakaheke DBMS i te wa roa o te hanganga taurangi.

I tua atu, i roto i te PostgreSQL 12, ka taea e koe te whakakore, te whakakore ranei i nga arowhai wharangi i roto i te roopu kati ma te whakamahi i te pg_checksums whakahau. I mua, ka taea te whakaahei i nga waahanga arowhai wharangi, he waahanga hei manatoko i te pono o nga raraunga e rongoa ana ki te kopae, ka taea anake te wa i arawhitia te tautau PostgreSQL ma te whakamahi i te initdb.

Source: linux.org.ru

Tāpiri i te kōrero