1

簡単な質問: データベース内のいくつかの変更に対応したいのですが、特定のview1. つまり、データベース内のすべての変更に関心があるわけではなく、 に影響を与える変更だけに関心がありますview1。ここでフィルターについて話しているのではなく、ビューと変更について話しているだけです。このようなもの(これはおそらく正しくありませんが):

http://localhost:5984/db/_design/doc1/_view/view1/_changes

これは CouchDB でサポートされていますか? これはまったく意味がありますか?

4

1 に答える 1

2

それは可能ですが、少し別の方法で。1.1.0 リリース以降、CouchDB はmap 関数を変更フィードのフィルターとして使用できるようになりました。これは通常のフィルターと同じように機能します。変更されたドキュメントに対してキーと値のペアが少なくとも 1 回発行された場合、フィルターを通過し、_changes彼に関するレコードが得られたことを意味します。特定のビューの新しい更新のみを取得する必要がある場合は、開始シーケンス番号を指定する必要があります。フィールドからリソースからsince簡単に取得できます。1.3 リリース以降、現時点からの更新をリッスンするように指定することもできます。_design/ddoc-name/_infoview_index/update_seqsince=now

このビュー フィルターはビュー インデックスを使用せず、新しい変更が発生しても更新しないことに注意してください。また、ビュー フィルターを改善する一連のパッチもあります。

于 2012-11-20T19:14:43.587 に答える