2015-04-30 2 views
1

Я читал через документацию Couchbase сервера, и как я понимаю, это «как все это работает»:Происходит ли ведро на всех узлах кластера Couchbase Server?

  • кластер имеет один или несколько узлов (серверов).
  • В кластере есть один или несколько ковшей.
  • Ведро имеет один или несколько видов.

Мои вопросы:

  1. Я хотел бы предположить, что данные в ведре распределяется по всем узлам в кластере, правильно? Или он реплицируется по всем узлам?
  2. Предполагая, что ведро охватывает несколько узлов в кластере, выполняет ли представление данные из всех этих узлов?
  3. Или представляет собой ведро и его виды, относящиеся к определенному узлу?

ответ

4

Ваше предположение в первом пункте в основном правильное. Ведро окутывается через 1024 vBuckets. Эти vBuckets затем распределяются по узлам в кластере (равномерно, дают или берут остаток), причем реплики vBuckets помещаются на узлы, разделенные на те, которые находятся в главном vBuckets. По умолчанию vbucket будет реплицироваться только на один другой узел (и, следовательно, каждый документ будет реплицироваться на другой узел), однако вы можете настроить несколько реплик для большей доступности, если это необходимо.

View (design doc) будет индексировать данные для определенного ведра на каждом узле/vBucket, но данные индекса для этого представления сохраняются в узле, где находятся vBuckets. Поэтому, когда вы запрашиваете представление, он должен обращаться к каждому узлу кластера. Когда вы перебалансируете, по умолчанию индекс на узле изменяется, поскольку vBuckets переносятся. Данные удаляются из исходного узла и восстанавливаются на целевом узле репликации.

В обзоре How-To NoSQL 3.0 Webinar на YouTube показан хороший обзор архитектуры Couchbase Server.

+1

Спасибо! Это было именно то, что меня интересовала. Я обязательно проверю, что веб-семинар сразу же :) –

Смежные вопросы