Ներդրվել է MariaDB 11 DBMS-ի նոր նշանակալի մասնաճյուղ

10.x մասնաճյուղի հիմնադրումից 10 տարի անց թողարկվեց MariaDB 11.0.0, որն առաջարկեց մի քանի նշանակալի բարելավումներ և փոփոխություններ, որոնք խախտում էին համատեղելիությունը: Մասնաճյուղը ներկայումս գտնվում է ալֆա թողարկման որակի մեջ և կայունացումից հետո պատրաստ կլինի արտադրական օգտագործման համար: MariaDB 12-ի հաջորդ խոշոր մասնաճյուղը, որը պարունակում է փոփոխություններ, որոնք խախտում են համատեղելիությունը, սպասվում է ոչ շուտ, քան 10 տարի անց (2032 թ.):

MariaDB նախագիծը մշակում է պատառաքաղ MySQL-ից՝ հնարավորության դեպքում պահպանելով հետին համատեղելիությունը և հատկանշելով լրացուցիչ պահեստավորման շարժիչների և առաջադեմ հնարավորությունների ինտեգրում: MariaDB-ի մշակումը վերահսկվում է անկախ MariaDB հիմնադրամի կողմից՝ հետևելով բաց և թափանցիկ զարգացման գործընթացին, որը անկախ է առանձին վաճառողներից: MariaDB DBMS-ը մատակարարվում է MySQL-ի փոխարեն Linux-ի բազմաթիվ բաշխումներում (RHEL, SUSE, Fedora, openSUSE, Slackware, OpenMandriva, ROSA, Arch Linux, Debian) և իրականացվել է այնպիսի խոշոր նախագծերում, ինչպիսիք են Wikipedia, Google Cloud SQL և Nimbuzz:

MariaDB 11 մասնաճյուղի հիմնական բարելավումը հարցումների օպտիմիզատորի անցումն է նոր քաշային մոդելի (արժեքի մոդել), որն ապահովում է յուրաքանչյուր հարցման պլանի կշիռների ավելի ճշգրիտ կանխատեսում: Թեև նոր մոդելը կարող է թեթևացնել կատարողականի որոշ խոչընդոտներ, այն չի կարող օպտիմալ լինել բոլոր սցենարներում և կարող է դանդաղեցնել որոշ հարցումներ, ուստի օգտատերերը խրախուսվում են մասնակցել թեստավորմանը և ծանուցել ծրագրավորողներին, եթե խնդիրներ առաջանան:

Նախորդ մոդելը լավ էր գտնում օպտիմալ ինդեքսը, բայց խնդիրներ ուներ աղյուսակի սկանավորման, ինդեքսների սկանավորման կամ միջակայքի առբերման գործողությունների կիրառելիության հետ: Նոր մոդելում այս թերությունը վերացվում է պահեստավորման շարժիչով գործառնությունների բազային քաշը փոխելով: Սկավառակի արագությունից կախված գործառնությունների կատարողականությունը գնահատելիս, ինչպիսիք են հաջորդական գրելու սկանավորումը, մենք այժմ ենթադրում ենք, որ տվյալները պահվում են SSD-ի վրա, որն ապահովում է վայրկյանում 400 ՄԲ ընթերցման արագություն: Բացի այդ, կարգավորվել են օպտիմիզատորի այլ քաշային պարամետրեր, որոնք, օրինակ, հնարավորություն են տվել ենթահարցերում «ORDER BY/GROUP BY» գործողությունների համար ինդեքսներ օգտագործելու և շատ փոքր աղյուսակների հետ աշխատանքը արագացնելու հնարավորությունը:

Նշվում է, որ քաշի նոր մոդելը թույլ կտա ընտրել հարցումների կատարման ավելի օպտիմալ պլան հետևյալ իրավիճակներում.

  • 2-ից ավելի աղյուսակներ ընդգրկող հարցումներ օգտագործելիս:
  • Երբ դուք ունեք մեծ թվով նույնական արժեքներ պարունակող ինդեքսներ:
  • Աղյուսակի 10%-ից ավելին ընդգրկող միջակայքեր օգտագործելիս:
  • Երբ դուք ունեք բարդ հարցումներ, որոնցում ոչ բոլոր օգտագործված սյունակները ինդեքսավորված են:
  • Երբ օգտագործվում են հարցումներ, որոնք ներառում են պահեստավորման տարբեր շարժիչներ (օրինակ, երբ մեկ հարցում մուտք է գործում InnoDB և Memory շարժիչների աղյուսակներ):
  • Հարցման պլանը բարելավելու համար FORCE INDEX-ն օգտագործելիս:
  • Երբ հարցման պլանը վատանում է «ANALYZE TABLE»-ն օգտագործելիս:
  • Երբ հարցումն ընդգրկում է մեծ թվով ստացված աղյուսակներ (մեծ թվով տեղադրված SELECT-ներ):
  • ORDER BY կամ GROUP BY արտահայտություններ օգտագործելիս, որոնք ընկնում են ինդեքսների տակ:

MariaDB 11 մասնաճյուղում համատեղելիության հիմնական խնդիրները.

  • SUPER իրավունքներն այլևս թույլ չեն տալիս կատարել գործողություններ, որոնց համար հասանելի են առանձին սահմանված արտոնություններ: Օրինակ, երկուական տեղեկամատյանների ձևաչափը փոխելու համար ձեզ անհրաժեշտ են BINLOG ADMIN իրավունքները:
  • Հեռացվել է փոփոխության բուֆերի իրականացումը InnoDB-ում:
  • Innodb_flush_method-ը և innodb_file_per_table-ը հնացել են:
  • Mysql* անվանման աջակցությունը հնացել է:
  • Explicit_defaults_for_timestamp-ի 0-ի սահմանումը հնացել է:
  • Խորհրդանշական հղումները ներառված են առանձին փաթեթում՝ MySQL-ի հետ համատեղելիության համար:
  • Innodb_undo_tablespace պարամետրի լռելյայն արժեքը փոխվել է 3-ի:

Source: opennet.ru

Добавить комментарий