Avaldatud jaotatud andmebaas Citus 13.0

Citus Data, Microsofti kuuluv ettevõte, on avaldanud jaotatud andmebaasi Citus 13.0, mis on rakendatud PostgreSQL 17 laiendusena. Citus võimaldab PostgreSQL-i horisontaalset skaleerimist standardvaral põhinevas klastris, võimaldades andmete jagamist nodede vahel sharding'i kaudu, mille seadistus toimub veergude ja salvestusstruktuuri tasemel. Citus klaster näeb rakenduste jaoks välja nagu üks suur PostgreSQL server, mis ühendab kõigi selle nodede ressursse. Kood on kirjutatud C keeles ja levitatakse AGPLv3 litsentsi alusel.

Sharding võimaldab organiseerida väga suurte andmemahtude salvestamist, mille kogumaht ületab oluliselt iga klastrinoodi kohalikku salvestusruumi. Üksikud tabelid võivad olla sundreplitseeritud kõigile nodedele, et kiirendada sulandumise ja väliste võtmete töötlemise operatsioone. Ruumi kokkuhoiuks võivad erinevates nodedes jaotatud andmed olla salvestatud kompakteeritud vormis.

Jaotatud päringud võivad saadetada igasse klastrinoodi, kuid andmeskeemi haldamine ja muutmine peab toimuma ainult koordineeriva nodeni kaudu. Klientidelt saadud päringud jaotatakse vajalikesse nodetesse ja kui need katab mitmeid nodede, toimub nende töötlemine paralleelselt. Klastrit saab laiendada, kui salvestatud andmete maht suureneb, lisades täiendavaid nodisid ja algatades ümberjaotuse.

Citus'e tüüpiliste kasutusnäidetena toodi välja analüütiliste päringute täitmine ja suurte andmehulkade töötlemine ajas (nt logid või andurite seisundi küsitlused). Citus sobib ka olemasoleva infrastruktuuri moderniseerimiseks, mis põhineb ühel PostgreSQL-l, mille jõudlus ja salvestusruum ei edasta enam suurenenud koormust või andmemahtu. serverile Patroni tööriistade abil saab luua tõrkekindlaid konfiguratsioone replitseeritud varunodede abil, mis saavad tõrke korral asendada põhined.

Citus 13.0 väljaande muudatused:

  • Üleminek PostgreSQL 17 haru kasutusele.
  • Jaotatud päringutes on võimalus kasutada JSON_TABLE() funktsiooni, et muuta andmeid JSON-formaadist relatsioonilisse vormingusse, millega saab töötada nagu tavaliste PostgreSQL tabelitega.
  • Toetatakse süntaksit "MERGE … WHEN NOT MATCHED BY SOURCE".
  • Jaotatud sektsioonitud tabelite juurdepääsumeetodi määramine on võimalik väljendi "CREATE TABLE … USING" abil ning juurdepääsumeetodi muutmine "ALTER TABLE … SET ACCESS METHOD" kaudu.
  • Lisatud on toetus automaatselt genereeritud identiteetveergude määramisele jaotatud sektsioonitud tabelites.
  • Jaotatud sektsioonitud tabelites on lubatud piirangute-käivitumine.
  • Probleemid rollide sünkroniseerimisega nodede vahel on lahendatud.
  • Andmete jaotamine sharding'i jaoks on parendatud, kui klastrisse lisatakse uusi nodisid.
  • Käsklusele "EXPLAIN" on lisatud valikud "MEMORY" ja "SERIALIZE", millega saab määrata kasutatud mälu suuruse ja aja, mis kulus andmete ümberkujundamiseks edastamiseks üle võrgu.

Allikas: opennet.ru

Osta usaldusväärne veebihosting DDoS kaitsega, VPS VDS serverid 🔥 Osta usaldusväärne veebihosting DDoS kaitsega, VPS VDS serverid | ProHoster