2015-07-03 2 views
0

Я в настоящее время изучает couchbase, и я должен соответствующих документов, как следующий ниже:Автоматическое обновление дочернего документа, когда обновления родительского документа - couchbase

Родитель документа:

{ 
"userId":"testUser", 
"password":"password123, 
"status":"LOCKED" 
} 

Детский Документ:

{ 
"dateUpdated":"2014/12/21" 
"remarks":"Sample remarks" 
"user":{ 
    "userId":"testUser", 
    "password":"password123, 
    "status":"LOCKED" 
    } 
} 

Возможно ли couchbase автоматически обновлять дочерний документ, если изменения в родительском документе, например, если кто-то изменяет имя пользователя или изменяет статус tus пользователя.

ответ

1

В Couchbase нет механизма, чтобы сделать то, что вы описали. Единственный способ сделать это - денормализовать данные в один документ, поэтому я бы рассмотрел, действительно ли вам нужны эти два типа сущностей в качестве отдельных документов.

Если вы абсолютно должны иметь такую ​​транзакционную логику и не можете денормализовать данные в одном документе, вы можете изучить реализацию двухфазной фиксации. Я бы рекомендовал против этого в большинстве случаев из-за дополнительной сложности и производительности, но, если нужно, вы должны. http://docs.couchbase.com/developer/dev-guide-3.0/transactional-logic.html

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