0

ドキュメントの各ペアの値を発行するビューを作成する必要があります (_all_docs とそれ自体のデカルト積)

たとえば、DB に , , という ID を持つドキュメントがあると仮定するとabビューは, , , , ... のc9 つのキーを発行する必要があります(グループ化されていないと仮定します) 。aaabacbacc

たとえば、ドキュメントが座標付きの「都市」である場合、ビューは都市のペアとそれらの間の距離を返します (実際の例はより複雑です)。そのため、_list関数を使用して「最も近い都市トップ 10」などを計算できます。

これは非常に単純なタスクのように見えますが、Google および SO 検索では結果が得られません。ここに魔法のキーワードがありませんか?

4

1 に答える 1

0

CouchDB でこれを行う方法が思いつきません - 基本的に、これはインデックスのマップ/削減には向いていません - マップ関数では、一度に 1 つのドキュメントにしかアクセスできず、reduce 段階では、結果を縮小します (デカルト積を計算すると拡大されます)。

別のシステムを使用して都市間の距離を事前計算する場合、CouchDB は、そのデカルト積の結果を格納およびクエリするのに適している可能性があります (たとえば、最も近い上位 10 都市を見つけるため)。ただし、グラフ データベース (Neo4j または Giraph) も参照することをお勧めします。

于 2014-01-17T09:59:24.640 に答える