2017-02-25 3 views
0

CouchDB 문서를 통해 단일 문서 업데이트가 ACID임을 명확히 알 수 있습니다. 그러나 문서 업데이트의 결과로 트리거되는 뷰의 업데이트에 적용되는지 궁금합니다.CouchDB에서보기의 원 자성 업데이트

'type'필드에 특정 값이있는 문서 수를 표시하는 뷰 기능이 있다고 가정합니다. 해당 유형의 문서를 삽입 한 후 뷰를 업데이트 할 때까지 서버가 즉시 충돌하는 경우 어떻게됩니까? CouchDB는 다음에 서버가 시작될 때보기가 업데이트되도록 보장합니까? 아니면 다른 이벤트가 뷰의 재 계산을 트리거 할 때까지 기다려야합니까?

답변

1

보기는 _changes 피드와 마찬가지로 실제로 데이터베이스 자체와 동일한 추가 전용 모델을 사용하여 작성됩니다. 문서를 업데이트 할 때 실제로 뷰가 업데이트되기를 기다리지는 않습니다. 사실 뷰는 조회 될 때만 업데이트됩니다.

결과적으로 데이터베이스가 문서 변경과 뷰 재 작성 사이에서 충돌하더라도 데이터베이스가 사실상 변경 사항의 저널/스트림이고 뷰가 언제든지 변경 될 수 있으므로 문제가되지 않습니다.

+0

감사합니다. 사물을 비운. – nradk

관련 문제