fieldType
< fieldType name =" string " class =" solr.StrField " sortMissingLast =" true " omitNorms =" true " />
- sortMissingLast和sortMissingFirst两个属性是用在可以内在使用String排序的类型上(包括:string,boolean,sint,slong,sfloat,sdouble,pdate)。
- sortMissingLast="true",没有该field的数据排在有该field的数据之后,而不管请求时的排序规则。
- sortMissingFirst="true",跟上面倒过来呗
<fieldType name="tint" class="solr.TrieIntField" precisionStep="8" positionIncrementGap="0"/>
- TrieField 用于范围查询,性能比普通的数值类型要快10倍。
- precisionStep 值越小,分割的field段就越多,索引要存储的信息也越大,同时范围查找速度也就越快。
- positionIncrementGap:可选属性,定义在同一个文档中此类型数据的空白间隔,避免短语匹配错误。 和multiValued
一起使用,设置多个值之间的虚拟空白的数量关于positionIncrementGap的详细说明,参考文章http://rockiee281.blog.163.com/blog/static/19385222920127225619919/
<fieldType name="pint" class="solr.IntField"/>
<fieldType name="plong" class="solr.LongField"/>
<fieldType name="pfloat" class="solr.FloatField"/>
<fieldType name="pdouble" class="solr.DoubleField"/>
<fieldType name="pdate" class="solr.DateField" sortMissingLast="true"/>
<fieldType name="plong" class="solr.LongField"/>
<fieldType name="pfloat" class="solr.FloatField"/>
<fieldType name="pdouble" class="solr.DoubleField"/>
<fieldType name="pdate" class="solr.DateField" sortMissingLast="true"/>
- 这些数值类型,用于对已存在的索引的兼容(由lucence或早期版本的solr创建),暂不支持范围查找
<!-- A text field that only splits on whitespace for exact matching of words -->
<fieldType name="text_ws" class="solr.TextField" positionIncrementGap="100">
<analyzer>
<tokenizer class="solr.WhitespaceTokenizerFactory"/>
</analyzer>
</fieldType>
<fieldType name="text_ws" class="solr.TextField" positionIncrementGap="100">
<analyzer>
<tokenizer class="solr.WhitespaceTokenizerFactory"/>
</analyzer>
</fieldType>
The optional positionIncrementGap puts space between multiple fields of this type on the same document, with the purpose of preventing false phrase
matching across fields.
matching across fields.
<fieldType name="random" class="solr.RandomSortField" indexed="true" />
- RandomSortField不会被存储,也不用于搜索任何数据,用于生成伪随机排序的docs。
Filed
官方建议不要修改id 与_version_ filed。
当下列可选属性被使用时,Lucene的term Vector的存储会被触发
-
termVectors=true|false
-
termPositions=true|false
-
termOffsets=true|false这些选项用于高亮以及其他配套功能的加速,但是会对索引的大小造成额外开销。
杂项
<uniqueKey>
- solr并不强制要求schema有一个唯一字段,但schema都基都会设置一个唯一字段。官方建议不要修改这个字段。‘
- 如果你在solrconfig.xml中启用了QueryElevationComponent 。就可以要求schema使用一个StrFiled类型的唯一字段。
<defaultSearchField>
- 当搜索fied没有被显示指定的时候,solr指该字段为默认搜索字段。
<solrQueryParser defaultOperator="AND|OR"/>
- 默认OR
<copyField>
- 你必须保证datatye 是兼容的
<similarity class="org.apache.lucene.search.similarities.DefaultSimilarity"/>
- 指定评分器
相关推荐
3. 更新Solr的`schema.xml`文件,为需要分词的字段指定`analyzer`元素,并设置为IKAnalyzer。例如: ```xml <fieldType name="text_ik" class="solr.TextField" positionIncrementGap="100"> ...
Solr,作为一款开源的全文搜索引擎,其核心配置文件包括`schema.xml`和`solrconfig.xml`,它们是Solr工作方式的基础。在深入理解这两个文件之前,我们需要先了解Solr的基本架构。 **1. Solr架构简介** Solr采用...
在Solr搜索服务器中,`schema.xml` 文件扮演着核心配置文件的角色,它定义了索引字段、字段类型以及其他与数据结构相关的设置。正确理解和配置`schema.xml`对于实现高性能的全文检索系统至关重要。 #### 一、Schema...
在“server/solr/configsets/_default/conf”目录下,找到“schema.xml”文件,打开后找到`<fields>`标签,添加一个字段类型定义,如下: ```xml <fieldType name="text_ik" class="solr.TextField" ...
2. **配置Solr schema.xml**:在Solr的schema.xml配置文件中,为需要分词的字段指定`<analyzer>`标签,使用IKAnalyzer的类名,如`org.wltea.analyzer.lucene.IKAnalyzer`。 3. **启动Solr**:更新完配置后,重启Solr...
使用这个压缩包,用户可以将IK Analyzer集成到Solr的配置中,通过修改`schema.xml`或`managed-schema`文件,指定使用IK Analyzer作为特定字段的分词器。这通常涉及到在字段类型定义中添加类似以下的配置: ```xml ...
4. 配置字段类型(FieldType)使用IK分析器,在`schema.xml`文件中: ```xml <fieldType name="text_ik" class="solr.TextField" positionIncrementGap="100"> <tokenizer class="org.wltea.analyzer.lucene....
3. **配置Solr**:在`solrconfig.xml`中配置分词器,指定使用IKAnalyzer,并在`schema.xml`中定义字段类型,指定该字段使用IKAnalyzer进行分词。 4. **重启Solr**:完成上述配置后,重启Solr服务器,使新的分词器...
在实际应用中,配置IKAnalyzer与Solr集成时,你需要在Solr的schema.xml或managed-schema文件中定义字段类型,并指定使用IKAnalyzer。例如: ```xml <fieldType name="text_ik" class="solr.TextField" ...
2. **配置Schema**:在Solr的Schema.xml文件中,为需要进行中文分词的字段定义一个Analyzer,指定使用ikanalyzer。例如: ```xml <fieldType name="text_ik" class="solr.TextField" positionIncrementGap="100"> ...
3. **字段类型定义**:在`schema.xml`文件中,为需要使用IK分词器的字段定义一个特定的类型,比如`text_ik`。配置`<fieldType>`标签,设置`class`为`solr.TextField`,并在`<analyzer>`部分引用之前在`solrconfig....
3. **配置DataImportHandler**:在对应的Solr核心的`schema.xml`或`managed-schema`文件中,配置DataImportHandler,包括数据源、查询语句、字段映射等信息。 4. **启动定时任务**:一旦配置完成,重启Solr服务器,...
在schema.xml中,需要定义字段类型(fieldType)并指定使用IKAnalyzer。此外,用户还可以通过扩展词典来定制特定领域的词汇,进一步优化分词效果。 总的来说,IKAnalyzer是Solr处理中文文本的得力助手,它通过提供...
打开 `configsets/_default/conf/schema.xml` 文件,找到 `<fields>` 部分,添加一个新的字段类型(fieldType)用于使用 IKAnalyzer,例如: ```xml <fieldType name="text_ik" class="solr.TextField" ...
- 然后,更新 Solr 的 `schema.xml` 文件,定义字段类型,并指定使用 IK 分词器。例如: ```xml <fieldType name="text_ik" class="solr.TextField"> <tokenizer class="org.wltea.analyzer.lucene....
`schema.xml`(在较新版本中为managed schema)用于定义字段类型和字段,以及文档结构。 5. **请求处理器**:Solr提供多种请求处理器,如标准请求处理器(StandardRequestHandler)用于处理默认的搜索请求,更新...
1. **配置文件**:在Solr中,配置文件位于`conf`目录下,包括`schema.xml`(定义字段和索引规则)、`solrconfig.xml`(配置索引和查询行为)等,它们是定制Solr核心行为的关键。 2. **索引目录**:索引文件通常存储...
通常在`schema.xml`或`managed-schema`中定义字段类型(FieldType),并设置对应的分词器。例如,使用IK Analyzer: ```xml <fieldType name="text_ik" class="solr.TextField"> <tokenizer class="org.wltea....
2. 在 Solr 的 schema.xml 文件中定义一个字段类型(field type),指定使用 Ikanalyzer 并启用拼音分词。 3. 创建一个字段(field),使用之前定义的字段类型,以便在该字段上应用 Ikanalyzer 和拼音分词。 4. 重新...