我通过 JOIN 查询加入了 2 个 mysql 表,并通过 SOLR 中的 DIH 导入了数据。
但是,一半的记录被自动删除。我通过阅读numDocs、maxDocs和deletedDocs值来了解这一点。
我已经检查了我已经在data-config.xml以及schema.xml文件中定义的表中的所有字段。
这有什么问题?
请帮助我。
我通过 JOIN 查询加入了 2 个 mysql 表,并通过 SOLR 中的 DIH 导入了数据。
但是,一半的记录被自动删除。我通过阅读numDocs、maxDocs和deletedDocs值来了解这一点。
我已经检查了我已经在data-config.xml以及schema.xml文件中定义的表中的所有字段。
这有什么问题?
请帮助我。
它是对现有文档的替换
numDocs+DeletedDocs = MaxDocs
(821+1160=1981)
numDocs 表示索引中可搜索文档的数量 maxDoc 可能比 numDoc 计数更大,因为它包括尚未从索引中删除的逻辑删除文档。
如果您重新索引/重新发布 numDocs 将永远不会增加,因为新文档将不断替换旧文档...尝试优化索引,它可能会删除逻辑删除的文档/索引。
唯一键字段
<uniqueKey></uniqueKey>
该<uniqueKey>
声明可用于通知 Solr 您的索引中有一个字段对于所有文档应该是唯一的。如果添加的文档包含与现有文档相同的字段值,则旧文档将被删除。