2016-07-14 8 views
0

Elasticsearchが間違ったデータを表示しています。 私は切り抜いた形で同じクエリを持って、最初のものはElasticsearchが間違ったデータを表示しています。

**GET salesindex/salesmarket/368** 

と私は "DeletedID" を更新し、正しいデータを示す結果である:2を、

が、私は間違っていました

POST salesindex/salesmarket/_search 
{ "query":{"bool": {"must": [{"term": {"salesId": 368}}]}}} 

用同じデータの結果 "DeletedID":1、

次にキャッシュをクリアして試してみましょう2〜3分で正しい結果を示します。 salesIdは私の文書IDです。 elasticsearchのこの動作を理解できませんでした。

答えて

0

文書のIDでGETを行う状況1では、瞬時にアクセスできます。ただし、状況2のようにクエリを実行すると、更新が行われるまで待つ必要があります。リフレッシュがない場合、新規または更新されたドキュメントはまだLuceneキャッシュに追加されません。明示的にリフレッシュして同じアプローチを試すこともできます。更新の量がそれほど多くない場合を除き、通常は制作に必要なワットではないことに注意してください。要するに

:IDによる GET:リアルタイム 検索:リアルタイムに近い

希望

+0

変更がデータベースで発生するたびに、私は、インデックスを更新する各バルクポストのためので、私は、インデックスを更新することができます。しかし、それは動作していません(私は瞬時に変更が必要なので、私はリフレッシュします)。 –

関連する問題