Порівняння mysql vs mariadb, losst
Йшли роки і за цей час MariaDB почала використовуватися в багатьох дистрибутивах Linux за замовчуванням. Вона використовується для забезпечення роботи більшості сайтів інтернету. У цій статті ми спробуємо виконати порівняння MySQL vs MariaDB і розібратися чому друга краще першої та коли потрібна саме оригінальна MySQL.
1. Процес розробки
На відміну від багатьох інших проектів з відкритим вихідним кодом отриманих від Sun Microsystems, Oracle досі розвиває MySQL. Після того як багато розробників подали у відставку, були найняті нові люди. Але розробка нових версій MySQL ведеться закрито. Вихідний код доступний тільки команді розробників і вивантажується в публічний репозиторій тільки після завершення роботи. Всі рішення обговорюються всередині компанії
MariaDB розробляється повністю відкрито, всі рішення і нові ідеї стосовно розвитку можуть вільно обговорюватися в email розсилці, а також системі повідомлень про помилки. Допомогти в розробці MariaDB дуже легко, патчі від користувачів приймаються також, як і від розробників. В цілому MariaDB розвивається більш активно.
Через розкрученості бренду у MySQL все ще є велика спільнота, але все більше і більше проектів переходять на MariaDB. Такі відомі корпоративні дистрибутиви, як REHL 7 і SLES 12 вже використовують MariaDB, а це значить, що в битві MySQL або MariaDB переможе остання.
2. Частота релізів
Політика Oracle - випускати оновлення безпеки для всіх своїх продуктів кожні три місяці. Але вихід нової версії MySQL запланований кожні два місяці. Це часто призводить до того, що оновлення продукту та оновлення безпеки не синхронізовані.
Розробники не встигають закрити всі повідомлення про помилки і уразливості, в результаті чого база даних може залишатися вразливою кілька місяців. Ще одна проблема MySQL в тому, що оновлення безпеки дуже розпливчасті. Якщо адміністратор не може просто оновити програму до нової версії, то створити бекпорт складно.
MariaDB випускає оновлення програми та оновлення безпеки синхронізовано, тому всі помилки встигають виправити. Всі виправлені CVE задокументовані і будь-який користувач може дізнатися що змінилося в новій версії.
4. Можливості і функціональність
В цілому MariaDB розвивається швидше і має більше можливостей. Ці можливості стосуються оптимізації, поліпшення роботи з пам'яттю, і багато іншого. Зазвичай, з часом, ці можливості переносяться в MySQL. Наприклад, та ж підтримка GIS з'явилася в MariaDB раніше, ніж в MySQL. Серед іншого MariaDB має безліч поліпшень продуктивності Inodb, MyISAM і движка обробки запитів, підтримує GIS, ліквідацію таблиць, віртуальні і динамічні колонки, реплікацію з кількома джерелами, ролі і багато іншого.
Але у MariaDB є і свої мінуси, вона не підтримує деякі можливості, які є в MySQL. А саме, MariaDB несумісна з синтаксисом JSON MySQL, не підтримуються плагіни ngram, MeCab, MySQL X, а також простору таблиць, які дозволяють привласнювати дані декількох таблиць одночасно. Але розробники активно працюють над виправленням недоліків.
5. Підтримка движків зберігання даних
Система управління базами даних MariaDB підтримує набагато більше движків для зберігання даних. Більшість цих движків доступні в якості плагінів для MySQL, але в MariaDB вони включені в офіційний реліз. Це означає, що движки правильно інтегровані і будуть добре працювати. Ось список підтримуваних движків:
- Aria;
- XtraDB - поліпшена версія InnoDB;
- FederatedX - поліпшена версія Federated;
- OQGRAPH;
- SphinxSE;
- IBMDB2I;
- TokuDB;
- Cassandra;
- CONNECT;
- SEQUENCE;
- Spider;
- ColumnStore;
- MySIAM.
Нагадаю, що оригінальна MySQL підтримує за замовчуванням тільки три типи таблиць - Aria, MySIAM і InnoDB. Це важливий аспект у виборі MySQL або MariaDB.
6. Ім'я та нумерація версій
Що стосується версій, то спочатку, до версії 5.6 версії MariaDB нумеровались синхронно до версій MySQL, на яких вони були засновані. Але коли накопичилося достатньо змін і за основу став братися код MariaDB номера версій було прийнято поміняти на 10. З того моменту нумерація MariaDB виконується тільки так.
У цій статті ми зробили порівняння MySQL vs MariaDB. За більшістю параметрів MariaDB набагато краще, ніж MySQL, тому не дарма більшість дистрибутивів Linux тепер використовують її за замовчуванням в своїх репозиторіях. Оригінальна версія може знадобитися тільки в дуже рідкісних випадках.