gpt4 book ai didi

lucene - 如何合并两个不同(未分片)Lucene 索引的匹配

转载 作者:行者123 更新时间:2023-12-01 21:17:38 25 4
gpt4 key购买 nike

我有两个单独的索引,其中包含不同的字段,它们一起包含索引的所有可搜索字段。例如,第一个索引保存所有文档的索引文本,第二个索引保存每个文档的标签。

请注意,下面的示例有点奇怪,因为我更改了实体的名称。索引1: 文本 文档 ID

索引2: 标签名称:“非常重要” 用户:“弗雷德的 ID”

我希望将索引分开,因为每当用户添加/删除标签时不断更新单个索引似乎很浪费。

到目前为止,我认为我可能需要处理两个搜索结果并手动合并它们(在代码中)。还有其他建议吗?

我不想合并单独/分片索引。

最佳答案

Lucene 有一种 IndexReader 来支持这种安排 — ParallelReader

使用起来可能有点棘手,因为记录的 Lucene 文档标识符在两个索引中必须相同。实际上,这意味着以相同的顺序将文档添加到两个索引中。我读到,在某些情况下,文档删除和索引优化可能会导致 Lucene 重新分配这些文档标识符,但我还没有尝试找出这是否属实。如果现有记录被修改,可能需要格外小心。如果只附加新记录,应该没有问题。

这种方法通常称为“垂直分区”,而不是“水平分区”或分片。

关于lucene - 如何合并两个不同(未分片)Lucene 索引的匹配,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/1285380/

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