7

stale=update_afterCouchDBビューAPIの機能がどのように機能するのか知りたいです。

ここで、古い結果が返され、ビューが更新されることがわかります。

stale = okが設定されている場合、CouchDBは、ビューが古くなっていてもビューを更新しません。利点は、クエリの待ち時間が改善されることです。stale = update_afterが設定されている場合、CouchDBは、古い結果が返された後にビューを更新します。update_afterはバージョン1.1.0で追加されました。

ビューインデックスを更新するのに数分かかるのに十分な数のドキュメントを挿入したと仮定し、次にビューを2回続けてすばやくクエリしますstale=update_after。最初のクエリは非常に迅速に返されます。それがの要点ですupdate_after

私の質問は、2番目のクエリも古い結果をすぐに返すのでしょうか、それともビューの更新が完了するのを待つのでしょうか?

4

1 に答える 1

8

2 番目のクエリも古い結果を返します。クエリがサーバーにヒットした時点で利用可能な部分的な結果を使用します。ドキュメントを追加しただけなら問題ありません。

ただし、ビューを変更した場合、最初のクエリは最初のクエリの結果を返し、ビューの完全な再構築をトリガーします。そのため、2 番目のクエリではおそらく結果が返されないか、ごくわずかな行しか返されません。

したがって、短い答え: あなたの場合、両方のクエリがすぐに返されます。2 番目のクエリはおそらく最初のクエリと同じ結果を返します。

私が助けてくれることを願っています!

さようなら、ベルンハルト

于 2012-09-25T08:35:58.930 に答える