MySQL 5.6.2 Теперь ещё и Memcached интерфейс!
![]()
Сегодня хочу рассказать вам отличную новость! Вышла новая экспериментальная версия MySQL 5.2.6 которая получила memcached интерфейс к InnoDB. Что же это значит? Буквально пол-года назад был сделан первый шаг в NoSQL направлении со стороны MySQL. Ну не самой компании, и не разработчиков, а вообще сторонней компании. Речь конечно идёт о HandlerSocket.
Oracle видимо поняла, что не стоит упускать NoSQL тренд и начала работать в этом направлении. Итак, что мы имеем сейчас.
– Плагин-демон Memcached протокола: и mysqld и memcached работают в одинаковых процессах, с очень маленьким временем доступа к данным
– Прямой доступ к InnoDB: без участия SQL-парсера и оптимизатора запросов
– Поддерживается стандартный протокол (memcapable): как и текстовый протокор memcached, так и бинарный протокол; все 55 тестов на memcapable пройдены
– Поддерживается запросы на нескольких колонок: пользователь может определить несколько колонок в значении поля “value”. Они разделаются спец-символом (разделителем), который задается в настройках.
– Настраиваемое локальное кэширование: в наличии три настройки – “cache-only”, “innodb-only”, и “caching” (“cache” + “innodb store”). Эти локальные настройки могут быть применены к четырем операциям memcached (set, get, delete и flush).
– Пакетные операции: пользователь может определить размер коммита для InnoDB-Memcached операций с помощью настроек “daemon_memcached_r_batch_size” и “daemon_memcached_w_batch_size” (по-умолчанию 32)
– Поддерживаются все настройки Memcached через переменную MySQL “daemon_memcached_option”
Думаю теперь можно достичь скорости HandlerSocket, если не больше. Надо смотреть тесты. А Memcached теперь вообще не нужен?!
Ссылки
http://habrahabr.ru/blogs/nosql/117381/
http://blogs.innodb.com/wp/2011/04/nosql-to-innodb-with-memcached/
http://blogs.oracle.com/mysql/2011/04/nosql_to_mysql_with_memcached.html
