2016-03-22 10 views
0

私は、ElasticSearchにjsonドキュメントをインデックスするJavaアプリケーションを持っています。私はいくつかのドキュメントが「欠落」していることを確認しました。つまり、ElasticSearchにクエリを実行するとドキュメントが見つかりません。そして、これは一貫した行動ではありません。私は文書のいくつかがうまくいくのを見ています。弾性検索ではないインデックス**いくつかのドキュメント**

アプリケーションログにエラーが表示されません(インデックスはtry-catchにあります)。またはElastic検索ログにも表示されます。これをデバッグする方法についてどのような考えがありますか?

私はJESTベースのクライアントを使用して、io-searchboxユーティリティを使用してelasticsearchに接続しています。そして、弾性検索バージョンは1.3.6です。

+1

インデックスに使用しているコードを入力してください – jhilden

答えて

0

この問題は、弾性検索の動的マッピング機能に関連することが判明しました。したがって、索引付けされた最初の文書は、新しい文書とは異なるデータ型を持っていました。その結果、新しい文書を索引付けしない弾性検索が行われました。

0

エラスティックログ(\ ELASTIC_HOME \ elasticsearch-2.3.2 \ logs)を確認してください。あなたのデータがインデックスに登録されていない理由を明確に示しています。

0

はい2.3.2。データ型の列はインデックスファイル内で一意です。たとえば、データ型 "string"と他のドキュメントの "Salary"という列がある場合、 "Salary"列には "numeric"データ型があります。 ESは例外を介して行われ、すべての例外がログファイルに記録されます。そして、文書が索引付けされていないように感じるでしょう。ログファイルが明確にチェックされていれば、根本的な原因を知ることができます。

関連する問題