2

ここで問題に直面しています。Nickel を使用して Couchbase にクエリを実行しています。クエリは次のとおりです。

SELECT  *        
FROM `user`
USE INDEX (ord_ts_new_idx USING GSI)
WHERE META(`user`).id LIKE 'ord::27::%'
ORDER BY ts DESC
OFFSET 0 LIMIT 5;

しかし、ここで取得している値は更新されていませんが、しばらくしてから同じリクエストを行うと、目的の出力が得られます。

INDEXを作成するために使用したクエリは

CREATE INDEX ord_ts_new_idx ON `user-account`(`ts`) USING GSI;

はどこtsですかTimeStamp

常に更新されたデータを取得できる方法があれば教えてください。

前もって感謝します。どんな種類の助けも大歓迎です。

4

1 に答える 1

1

使用しているSDKについて言及していませんが、クライアントSDKを使用していますか? N1QL は scan_consistency パラメータを提供するため、クライアント SDK がこれを使用していることを確認する必要があります。ここにアクセスして、選択した言語を見つけてください。たとえば、ここに Java SDK セクションがあります。「read your own write」の下を見てください。

すべてに対してこれを行うと、結果を提供する前にインデックスを更新する必要があるため、パフォーマンスが大幅に低下する可能性があることに注意してください。したがって、これをテストしてください。

于 2015-10-07T15:07:50.367 に答える