Membase может кто-то объяснить идею их технологии - PullRequest
7 голосов
/ 12 августа 2011

Уже четвертый день, как я начал изучать CouchDB, в частности Membase (Couchbase), Membase кажется мне действительно интересной технологией из-за простоты администрирования, их интерфейс такой же волшебный, как неформальный и простой. То, как вы добавляете / удаляете ведра, просто забавно.

К сожалению, мне не удалось запустить их .NET-клиент в Mac OS X (в Windows он работал нормально), а также не смог найти способ выполнения запросов Map / Reduce, поэтому казалось, что технология Membase Server мало проще, чем чистый CouchDB. Как бы то ни было, до недавнего времени все изменилось. Я наткнулся на диаграмму, описывающую их технологию:

enter image description here

Изображение объяснено здесь

Кажется, что "Couchbase server (в настоящее время Membase Server)" играет роль некоторой базы данных Master, к которой нет прямого доступа, а также есть "Couchbase Single Server", который играет роль клиентской базы данных, которая имеет все функции CouchDB (такие как запросы Map / Reduce)

Если так, то как выполняется "CouchSync"? Можно ли выполнить этот "CouchSync" из кода?

1 Ответ

8 голосов
/ 12 августа 2011

Прежде чем я расскажу вам, как работает CouchSync, я думаю, что мне было бы полезно рассказать, как развивалась история продукта Couchbase. Это сделает вещи более понятными. Около года назад Membase Server был впервые выпущен. Идея Membase Server заключалась в том, чтобы обеспечить постоянную сохранность memcached (уровень постоянства был sqlite) и простую в использовании технологию кластеризации. Затем около 6 месяцев назад компании Membase и CouchOne объединились в Couchbase. Непосредственно после слияния Couchbase продолжал предоставлять Membase Server, но теперь также предоставил Couchbase Single Server. Couchbase Single Server - это, по сути, CouchDB с GeoCouch, упакованным по умолчанию вместе со многими значительными улучшениями производительности. 29 июля 2011 года Couchbase объявила о предварительном просмотре первой версии Couchbase Server для разработчиков. Couchbase Server представляет собой комбинацию Couchbase Single Server и Membase. По сути, Couchbase заменил sqlite на CouchDB в качестве механизма сохранения. Таким образом, это в основном привело к тому, что продукт превратился из хранилища значений ключей в базу данных хранилища документов.

Так что же такое CouchSync?

CouchSync - это то, что Couchbase называет репликацией CouchDB. Это очень просто настроить как на Couchbase Server, так и на Couchbase Single Server и в CouchDB. Все, что это - поток изменений, который передается с одного сервера на другой.

Примечание по использованию Membase. Поскольку Membase не предоставляет никакой поддержки CouchDB, она фактически не вписывается в эту диаграмму и поэтому не поддерживает CouchSync. Вы действительно захотите посмотреть предварительный просмотр Couchbase Server для разработчиков, так как этот продукт имеет функции как Membase, так и CouchDB. В то же время, если вы ищете что-то более стабильное для тестирования, взгляните на Couchbase Single Server, поскольку он сможет дать вам представление о некоторых функциях (таких как CouchSync), которые есть в Couchbase Server

Кроме того, цель этой диаграммы - показать, что вы можете использовать CouchSync для всей линейки продуктов Couchbase. Вам не нужно проходить через Couchbase Single Server, чтобы сделать CouchSync для Couchbase Mobile. Вы можете сделать CouchSync напрямую с сервера Couchbase.

Можно ли выполнить CouchSync из кода? Нет, это проще, чем это. Вы устанавливаете это в веб-интерфейсе.

Надеюсь, это поможет.

[EDIT]: Эта диаграмма устарела. Couchbase компания больше не поддерживает Couchbase Single Server (это его версия CouchDB). Функция CouchSync теперь будет синхронизироваться напрямую с сервером Couchbase.

...