После двух лет альфа и бета тестирования анонсирован первый стабильный релиз СУБД Drizzle, готовый для повседневного использования. Проект Drizzle был основан в июле 2008 года с целью создания упрощенного и более быстрого варианта MySQL, в котором убрана поддержка утяжеляющих работу MySQL возможностей, которые планируется реализовать в виде плагинов. БД позиционируется как высоконадежная и поддерживающая ACID-транзакции. В качестве хранилища используется InnoDB и PBXT. Исходные тексты проекта переписаны на языке C++ и распространяются в рамках лицензии GPLv2. Инициатором проекта является Брайан Эйкер (Brian Aker), бывший директор MySQL AB по архитектуре, но управление разработкой Drizzle целиком находится в руках независимого сообщества.

По сравнению с MySQL в Drizzle удалена поддержка хранимых процедур (вместо CREATE FUNCTION следует использовать связываемые объекты), триггеров, кэша запросов (query cache), представлений (view), операции GRANT и ALTER, ограничений ACL, команды SHOW, предварительно подготовленных запросов (prepared statement). Прекращена поддержка следующих типов данных: SET, TIME, YEAR, TINYINT/SMALLIN/MEDIUMINT, TINYBLOB/MEDIUMBLOB/LONGBLOB, TINYTEXT/MEDIUMTEXT/LONGTEXT, UNSIGNED, GEOMETRY, POINT, LINESTRING, POLYGON, FULLTEXT. Из поддерживаемых типов данных отмечаются: INTEGER, BIGINT, DOUBLE/FLOAT, DECIMAL/NUMERIC, VARCHAR, BLOB, TEXT, DATE, TIMESTAMP, DATETIME, ENUM.

В отличие от SQLite, СУБД Drizzle не претендует на роль встраиваемого решения и реализована в виде сервера. Архитектура Drizzle построена на основе идеи микро-ядра и подключаемых через модули дополнительных возможностей. В СУБД основной упор делается на оптимизацию для работы в Cloud-инфраструктуре и для обеспечения работы web-приложений (максимальное упрощение структуры БД и вынос логики на сторону приложений). В частности, дизайн СУБД позволяет организовать обработку большого числа параллельных запросов, при выполнении которых в полной мере задействуются мощности многоядерных CPU. Имеются встроенные средства для разнесения данных по ключевому полю (шардинг) на кластер из нескольких машин.

Большое внимание также уделяется процессу упрощения выполнения типовых задач по использованию и администрированию СУБД. Возможности репликации в Drizzle обеспечиваются через передачу лога транзакций, поддержка работы в slave-режиме реализована в виде отдельного плагина. Функции по упрощению миграции с MySQL поддерживаются в штатной утилите drizzledump. Для выполнения административных функций подготовлена утилита drizzleadmin. В отличие от MySQL, код клиентской библиотеки libdrizzle распространяется в рамках лицензии BSD.

Источник: http://www.opennet.ru/opennews/art.shtml?num=29937