Windowsマシンでsolrcloud-4.3.0とzookeeper-3.4.5を使用しています。一意のフィールド「id」を持つインデックスのコレクションがあります。同じ一意の ID 値を持つ重複したドキュメントがインデックスにあることがわかりました。私の理解では、一意のフィールドの目的はそのような状況を回避することであるため、これは発生しないはずです。この問題の原因を教えてくれる人はいますか?
2 に答える
この質問への回答を追加するにはおそらく遅すぎますが、インデックスを重複したドキュメント/フィールドとマージすることにより、一意のキー/フィールドを持つドキュメントを複製することもできます。
どうやら、インデックスが lucene IndexMergeTool または solr CoreAdminHandler のいずれかを介してマージされると、重複したドキュメントがインデックスに追加されます。(lucene および solr 4.6.0 以降)
重複排除は取得時に行われるようです。
https://cwiki.apache.org/confluence/display/solr/Merging+Indexes
「/conf/schema.xml」ファイルには、「」という XML 要素があります。これは、デフォルトでは「id」のようです...これが「キー」であるはずです。
ただし、Solr のドキュメント ( http://wiki.apache.org/solr/UniqueKey#Use_cases_which_do_not_require_a_unique_key ) によると、新しいドキュメントを段階的に追加する必要がない場合は、常に「一意のキー」を持っている必要はありません。既存のインデックス...おそらくそれがあなたの状況で起こっていることです。しかし、常に一意の ID が必要であるという印象もありました。