Lëshimi stabil i DBMS MariaDB 10.5

Pas një vit zhvillimi dhe katër versione paraprake është përgatitur lëshimi i parë stabil i degës së re të DBMS MariaDB 10.4, në kuadër të të cilës zhvillohet një dege nga MySQL, e cila ruan ndërkompatibilitetin dhe dallohet me integrimin e motorëve të ruajtjes shtesë dhe mundësive të zgjeruara. Mbështetje për këtë degë do të ofrohet për 5 vjet, deri në qershor 2025.

Zhvillimi i MariaDB mbikëqyret nga një organizatë e pavarur, Fondacioni MariaDB, në përputhje me një proces të plotë të hapur dhe transparent zhvillimi që nuk varet nga prodhues të veçantë. MariaDB ofrohet si zëvendësim për MySQL në shumë shpërndarje Linux (RHEL, SUSE, Fedora, openSUSE, Slackware, OpenMandriva, ROSA, Arch Linux, Debian) dhe është implementuar në projekte të mëdha si Wikipedia, Google Cloud SQL dhe Nimbuzz.

Çelësore përmirësime MariaDB 10.5:

  • Shtuar motorin e ruajtjes S3, që lejon vendosjen e tabelave MariaDB në Amazon S3 ose ndonjë ruajtës tjetër publik ose privat të cloud që mbështet API S3. Mbështetet vendosja në S3 e tabelave si normale, ashtu edhe të ndara (particionuara). Kur tabela të ndara vendosen në cloud, ato mund të përdoren drejtpërdrejt gjithashtu nga një server tjetër që ka akses në ruajtjen S3.
  • Shtuar motorin e ruajtjes ColumnStore, i cili ruan të dhënat në lidhje me kolonat dhe përdor arkitekturën e distribuar masiv-paralel. Ky motor bazohet në zhvillimet e ruajtjes MySQL InfiniDB dhe është i dizenjuar për të organizuar përpunimin dhe ekzekutimin e pyetjeve analitike mbi grupe të mëdha të dhënash (Data Warehouse).
    ColumnStore ruan të dhënat jo rresht pas rreshti, por me ndarje sipas kolonave, duke lejuar optimizimin e ekzekutimit të grumbullimit të kolonave nga baza e të dhënave të mëdha, duke përfshirë petabayte të dhënash. Mbështetet shkallëzimi linear, ruajtja e të dhënave në formë të kompresuar, ndarje vertikale dhe horizontale, ekzekutimi efikas i pyetjeve konkurruese.
  • Të gjithë skedarët ekzekutues që fillojnë me fjalën «mysql» janë rinameduar duke përdorur fjalën «mariadb». Emrat e vjetër mbahen në formën e lidhjeve simbolike.
  • Shtuar një tip të ri të dhënash INET6 për ruajtjen e adresave IPv6.
  • Punë është kryer për të ndarë privilegjet në përbërës më të vegjël. Në vend të privilegjit të përgjithshëm SUPER, ofrohet një seri privilegjesh të veçanta «BINLOG ADMIN»,
    «BINLOG REPLAY»,
    «CONNECTION ADMIN»,
    «FEDERATED ADMIN»,
    «READ_ONLY ADMIN»,
    «REPLICATION MASTER ADMIN»,
    «REPLICATION SLAVE ADMIN» dhe
    «SET USER».
  • Privilegi «REPLICATION CLIENT» është rinameduar në «BINLOG MONITOR», dhe shprehja «SHOW MASTER STATUS» në «SHOW BINLOG STATUS». Rinamedimi saktëson sjelljen dhe nuk është i lidhur me korrektësinë politike, projekti nuk heq dorë nga terminologjitë master/slave dhe madje ka shtuar privilegje të reja «MASTER ADMIN» dhe «SLAVE ADMIN». Në të njëjtën kohë, në shprehjet SQL është shtuar një çelës i ri «REPLICA», i cili është sinonim i «SLAVE».
  • Për disa shprehje janë ndryshuar privilegjet e nevojshme për ekzekutimin e tyre. «SHOW BINLOG EVENTS» tani kërkon të drejtat «BINLOG MONITOR» në vend të «REPLICATION SLAVE», «SHOW SLAVE HOSTS» kërkon privilegjin «REPLICATION MASTER ADMIN» në vend të «REPLICATION SLAVE», «SHOW SLAVE STATUS» kërkon të drejtat «REPLICATION SLAVE ADMIN» ose «SUPER» në vend të «REPLICATION CLIENT», «SHOW RELAYLOG EVENTS» kërkon të drejtat «REPLICATION SLAVE ADMIN» në vend të «REPLICATION SLAVE».
  • Shtuar konstruksione «INSERT … RETURNING» dhe «REPLACE … RETURNING«, që kthejnë një listë të rreshtave të futur/zëvendësuar në formën siç do të ktheheshin vlerat duke përdorur shprehjen SELECT (si në rastin e «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 |
    +——+———+———+———-+

  • Shtuar shprehjet «EXCEPT ALL» dhe «INTERSECT ALL» për përjashtimin/shtesën e rezultatit me një grup të caktuar vlerash.
  • Hapësira për të shtuar komente brenda blloqeve «CREATE DATABASE» dhe «ALTER DATABASE» është mundësuar.
  • Shtuar konstruksione për rinominimin e indeksëve dhe kolonave «ALTER TABLE … RENAME INDEX / KEY» dhe «ALTER TABLE … RENAME COLUMN«.
  • Në operacionin «ALTER TABLE» dhe «RENAME TABLE» është shtuar mbështetje për kushtin «IF EXISTS» për të realizuar operacionin vetëm kur tabela ekziston;
  • Për indeksët në «CREATE TABLE» është realizuar atributi «VISIBLE«.
  • Shtuar shprehja «CYCLE» për identifikimin e cikleve rekurzive CTE.
  • Funksionet e reja JSON_ARRAYAGG dhe JSON_OBJECTAGG për të kthyer një array ose objekt JSON me vlerat e kolonës së caktuar.
  • Shtuar tabela informative të ndihmës (THREAD_POOL_GROUPS, THREAD_POOL_QUEUES, THREAD_POOL_STATS dhe THREAD_POOL_WAITS) për grupin e thread-ëve (thread_pool).
  • Shprehja ANALYZE është zgjeruar me tregimin e kohës që shpenzohet për verifikimin e blokut WHERE dhe përfundimin e operacioneve të ndihmës.
  • Në optimizatorin e përpunimit të intervaleve janë marrë parasysh shenjat «IS NOT NULL»
  • Në mënyrë të rëndësishme është reduktuar madhësia e skedarëve të përkohshëm që përdoren gjatë renditjes me tipet VARCHAR, CHAR dhe BLOB.
  • logu binar, i përdorur për organizimin e replikimit, është shtuar me fushat e reja të metadata, përfshirë Çelësin Kryesor, Emrin e Kolonës, Shkallën e Karaktereve dhe Llojin e Gjeometrics. Në utilitarin mariadb-binlog dhe komandat «SHOW BINLOG EVENTS» dhe «SHOW RELAYLOG EVENTS» është siguruar shfaqja e flamujve të replikimit.
  • Konstruksioni DROP TABLE tani është besueshëm tërheq tabelat që mbeten në motorin e ruajtjes, edhe në mungesë të skedarëve «.frm» ose «.par».
  • Është realizuar një varianti i përshpejtuar harduerik i funksionit crc32() për CPU AMD64, ARMv8 dhe POWER 8.
  • Janë ndryshuar disa cilësime të paracaktuara. Parametri innodb_encryption_threads është rritur në 255, dhe vlera max_sort_length është rritur nga 4 në 8.
  • Janë prezantuar shumë optimizime të performancës së motorit InnoDB.
  • Në mekanizmin e replikimit multi-master me sinkronizim Galera është shtuar mbështetje e plotë GTID (Global Transaction ID), identifikuesve të transaksioneve të përbashkëta për të gjitha nyllat e klashtër.
  • Është realizuar kalimi në degën e re të bibliotekës PCRE2 (Perl Compatible Regular Expressions), në vend të serisë klasike PCRE 8.x.
  • Janë propozuar versione të reja të lidhjeve për lidhjen me DBMS MariaDB dhe MySQL nga programet në gjuhët Python dhe C: MariaDB Connector/Python 1.0.0 dhe MariaDB Connector/C 3.1.9. Lidhja për Python përputhet me Python DB API 2.0, është shkruar në gjuhën C dhe përdor bibliotekën Connector/C për lidhjen me serverin.

Burimi: opennet.ru

Bleni hostim të besueshëm për faqe me mbrojtje nga DDoS, serverë VPS VDS 🔥 Bleni hostim të besueshëm për faqe me mbrojtje nga DDoS, serverë VPS VDS | ProHoster