Ny væsentlig gren af ​​MariaDB 11 DBMS introduceret

10 år efter grundlæggelsen af ​​10.x-grenen frigives MariaDB 11.0.0, hvilket bringer flere store forbedringer og bryder kompatibilitetsændringer. Filialen er stadig i alpha release kvalitet og vil være klar til produktionsapplikationer efter stabilisering. Den næste væsentlige gren af ​​MariaDB 12, der indeholder ændringer, der bryder kompatibiliteten, forventes ikke at være tidligere end 10 år (i 2032).

MariaDB-projektet udvikler en gaffel fra MySQL, der bibeholder bagudkompatibilitet, hvor det er muligt, og som er kendetegnet ved integration af yderligere lagermotorer og avancerede funktioner. MariaDB udvikling overvåges af den uafhængige MariaDB Foundation, efter en åben og gennemsigtig udviklingsproces uafhængig af individuelle leverandører. MariaDB erstatter MySQL på mange Linux-distributioner (RHEL, SUSE, Fedora, openSUSE, Slackware, OpenMandriva, ROSA, Arch Linux, Debian) og er blevet adopteret af store projekter som Wikipedia, Google Cloud SQL og Nimbuzz.

En vigtig forbedring i MariaDB 11-grenen er oversættelsen af ​​forespørgselsoptimeringsværktøjet til en ny vægtmodel (omkostningsmodel), som giver mere præcis forudsigelse af vægten af ​​hver forespørgselsudførelsesplan. Selvom den nye model eliminerer nogle flaskehalse i ydeevnen, er det muligt, at den ikke vil være optimal i alle scenarier, og nogle forespørgsler kan blive langsommere, så brugere opfordres til at deltage i test og underrette udviklere i tilfælde af problemer.

Den tidligere model fungerede godt til at finde det optimale indeks, men havde problemer med anvendeligheden af ​​tabelscanninger, indeksscanninger eller rækkeviddehentninger. I den nye model elimineres denne ulempe ved at ændre basisvægten af ​​operationer med lagermotoren. Ydeevneevalueringer for diskintensive operationer, såsom sekventielle skrivescanninger, forudsætter nu, at data er lagret på en SSD, der er i stand til 400 MB læsninger pr. sekund. Derudover blev andre vægtparametre for optimizeren tunet, hvilket for eksempel gjorde det muligt at implementere muligheden for at anvende indekser til ORDER BY/GROUP BY operationer i underforespørgsler og fremskynde arbejdet med meget små tabeller.

Det bemærkes, at den nye vægtmodel gør det muligt at vælge en mere optimal plan for udførelse af forespørgsler i følgende situationer:

  • Når du bruger forespørgsler, der strækker sig over mere end 2 tabeller.
  • Når der er indekser, der indeholder et stort antal identiske værdier.
  • Ved brug af områder, der dækker mere end 10 % af tabellen.
  • Når du har komplekse forespørgsler, hvor ikke alle brugte kolonner er indekseret.
  • Når der bruges forespørgsler, der involverer forskellige lagermotorer (f.eks. når en forespørgsel indeholder adgang til tabeller i InnoDB- og Memory-motorerne).
  • Når du bruger FORCE INDEX til at forbedre forespørgselsplanen.
  • Når forespørgselsplanen forværres i tilfælde af brug af "ANALYSE TABEL".
  • Når forespørgslen spænder over et stort antal visninger (stort antal indlejrede SELECT'er).
  • Når du bruger ORDER BY eller GROUP BY klausuler, der matcher indekser.

Større kompatibilitetsbrud i MariaDB 11-grenen:

  • SUPER-rettigheder tillader dig ikke længere at udføre handlinger, for hvilke der er tilgængelige separat indstillede privilegier. For eksempel vil ændring af formatet på binære logfiler kræve BINLOG ADMIN-rettigheder.
  • Fjernet ændringsbufferimplementering i InnoDB.
  • Forældet innodb_flush_method og innodb_file_per_table.
  • Understøttelse af mysql*-navne er blevet udfaset.
  • Forældet indstilling af explicit_defaults_for_timestamp til 0.
  • Symbolske links er blevet flyttet til en separat pakke for kompatibilitet med MySQL.
  • Værdien af ​​parameteren innodb_undo_tablespaces er blevet ændret fra standard til 3.

Kilde: opennet.ru

Tilføj en kommentar