شاخه مهم جدیدی از MariaDB 11 DBMS معرفی شده است

10 سال پس از تأسیس شعبه 10.x، MariaDB 11.0.0 منتشر شد که چندین پیشرفت و تغییرات قابل توجه را ارائه داد که سازگاری را شکست. این شعبه در حال حاضر دارای کیفیت انتشار آلفا بوده و پس از تثبیت آماده استفاده تولید خواهد بود. شاخه اصلی بعدی MariaDB 12، حاوی تغییراتی است که سازگاری را از بین می برد، پیش از 10 سال آینده (در سال 2032) انتظار نمی رود.

پروژه MariaDB در حال توسعه یک فورک از MySQL است که در صورت امکان سازگاری با عقب را حفظ می کند و دارای موتورهای ذخیره سازی اضافی و قابلیت های پیشرفته است. توسعه MariaDB توسط بنیاد مستقل MariaDB، به دنبال یک فرآیند توسعه باز و شفاف که مستقل از فروشندگان فردی است، نظارت می شود. MariaDB DBMS به جای MySQL در بسیاری از توزیع های لینوکس (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 برای بهبود طرح پرس و جو.
  • هنگامی که طرح پرس و جو هنگام استفاده از "TABLE ANALYZE" بدتر می شود.
  • هنگامی که پرس و جو تعداد زیادی جداول مشتق شده را در بر می گیرد (تعداد زیادی از 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 تغییر یافته است.

منبع: opennet.ru

اضافه کردن نظر