Drizzle
-
Медіафайли у Вікісховищі
Drizzle — система керування базами даних, форк MySQL 6.0. Подібно до MySQL, Drizzle має клієнт-серверну архітектуру і використовує SQL як основну командну мову. Drizzle розповсюджується під 2-ю версією GNU General Public License (GPL) з частинами, включаючи протоколи носіїв і повідомленнями копіювання, ліцензовані під BSD.
Історія
Цей проект заснований колишнім директором MySQL з архітектури Браяном Ейкером[en] і став актуальним після прохолодного ставлення Oracle придбаної разом з Sun Microsystems у 2009 MySQL, і являє собою спрощений і швидший варіант MySQL, в якому відібрані і вилучені всі ресурсомісткі і малозатребувані можливості MySQL 5. Частина з цих можливостей можна реалізувати через спільні плагіни. Ця СКБД позиціонується як високошвидкісна і високонадійна БД, з підтримкою ACID-транзакцій. Як сховище використовується InnoDB і PBXT. Весь сі-шний початковий код з MySQL був повністю переписаний на мові C++. Управління проектом перебуває в руках незалежної спільноти.
На відміну від SQLite, Drizzle не претендує на роль вбудованого рішення і реалізований у вигляді сервера. Архітектура Drizzle побудована на основі ідеї мікро-ядра, сповідує максимальне спрощення структури БД і винесення логіки на бік застосунків. Зокрема, такий дизайн СКБД дозволяє організувати обробку величезного числа паралельних запитів, при виконанні яких повною мірою задіяні потужності сучасних багатоядерних центральних процесорів, як результат — 'овскіе пікові показники Drizzle інтенсивності обміну запитами-відповідями з вебзастосунком перевищують будь-який стандартний сервер MySQL.
Крім цього, в Drizzle додатково реалізовані вбудовані засоби для рознесення даних по ключовому полю (шардінг) на кластер з декількох машин, для створення ефективного балансування навантаження для наднавантажених проектів. У порівнянні з MySQL в Drizzle видалена підтримка збережених процедур (замість CREATE FUNCTION слід використовувати зв'язувані об'єкти), тригерів, кешу запитів (query cache), видів (view), операції GRANT і ALTER, обмежень ACL, команди SHOW, попередньо підготовлених запитів (prepared statement) тощо. Припинено підтримка маловикористовуваних типів даних з MySQL.
Для запуску багатьох рушіїв, написаних у зв'язці з MySQL, під Drizzle знадобиться модифікація і деякий тюнінг коду цих рушіїв, втім, як стверджують розробники, зміни ці невеликі і можливостей Drizzle насправді більш ніж досить для повноцінного функціонування більшості популярних CMS, тим більше що спільнота вже пристосувала багато відомих PHP-двигуни під Drizzle, що дозволяє показувати їхню рекордну продуктивність на тому ж обладнанні, на якому працював MySQL.
Побічним наслідком спрощення проекту стало підвищення рівня безпеки: зокрема Drizzle перестав бути вразливим до багатьох популярних різновидів sql-ін'єкцій для MySQL.
Виноски
- ↑ Архівована копія. Архів оригіналу за 28 березня 2013. Процитовано 21 жовтня 2012.
{{cite web}}
: Обслуговування CS1: Сторінки з текстом «archived copy» як значення параметру title (посилання)
Джерела
- Игорь Савчук. MySQL «на стероидах» [Архівовано 8 листопада 2010 у Wayback Machine.]
- Первый стабильный релиз СУБД Drizzle [Архівовано 20 березня 2011 у Wayback Machine.]
Посилання
- Drizzle FAQ[недоступне посилання з червня 2019]
- Brian Aker's «What If?» article on Drizzle [Архівовано 29 липня 2008 у Wayback Machine.]
- Michael Widenius's «What If» article on Drizzle [Архівовано 29 липня 2008 у Wayback Machine.]
- Drizzle homepage [Архівовано 24 листопада 2010 у Wayback Machine.]
- FLOSS interview with Brian on the future direction of Drizzle [Архівовано 14 серпня 2008 у Wayback Machine.]
|