solr的schema配置优化

来源:互联网 发布:软件测试佩腾 编辑:程序博客网 时间:2024/06/07 03:30
  • store="false"  : 当仅仅需要基于这个字段进行检索,而不需要返回原始的值时,可将此字段设置为false,尤其是对值空间需要很大的字段。
  • index="false" : 不通过这个字段进行检索,但是它仅作为基于其它字段检索到的搜索结果返回。
  • 删除所有不需要的copyFiled语句。
  • 为了最佳的索引文件大小和搜索性能,设置index字段为false。对于所有的文本字段,使用copyField将它们复制到包罗万象的text字段,使用这个字段作为检索的目标字段。
  • 删除所有没用的copyField和dynamicField,只保留自己需要的。
    <!-- 文档的唯一标识,可理解为主键,否则值不能为空--> <uniqueKey>id</uniqueKey>
    <!-- 保留字段,不能删除,否则报错 -->   <field name="_version_" type="long" indexed="true" stored="true"/>
  • 阅读http://itindex.net/detail/46603-%E4%BC%98%E5%8C%96-solr-%E6%80%A7%E8%83%BD,这里如果用copy字段来查询的话,因为在schema.xml里<solrQueryParser defaultOperator="AND"/> 默认为OR,这是这个标签的中文解释(当解析一个查询字符串时,以确定查询的子句是否应该被标记为要求或可选的,假设该子句没有被某些运算符标记。默认是或)所以会查询出来多余的结果,这里需要改为AND。(测试时,被copy和copy字段类型都经过分词)
0 0
原创粉丝点击