solr schema.xml配置总结
schema.xml 在solr/conf/目录下,类似于数据表配置文件。
?
?
为了改进性能,可以采取以下几种措施:
1. ? 将所有只用于搜索的,而不需要作为查询结果的field(特别是一些比较大的field)的stored设置为false。
?
2. ??将不需要被用于搜索的,而只是作为查询结果返回的field的indexed设置为false。
?
3. ??删除所有不必要的copyField声明,根据需要决定是否进行存储。
?
4. ??为了索引字段的最小化和搜索的效率,将所有的 text fields的index都设置成false,然后使用copyField将他们都复制到一个总的 text field上,然后对他进行搜索。
?
5. ? 使用尽可能高的Log输出等级,减少日志量。可以在solr/admin 中的?LOGGING?进行设置。
?
?
特珠说明:
1. ? 高高是基于分词的,所有存储需要高亮显示的字段 一定要分词(text)才能高亮显示。
2. ? 排序字段 是不能当 ?查询过滤的条件。
?
?
?
文本主要配置项:
?
1. ? field 类型定义
? ? ? 重点是中文分词的添加
?
2. ? field 各属性定义
? ? ? name ? ? type类型 ? indexed是否建立索引 ?stored是否存储 required 是否必填项 multiValued多值存储
?
3. ? 唯一key
? ? ?<uniqueKey>id</uniqueKey>
? ? ?文档的唯一标识, 必须填写这个field(除非该field被标记required="false"),否则solr建立索引报错。
?
4. ? 默认搜索字段 field
? ? ?<defaultSearchField>text</defaultSearchField>
? ? ?如果搜索参数中没有指定具体的field,那么这个做为默认的域。
?
5. ? 搜索参数短语间逻辑
? ? ?<solrQueryParser defaultOperator="OR"/>
?
? ? ? 配置搜索参数短语间的逻辑,可以是"AND|OR"。
? ? ? 备注: AND是交集,OR是并集
?
6. ?复制字段
? ? ?<copyField source="content" dest="text"/>
? ? ?将多个字段的值 复制至 一个字段中,如果被复制的字段都设置为stored,那个这个字段务必不要设置成stored=true
?
7. ?自定义评分器
? ? ?<similarity class="......SolrSimilarity"/>
? ? ? SolrSimilarity 是继承 DefaultSimilarity的子类,或者实现评分器接口的类。
?