这是我的问题(原谅the wordiness): 我有数百万份文件,所有文件都是独一无二的。
但是,所有文档都包含“描述”字段,此字段包含的数据在所有1000万个文档中的文本中只有几个不同的变体。这个字段大到-400-800字左右。
在“描述”字段中消除重复数据的最合适方法是什么?
让我详细说明一下。这是一个简化的示例模式:
Doc_id <-- this is unique
Title <-- always unique as well
Description <-- contains mostly dupe data
我搜索标题和描述,但只返回标题。
我对Solr很新,但一直无法找到有关如何解决这类情景的任何信息。如果它很重要,我在Ubuntu上运行Solr 5。
感谢您的帮助!
答案 0 :(得分:0)
我会尝试提供一些解决问题的策略。
您说搜索标题和描述,这意味着您应该在schema.xml中将这些字段设置为indexed = true。只返回title,这意味着只需要将title设置为stored = true,description应设置为stored = false。有关存储与已编入索引的详细信息,请参阅此帖子:Solr index vs stored
您可以尝试的另一个有用选项是字段选项压缩。如果您需要存储字段,可以在某些字段上使用gzip压缩,例如TextField和StrField,有关详细信息,请参阅:https://wiki.apache.org/solr/SchemaXml。
最后,Solr支持重复数据删除,请参阅:https://wiki.apache.org/solr/Deduplication。我没有尝试这个功能,但从它的声音,你可以防止(几乎)重复文件索引或标记重复。也许它的目标是“允许在搜索结果中重复折叠以及在添加文档时进行重复数据删除”。你正在寻找什么?