gpt4 book ai didi

java - Lucene 文档对象复制其未更改的字段

转载 作者:太空宇宙 更新时间:2023-11-04 07:07:10 25 4
gpt4 key购买 nike

我已经从事 lucene 工作大约一年了,今天突然我发现了一些奇怪的事情。

我正在使用正常的 lucene 机制来更新索引,即获取文档并删除旧文档,然后重新索引文档。所以1.从lucene索引中获取要更新的文档,并将该文档维护在列表中2. 从索引中删除该文档。3. 使用列表中的文档更新了部分字段,然后重新索引了该文档。

但是当我发现这个已索引的更新文档的原始文档字段具有重复值时。

假设有一个字段 id:1,我没有更新该字段并更新文档中的其他内容,然后索引该文档。我发现这个 id:1 在同一个文档中出现了两次。更进一步,如果我重新索引同一文档,同一字段将在单个文档下多次创建。

我应该如何消除这种重复?

最佳答案

我必须对重新索引的文档进行一些修改。意味着我从索引中获取的文档,使用该文档取出所有字段,然后创建一个新的文档,并将这些字段添加到该文档中,然后重新索引这个新文档,该文档已正确索引,没有任何重复。无法找到原因,但从索引中获取的文档具有 docId,因此在内部重新索引时可能会发生一些重复,这肯定会导致问题。

关于java - Lucene 文档对象复制其未更改的字段,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/21186862/

25 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com