Predstavljena nova pomembna veja DBMS MariaDB 11

10 let po ustanovitvi veje 10.x je izdana različica MariaDB 11.0.0, ki prinaša več večjih izboljšav in prekinja spremembe združljivosti. Podružnica je še vedno v kakovosti izdaje alfa in bo po stabilizaciji pripravljena za produkcijsko uporabo. Naslednja pomembna veja MariaDB 12, ki vsebuje spremembe, ki motijo ​​združljivost, naj ne bi bila prej kot 10 let (leta 2032).

Projekt MariaDB razvija razcep iz MySQL, ki ohranja združljivost za nazaj, kjer je to mogoče, in se odlikuje po integraciji dodatnih mehanizmov za shranjevanje in naprednih funkcij. Razvoj MariaDB nadzoruje neodvisna fundacija MariaDB, ki sledi odprtemu in preglednemu razvojnemu procesu, neodvisnemu od posameznih prodajalcev. MariaDB nadomešča MySQL v številnih distribucijah Linuxa (RHEL, SUSE, Fedora, openSUSE, Slackware, OpenMandriva, ROSA, Arch Linux, Debian) in so jo sprejeli veliki projekti, kot so Wikipedia, Google Cloud SQL in Nimbuzz.

Ključna izboljšava v veji MariaDB 11 je prevod optimizatorja poizvedb v nov model uteži (stroškovni model), ki zagotavlja natančnejšo napoved uteži vsakega načrta izvajanja poizvedbe. Čeprav novi model odpravlja nekatera ozka grla pri delovanju, je možno, da ne bo optimalen v vseh scenarijih in se lahko nekatere poizvedbe upočasnijo, zato uporabnike spodbujamo, da sodelujejo pri testiranju in v primeru težav obvestijo razvijalce.

Prejšnji model je dobro deloval pri iskanju optimalnega indeksa, vendar je imel težave z uporabnostjo pregledov tabel, pregledov indeksov ali pridobivanja obsega. V novem modelu je ta pomanjkljivost odpravljena s spremembo osnovne teže operacij s hranilnikom. Ocene zmogljivosti za operacije, ki zahtevajo veliko diskov, kot je skeniranje zaporednega pisanja, zdaj predvidevajo, da so podatki shranjeni na SSD, ki omogoča 400 MB branja na sekundo. Dodatno so bili nastavljeni tudi drugi utežni parametri optimizatorja, ki so na primer omogočili uporabo indeksov za operacije ORDER BY/GROUP BY v podpoizvedbah in pohitrili delo z zelo majhnimi tabelami.

Opozoriti je treba, da bo novi model teže omogočil izbiro bolj optimalnega načrta izvajanja poizvedbe v naslednjih situacijah:

  • Pri uporabi poizvedb, ki obsegajo več kot 2 tabeli.
  • Kadar obstajajo indeksi, ki vsebujejo veliko število enakih vrednosti.
  • Pri uporabi obsegov, ki pokrivajo več kot 10 % tabele.
  • Ko imate zapletene poizvedbe, kjer niso indeksirani vsi uporabljeni stolpci.
  • Ko se uporabljajo poizvedbe, ki vključujejo različne mehanizme za shranjevanje (na primer, ko ena poizvedba vsebuje dostop do tabel v motorjih InnoDB in Memory).
  • Pri uporabi FORCE INDEX za izboljšanje načrta poizvedbe.
  • Ko se načrt poizvedbe poslabša v primeru uporabe "ANALIZA TABELE".
  • Ko poizvedba obsega veliko število pogledov (veliko število ugnezdenih SELECT-jev).
  • Pri uporabi klavzul ORDER BY ali GROUP BY, ki se ujemajo z indeksi.

Večje prekinitve združljivosti v veji MariaDB 11:

  • Pravice SUPER vam ne omogočajo več izvajanja dejanj, za katera so na voljo ločeno nastavljeni privilegiji. Na primer, spreminjanje formata binarnih dnevnikov bo zahtevalo pravice BINLOG ADMIN.
  • Odstranjena implementacija medpomnilnika sprememb v InnoDB.
  • Zastareli innodb_flush_method in innodb_file_per_table.
  • Podpora za imena mysql* je opuščena.
  • Zastarela nastavitev explicit_defaults_for_timestamp na 0.
  • Simbolične povezave so bile premaknjene v ločen paket zaradi združljivosti z MySQL.
  • Vrednost parametra innodb_undo_tablespaces je bila spremenjena s privzete na 3.

Vir: opennet.ru

Dodaj komentar