SOLR指数大小减少

时间:2012-04-09 22:53:22

标签: optimization memory solr indexing

我们为一个大型项目提供了一些大量的SOLR指数,并且它消耗了超过50 GB的空间。

我们已经考虑了几种减少与更改索引内容相关的大小的方法,但我很好奇是否可能会对SOLR索引进行任何更改,这将使其大​​小减小2数量级或更多,它们与(1)我们可以运行的维护命令或(2)可能无法正确设置的简单配置参数直接相关。

另一个相关的问题是(3)有没有办法在SOLR中交易索引大小以获得性能,如果有,它将如何运作?

对此的任何想法都将不胜感激......谢谢!

1 个答案:

答案 0 :(得分:8)

您可以做一些事情来交易索引大小的性能。例如,整数(int)字段使用的空间小于trie整数(tint),但使用int时范围查询会更慢。

要大幅减少索引,您几乎肯定需要更仔细地查看您正在使用的字段。

  • 您使用了大量存储的字段吗?如果是这样,请尝试从索引中删除存储的字段,并在从Solr获得结果后查询数据库以获取必要的数据。
  • 将omitNorms =“true”添加到不需要长度标准化的文本字段
  • 将omitPositions =“true”添加到不需要词组匹配的文本字段
  • 像NGrams这样的特殊领域可以占用大量空间
  • 您是否从文本字段中删除停用词?