我不明白何时使用omitNorms=“真”。我读了2-3个链接,但我仍然不清楚它的含义。这是什么意思?“设置为true省略与该字段相关的规范(这将禁用字段的长度规范化和索引时间提升,并节省一些内存)。只有全文字段或需要索引时间提升的字段才需要规范。”在http://wiki.apache.org/solr/SchemaXml页面
发布于 2013-09-09 09:59:29
规范作为单个字节信息存储在每个字段的每个文档索引中。这将保存应用于字段或长度信息的索引时间提升的信息。
长度信息将允许您增加更短的字段比更长的字段。
此外,索引时间提升将允许一个字段被提升到更高的水平。
由于它占用空间,它应该关闭,如果不需要。
如果没有索引,则使用时间提升或如果字段是短文本字段或不需要任何长度规范化的非文本字段。
您可以找到一个详细的解释,这里。
当规范加载到IndexReader中时,它们被加载到每个字段的bytemaxdoc数组中--因此,即使4亿份文档中有一个字段,它仍然会为该字段加载bytemaxdoc,可能会使用大量内存。
作为我们正在讨论的RAM大小的一个例子,一个1000万文档索引中的一个字段将占用不到10 MB的RAM。一百个这样的字段将占用近千兆字节的内存。
https://stackoverflow.com/questions/18694242
复制相似问题