PĂ€rast aasta arendust ja nelja eelvĂ€ljaannet on esimene stabiilne versioon uue andmebaasi haru kohta , mille raames areneb MySQL'ist eraldunud versioon, mis sĂ€ilitab tagasitagamise ĂŒhilduvuse ja 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 , ja .
Peamised :
- Lisa salvestusmootor , 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 , mis salvestab andmeid veergude kaupa ja kasutab jaotatud arhitektuuri. Mootor pĂ”hineb MySQL-hoidla 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 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 «" ja "», 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 «" ja "» 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 «» ja ««.
- «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 ««.
- Lisatud on vĂ€ljend «CYCLE» rekursiivsete tsĂŒklite tuvastamiseks .
- Lisatud funktsioonid ja 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 , 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 nĂŒĂŒd usaldusvÀÀrselt 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 (Globaalne tehingu ID), mis on kĂ”igi klastrite sĂ”lmede jaoks ĂŒhised tehingu identifikaatorid.
- On toimunud ĂŒleminek uuele raamatukogu harule (Perl Ăhilduvad Regulaaravaldused), selle asemel klassikaline seeria PCRE 8.x.
- On ette pandud uued sidemed MariaDB ja MySQL andmebaasi ĂŒhendamiseks Python ja C programmeerimiskeeltes: ja . Pythoni side vastab Python DB API 2.0-le, on kirjutatud C keeles ja kasutab serveriga ĂŒhendamiseks Connector/C teeki.
Allikas: opennet.ru
