1


カウチベース バージョン 2.0.1 - エンタープライズ エディション (build-170) および Java クライアント バージョン 1.2.2
を使用しています ユーザーの最後のアクティビティを取得するためのカスタムの reduce 関数があります
Java クライアントからの応答に一貫性がありません 正しい応答が得られる時点でほとんどの場合、有効なキーに対して null 値を取得します。Stale.FALSE でさえ役に立ちません!!

ビュー内のレコード数は約 100 万件で、クエリの結果セットは約 1,000 個のキーと値のペアです。ここで何が問題なのかわかりません..誰かが助けてくれれば幸いです。

リデュース機能は以下のとおりです。

function (key, values, rereduce) {
    var currDate = 0;
    var activity = "";
    for(var idx in values){
        if(currDate < values[idx][0]){
            currDate = values[idx][0];
            activity = values[idx][1];
        }
    }
    return [currDate, activity];
}

クエリを表示:

CouchbaseClient cbc = Couchbase.getConnection();
Query query = new Query();
query.setIncludeDocs(false);
query.setSkip(0);
query.setLimit(10000);
query.setReduce(true);
query.setGroupLevel(4);
query.setRange(startKey,endKey);
View view = cbc.getView(document, view);
ViewResponse response = cbc.query(view, query);
4

1 に答える 1