2015-02-13 5 views
2
  • couchbase конфигурации

хозяин: IP: 127.0.0.1 порт: 17000Поддерживает ли транзакция couchbase 3.0?

ковши: Bucket1 Bucket2 Bucket3

Я хочу, чтобы установить 3 ведра {набор (Bucket1), установите (Bucket2), set (Bucket3)} в качестве транзакции.

Как это сделать для реализации?

+0

Почему у вас есть необходимость в транзакциях? – theMayer

+0

один большой объект, состоящий из трех небольших объектов. Большая сущность должна инициализировать как целое. А маленькая сущность имеет атрибут «ключ: значение». –

+0

Есть ли причина, по которой вы не можете сохранить их все внутри одного документа? – theMayer

ответ

5

Короткий ответ - «нет». Couchbase не поддерживает транзакции по различным документам. Как упоминалось выше, вы можете избежать необходимости в транзакциях путем моделирования ваших данных по-разному. Однако, если у вас это есть, вы можете использовать двухфазную фиксацию, чтобы получить часть функциональности транзакции (атомарность и долговечность, но не изоляция или согласованность.)

Вы можете прочитать на 2PC вообще здесь: http://en.wikipedia.org/wiki/Two-phase_commit_protocol и особенно в том, что касается Couchbase здесь: http://docs.couchbase.com/couchbase-devguide-2.5/#performing-two-phase-commits

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