solr schema.xml的fields节点

来源:互联网 发布:爱的算法在线 编辑:程序博客网 时间:2024/06/12 13:51

Field有以下属性,

name:mandatoryfield的名字。

type:mandatory,在 <types>中预先定义好的类型名。

indexed:如果field需要被索引(可搜索或可排序),则定义为true

stored:如果field需要在查询结果中显示,则定义为true

multiValued:如果每一个document的这个field可能包含多个值,则定义为true

omitNorms:(expert) 设置为true,则忽略filed有关的normsthisdisables length normalization and index-time boosting for the field,节省内存)。只有全文filed或者需要index-timeboost的字段需要norms。原始类型(non-analyzed)的norms默认忽略掉。

termVectors:默认false,设置为true来存储给定filedterm vector,当使用相似检索时,用来做相似词的fileds应该被存储来获得最佳的性能。

注:所谓term vector就是对于documents的某一field,title,bod这种文本类型的,建立词频的多维向量空间.每一个词就是一维,这维的值就是这个词在这个field中的频率

 

termPositions:存储term vector的地址信息,会增加存储的开销。

termOffsets:存储term vector的偏移量,会增加存储开销。

default:在添加一个document时,如果没有指定值时,使用这个默认值。

 

dynamicField 节点:如果遇到没有定义的field,可以通过匹配dynamicField来指定前缀后缀来匹配field名称,比如_i可以匹配ID_i,i_*可以匹配i_ID。“*”只能是前缀或者后缀。

 

一下是与field相关的节点,

uniqueKey:可以唯一标识一个document的field。除非该field被标记为required="false",否则这个field都是必须的。

defaultSearchField:当解析没有明确指明fieldquerystringqueryparser会使用defaultSearchField。机器(非用户)生成的查询最好是明确的,或者会使用“df”(在solrconfig.xml),都比defaultSearchField优先。

Note:如果在solrconfig.xml里定义了的dfdf更优先,不建议再使用defaultSearchField

copyField:在document被加入索引是,拷贝一个field到另一个field。可以用来给同一个field立不同的索引,或者添加多个field到同一个field,可以简单快速的搜索。

原创粉丝点击