Stabiilne MariaDB 10.5 andmebaasi väljaanne

Pärast aasta arendust ja nelja eelväljaannet on ette valmistatud on esimene stabiilne versioon uue andmebaasi haru kohta MariaDB 10.4, mille raames areneb MySQL'ist eraldunud versioon, mis säilitab tagasitagamise ühilduvuse ja erineb täiendavate salvestusmootorite integreerimise ja laiendatud võimalustega. Uue haru toetamine kestab 5 aastat, kuni juuni 2025.

MariaDB arengut juhib sõltumatu organisatsioon MariaDB Foundation, järgides täiesti avatud ja läbipaistvat arendamismudelit, mis ei sõltu üksikutest tootjatest. MariaDB tarnitakse MySQL asemel paljudes Linuxi distributsioonides (RHEL, SUSE, Fedora, openSUSE, Slackware, OpenMandriva, ROSA, Arch Linux, Debian) ja on rakendatud suurtes projektides nagu Wikipedia, Google Cloud SQL ja Nimbuzz.

Peamised parandused MariaDB 10.5:

  • Lisa salvestusmootor S3, mis võimaldab salvestada MariaDB tabeleid Amazon S3-s või igas teises avalikus või erahoiustamises, mis toetab S3 API-d. Toetatakse S3-s nii tavaliste kui ka jaotatud (partitsioneeritud) tabelite salvestamist. Kui tabelid on pilves jaotatud, saavad neid otse kasutada ka teised serverid, millel on juurdepääs S3 hoidmale.
  • Lisa salvestusmootor ColumnStore, mis salvestab andmeid veergude kaupa ja kasutab massiivset paralleelset jaotatud arhitektuuri. Mootor põhineb MySQL-hoidla InfiniDB töötlusprotsessidel ja on mõeldud suurte andmemahtu analüütiliste päringute töötlemiseks ja täitmiseks (Data Warehouse).
    ColumnStore salvestab andmeid mitte ridade kaupa, vaid veergude lõikes, mis võimaldab optimeerida rühmitamise täitmist suurest andmebaasist, mis hõlmab petabaitide andmeid. Toetatakse lineaarset skaleerimist, andmete salvestamist kokkusurutud vormis, vertikaalset ja horisontaalset partitsioneerimist, tõhusat konkurentsivõimeliste päringute täitmist.
  • Kõik täidetavad failid, mis algavad sõnaga “mysql”, on ümber nimetatud kasutades sõna “mariadb”. Vanad nimed on salvestatud sümboolsete linkidena.
  • Lisatud on uus andmetüüp INET6 IPv6 aadresside salvestamiseks.
  • On tehtud tööd privileegide jagamiseks väiksemateks osadeks. Üldise SUPER privileegi asemel on pakutud valikut valikulisest privileegist "BINLOG ADMIN",
    "BINLOG REPLAY",
    "CONNECTION ADMIN",
    "FEDERATED ADMIN",
    "READ_ONLY ADMIN",
    "REPLICATION MASTER ADMIN",
    "REPLICATION SLAVE ADMIN" ja
    "SET USER".
  • Privileegium «REPLICATION CLIENT» on nimetatud ümber kui «BINLOG MONITOR», ja väljend «SHOW MASTER STATUS» on nüüd «SHOW BINLOG STATUS». Ümbernimetamine täpsustab käitumist ja ei ole seotud poliitilise korrektsusega; projekt ei loobu terminitest master/slave ja on isegi lisanud uusi privileege «MASTER ADMIN» ja «SLAVE ADMIN». Samuti on SQL-i väljendisse lisatud uus märksõna «REPLICA», mis on sünonüüm «SLAVE-le».
  • Mõnede väljendite jaoks on muudetud vajalikke privileege nende täitmiseks. «SHOW BINLOG EVENTS» nõuab nüüd õigusi «BINLOG MONITOR» asemel «REPLICATION SLAVE», «SHOW SLAVE HOSTS» nõuab privileege «REPLICATION MASTER ADMIN» asemele «REPLICATION SLAVE», «SHOW SLAVE STATUS» nõuab õigusi «REPLICATION SLAVE ADMIN» või «SUPER» asemel «REPLICATION CLIENT», «SHOW RELAYLOG EVENTS» nõuab õigusi «REPLICATION SLAVE ADMIN» asemel «REPLICATION SLAVE».
  • Lisatud on konstruktsioonid «INSERT … RETURNING" ja "REPLACE … RETURNING», mis tagastavad loendi sisestatud/vahetatud ridade vormis, nagu väärtused tagastataks koos väljendi SELECT kasutamisega (analoogiana «DELETE … RETURNING»).

    INSERT INTO t2 VALUES (1, 'Dog'), (2, 'Lion'), (3, 'Tiger'), (4, 'Leopard')
    RETURNING id2, id2 + id2, id2 & id2, id2 || id2;
    +——+———+———+———-+
    | id2 | id2 + id2 | id2 & id2 | id2 || id2 |
    +——+———+———+———-+
    | 1 | 2 | 1 | 1 |
    | 2 | 4 | 2 | 1 |
    | 3 | 6 | 3 | 1 |
    | 4 | 8 | 4 | 1 |
    +——+———+———+———-+

  • Lisatud on väljendid «EXCEPT ALL" ja "INTERSECT ALL» tulemuste välja jätmiseks/mahamiseks kindla väärtuste kogumi põhjal.
  • Nüüd on võimalik lisada kommentaare plokkidesse «CREATE DATABASE» ja «ALTER DATABASE».
  • Lisatud on konstruktsioonid indeksite ja veergude ümbernimetamiseks «ALTER TABLE … RENAME INDEX / KEY» ja «ALTER TABLE … RENAME COLUMN«.
  • «ALTER TABLE» ja «RENAME TABLE» operatsioonis on lisatud toeks tingimus «IF EXISTS», et teostada operatsioon ainult juhul, kui tabel eksisteerib;
  • Indeksite jaoks «CREATE TABLE» on sisse viidud atribuut «VISIBLE«.
  • Lisatud on väljend «CYCLE» rekursiivsete tsüklite tuvastamiseks CTE.
  • Lisatud funktsioonid JSON_ARRAYAGG ja JSON_OBJECTAGG tagastamiseks massiiv või JSON objekt määratud veeru väärtustega.
  • Lisatud on teenindustabelid (THREAD_POOL_GROUPS, THREAD_POOL_QUEUES, THREAD_POOL_STATS ja THREAD_POOL_WAITS) voogedastuseks (thread_pool).
  • Väljend ANALYZE on laienenud, näidates aega, mis kulub WHERE ploki kontrollimiseks ja abitegevuste teostamiseks.
  • Vahemike töötlemise optimeerijas on arvesse võetud tunnuseid «IS NOT NULL»
  • Ajutiste failide suurust, mida kasutatakse sortimise ajal koos tüüpi VARCHAR, CHAR ja BLOB-ga, on oluliselt vähendatud.
  • Uues binaarne logi, kasutatud replikeerimise korraldamiseks, on lisatud uusi metaandmete välju, sealhulgas primaire võti, veeru nimi, tähemärgisüsteem ja geomeetria tüüp. Mariadb-binlog utiliidis ja käskudes «SHOW BINLOG EVENTS» ja «SHOW RELAYLOG EVENTS» on näidatud replikeerimise lippe.
  • Construcția DROP TABLE nüüd usaldusväärselt eemaldab tabelid, mis jäävad salvestusagendi alla, isegi kui «.frm» või «.par» faile pole.
  • On rakendatud riistvaraliselt kiirendatud versioon funktsioonist crc32() AMD64, ARMv8 ja POWER 8 CPU-de jaoks.
  • Mõned vaikeparameetrid on muudetud. Parameeter innodb_encryption_threads on tõstetud 255-ni ja max_sort_length väärtus on suurendatud 4-lt 8-le.
  • On esitatud mitmeid InnoDB mootorite jõudluse optimeerimisi.
  • Galera sünkroonse multi-master replikeerimise mehhanismi on lisatud täielik tugi GTID (Globaalne tehingu ID), mis on kõigi klastrite sõlmede jaoks ühised tehingu identifikaatorid.
  • On toimunud üleminek uuele raamatukogu harule PCRE2 (Perl Ühilduvad Regulaaravaldused), selle asemel klassikaline seeria PCRE 8.x.
  • On ette pandud uued sidemed MariaDB ja MySQL andmebaasi ühendamiseks Python ja C programmeerimiskeeltes: MariaDB Connector/Python 1.0.0 ja MariaDB Connector/C 3.1.9. Pythoni side vastab Python DB API 2.0-le, on kirjutatud C keeles ja kasutab serveriga ühendamiseks Connector/C teeki.

Allikas: opennet.ru

Osta usaldusväärne hostimine veebilehtede jaoks DDoS-i kaitsega, VPS VDS serverid 🔥 Osta usaldusväärne hostimine veebilehtede jaoks DDoS-i kaitsega, VPS VDS serverid | ProHoster