URL: https://www.opennet.ru/cgi-bin/openforum/vsluhboard.cgi
Форум: vsluhforumID3
Нить номер: 99301
[ Назад ]

Исходное сообщение
"Выпуск СУБД Couchbase Server 3.0, сочетающей возможности Cou..."

Отправлено opennews , 08-Окт-14 15:47 
После двух лет разработки представлена (http://www.couchbase.com/press-releases/couchbase-server-3_0...) новая значительная ветка СУБД Couchbase Server 3.0 (http://www.couchbase.com/couchbase-server/overview). Couchbase Server относится к классу NoSQL-систем и предоставляет похожие на Apache CouchDB (https://www.opennet.ru/opennews/art.shtml?num=39981) средства для создания документ-ориентированных баз данных в сочетании с напоминающими Membase (https://www.opennet.ru/opennews/art.shtml?num=28267) хранилищами в формате ключ-значение. При этом, благодаря поддержке стандартного протокола memcached, система остаётся совместимой с большим число уже имеющихся приложений и может выступать в роли прозрачной замены других NoSQL-систем.  Код системы распространяется (http://www.couchbase.com/couchbase-open-source-project) под лицензией Apache.


Проект создан объединённой командой разработчиков CouchDB и  Membase, основанной после слияния (https://www.opennet.ru/opennews/art.shtml?num=29528) компании CouchOne и Membase.
Отбросив детали,  Couchbase Server можно рассматривать как бэкенд хранилища на основе технологий Membase, поверх которого добавлены движки для индексации и формирования запросов CouchDB. Таким образом удалось добиться совместимости с Apache CouchDB на уровне оформления запросов и индексов, и совместимости с Membase на уровне протокола доступа к данным и управляющего API. Критичные к производительности части CouchDB были переписаны на языке C++, но многие подсистемы по-прежнему остаются на языке Erlang.  Для разработки приложений на языках Java, Ruby, .NET, C/C++, PHP, Node.js и Python подготовлены специальные SDK (http://www.couchbase.com/develop).


Couchbase Server отличается высокой масштабируемостью и позволяет организовать хранение данных как на одном сервере, так и в форме распределённой системы, размещающей данные поверх группы серверов. В том числе имеются встроенные средства для обеспечения высокой доступности, самовосстановления в случае сбоя обслуживающих хранилище узлов (данные могут дублироваться на разных узлах) и построения сегментированных хранилищ, копии которых разнесены по разным датацентрам и приближены к конечным пользователям. Поддерживаются как однонаправленные ("master-slave"), так и двунаправленные ("master-master") режимы репликации. Поддерживается создание первичных и вторичных индексов, а также индексов по нескольким ключам. Для дополнительной оптимизации производительности  применяются  встроенные механизмы кэширования в оперативной памяти и средства автоматической генерации индексов.


Помимо возможности хранения данных в формате ключ/значения, Couchbase Server позволяет использовать концепцию документ-ориентированного хранилища, в котором в качестве единицы хранения данных выступает документ, имеющий уникальный идентификатор, версию и содержащий произвольный набор именованных полей в формате ключ/значение. Используемая в Couchbase Server модель данных позволяет определять документы в формате JSON, снимая с разработчика необходимость определения схемы хранения. Запросы и индексация данных  могут выполняться в соответствии с парадигмой MapReduce. Для организации псевдо-структурированного набора данных из произвольных документов предлагается концепция формирования представлений (view). Для формирования логики выборки используется язык JavaScript.


<center><a href="http://www.couchbase.com/sites/default/files/uploads/all/new... src="https://www.opennet.ru/opennews/pics_base/0_1412752805.jpg" style="border-style: solid; border-color: #e9ead6; border-width: 15px;max-width:100%;" title="" border=0></a></center>


Основные (http://docs.couchbase.com/admin/admin/Whats-new-3.0.html) новшества (http://docs.couchbase.com/admin/admin/rel-notes/rel-notes3.0...):


-  Увеличение производительности и масштабируемости: до 50 раз возросла скорость индексации, до двух раз увеличилась скорость ребалансировки, до 8 раз сокращено время восстановления узла после сбоя.
-  Новый протокол DCP (http://docs.couchbase.com/admin/admin/Concepts/dcp.html)  (Database Change Protocol) для обмена данными между узлами в процессе ребалансировки, репликации и восстановления, а также для  организации работы охватывающих несколько узлов представлений. Ключевой особенностью нового протокола является использование оперативной памяти для обработки данных об изменениях, вместо их чтения с диска, что привело к заметному увеличению производительности практически во всех областях работы с БД, от репликации и индексирования до работы с представлениями;


-  Функция Dynamically Tunable Memory, позволяющая на лету выбирать оптимальные методы распределения памяти, оптимизации метаданных и стратегию кэширования (можно явно указать как много данных можно держать в памяти и на диске), что упрощает создание различных типов конфигурации - от размещаемых исключительно в памяти БД, до больших дисковых хранилищ;

-  Средства для автоматической настройки параметров и ресурсов с учётом возможностей текущего оборудования для сокращения задержек и увеличения пропускной способности ввода/вывода;

-  Концепция общего пула потоков (Shared thread pool) для каждого узла, позволяющая увеличить пропускную способность ввода/вывода и сократить задержки при выполнения чтения, записи и прочих операций;

-  Благодаря использованию нового протокола DCP, в новом выпуске реализована возможность репликаци между дата-центрами в режиме из памяти в память. Использование нового режима позволяет до 4 раз снизить задержки в процессе репликации. Кроме того, повышена эффективность обработки внештатных ситуаций, таких как прерывание сетевого соединения в процессе репликации - после восстановления соединения репликация автоматически будет продолжена с прерванной позиции.

-  Добавлена опция для выполнения инкрементального резервного копирования, которая дополнила собой ранее предлагаемый режим создания полного бэкапа. При инкрементальном режиме в резервную копию включаются только изменения относительно прошлого бэкапа, что позволяет заметно сэкономить дисковое пространство и сократить время выполнения операции, как следствие появляется возможность совершать бэкапы более часто;

-  Добавлен новый режим быстрого восстановления узла после сбоя, позволяющий до 8 раз сократить время на реактивацию узла;

-  Усиление безопасности: возможность шифрования канала связи между клиентом и сервером; поддержка доступа к REST API и консоли управления через HTTPS;

-  Упрощение средств для управления кластером и распределения ресурсов. Возможность приостановки и возобновления репликации между разными кластерами на время проведения технических работ.  Поддержка режима "graceful failover" для мягкого выведения узлов из кластера по запросу администратора для проведения обслуживания. Поддержка инкрементальной актуализации данных при восстановлении ранее выведенного из работы узла. Средства диагностики на уровне всего кластера;

-  В инструментарий для разработчиков добавлена встроенная поддржка объектов JSON с автоматической сериализацией данных через Couchbase API, не требующая использования внешних JSON-библиотек. В Java и .NET SDK добавлена поддержка асинхронных интерфейсов. Обеспечена интеграция с  фреймворками, такими как  Spring, gEvent, Twisted и Ottoman.


URL: http://www.couchbase.com/press-releases/couchbase-server-3_0...
Новость: https://www.opennet.ru/opennews/art.shtml?num=40775


Содержание

Сообщения в этом обсуждении
"Выпуск СУБД Couchbase Server 3.0, сочетающей возможности Cou..."
Отправлено Аноним , 08-Окт-14 15:57 
> до 50 раз возросла скорость индексации

ох лол, радиус кривизны рук кодившего не вписывается в евклидово пространство.


"Выпуск СУБД Couchbase Server 3.0, сочетающей возможности Cou..."
Отправлено Аноним , 08-Окт-14 16:45 
Прячься, анонимные иксперты в треде!

"Выпуск СУБД Couchbase Server 3.0, сочетающей возможности Cou..."
Отправлено manster , 08-Окт-14 16:57 
Было бы интересно взглянуть независимое сравнение производительности с CouchDB.

Конечно отлично, но непонятно зачем комбайн.


"Выпуск СУБД Couchbase Server 3.0, сочетающей возможности Cou..."
Отправлено агонии , 08-Окт-14 17:05 
Независимо сравнить ты сможешь только самостоятельно:)

"Выпуск СУБД Couchbase Server 3.0, сочетающей возможности Cou..."
Отправлено manster , 09-Окт-14 18:52 
Ну можно конечно, только еще ebuild-ов нет для couchbase. Ставить оверлей или самому пилить лениво.

"Выпуск СУБД Couchbase Server 3.0, сочетающей возможности Cou..."
Отправлено corr256 , 08-Окт-14 18:21 
убрали бы полностью зависимость от Erlang

"Выпуск СУБД Couchbase Server 3.0, сочетающей возможности Cou..."
Отправлено Xasd , 09-Окт-14 02:18 
то есть ты хочешь чтобы Erlang был бы вкомпилирован бы внутрь серверного пакета? :)

"Выпуск СУБД Couchbase Server 3.0, сочетающей возможности Cou..."
Отправлено Аноним , 09-Окт-14 04:44 
очевидно, erlang вызывает у товарища отторжение.

"Выпуск СУБД Couchbase Server 3.0, сочетающей возможности Cou..."
Отправлено edwin3d , 09-Окт-14 10:38 
Чем Вам так не угодил он ? Erlang хороший язык, ориентированный как раз на серверную разработку и производительность у него к слову очень достойная  

"Выпуск СУБД Couchbase Server 3.0, сочетающей возможности Cou..."
Отправлено Аноним , 09-Окт-14 13:48 
После Паскаля и Бэйсика разорванный шаблон кровоточит :D

"Выпуск СУБД Couchbase Server 3.0, сочетающей возможности Cou..."
Отправлено Crazy Alex , 09-Окт-14 16:58 
Шаблон там кровоточит после чего угодно, синтаксис там странный и местаи адски архаичный. Хотя возможности языка и особенно инфраструктура хороши

"Выпуск СУБД Couchbase Server 3.0, сочетающей возможности Cou..."
Отправлено Аноним , 09-Окт-14 17:17 
>После Паскаля и Бэйсика разорванный шаблон кровоточит :D

Советую петросянам таки внимательно читать буквы в новости:
"Критичные к производительности части CouchDB были переписаны на языке C++, но многие подсистемы по-прежнему остаются на языке Erlang."

У них эрланговские тормоза кровоточили, и видимо в конец народ достало :)


"Выпуск СУБД Couchbase Server 3.0, сочетающей возможности Cou..."
Отправлено manster , 09-Окт-14 18:53 
> убрали бы полностью зависимость от Erlang

убрать то можно, "только одна вода останется"


"Выпуск СУБД Couchbase Server 3.0, сочетающей возможности Cou..."
Отправлено Аноним , 09-Окт-14 04:38 
Кстати, может, кому-то пригодится: mcrouter, маршрутизатор запросов для распределённой системы кэшей memcached от Facebook, код открыт под лицензией BSD.
https://code.facebook.com/posts/296442737213493/introducing-.../
Закидывал сюда новость, но модеры почему-то проигнорили.

"Выпуск СУБД Couchbase Server 3.0, сочетающей возможности Cou..."
Отправлено Subcreator , 26-Окт-14 11:13 
Версия 2.5.1 enterprise на 3-х серверах в продакшне 3-ий месяц, не нарадуюсь, обслуживать вообще не приходится, простейшее добавление/удаление нод нажатием кнопки в гуи или запросом к апи + час на ребалансировку, данных ~5 млн документов, на ~5 гигов.