"Memcachedb is a distributed key-value storage system designed for persistent."
(с) пдфка с презентацией этой бд, которую я настоятельно рекомендую пролистать всем: http://memcachedb.org/memcachedb-guide-1.0.pdf
Зачем?
MemcacheDB -- очень быстрая не реляционная БД (основана на ключах), имеющая поддержку транзакций, репликаций, а также имеющая универсальный АПИ (как раз от Memcached`а). Эта БД нужна там, где скорости MySQL / PostgreSQL недостаточно, а их функций предостаточно. По заявлениям разработчиков, скорость записи в MemcacheDB может достигать 20 000 записей в секунду, а чтения -- до 50 000 записей / секунду (на машинке Dell 2950III); не правда ли, неплохо?
+ искаропки мы получаем такую фичу как горячие бэкапы БД.
Кто авторы и где офсайт?
Официальный сайт этой БД: http://memcachedb.org/
Как поставить?
Ставить мы будем стабильную 1.2.0 версию вот отсюда: http://code.google.com/p/memcachedb/downloads/list
Итак, мануал по установке вот тута: http://memcachedb.googlecode.com/svn/trunk/INSTALL
Мануал в целом отличный, но от меня будут следующие правки к нему (диффы, надеюсь, все читать умеют? Для тех, кто не умеет: с минусом строка, которую удаляем, с плюсом -- та, которую добавляем):
BDB:
-$../dist/configure
+$../dist/configure --prefix=/opt/bdb47
libevent:
-$./configure
+$./configure --prefix=/opt/livevent13e
По поводу .so:
Вот это:
Load .so file by add two line in /etc/ld.so.conf:
/usr/local/lib
/usr/local/BerkeleyDB.4.7/lib
Заменяем на:
/opt/livevent13e/lib
/opt/bdb47/lib
MemcachDB:
-$./configure --enable-threads
+$./configure --enable-threads --prefix=/opt/memcacnedb120 --with-libevent=/opt/livevent13e --with-bdb=/opt/bdb47
Правки обусловлены тем, что я не привык засорять систему мусором, поэтому ставлю все, собранное из сорцов, в /opt.
Ну вот и всё, пробуем запустить собраный бинарик: /opt/memcacnedb120/bin/memcachedb -h. О запуске в "продакшен" режиме и о работе с этой БД расскажу в следующих статьях :)
Я написал Source RPM (SRPM) для memcachedb.
ReplyDeleteКультурно оформил логирование, вынес конфигурацию в /etc/sysconfig/memcachedb.
Теперь удобно инсталировать/деинсталировать/апдейтить memcachedb на Redhat-совместимых платформах.
Скомпилировать под свой дистрибутив очень просто: ставим memcachedb-*.src.rpm и в папке ~/rpmbuild/SPECS/ запускаем
rpmbuild -ba memcachedb.spec