Field:
Field就是一个字段,定义一个Field很简单:
<field name="tile" type="string" indexed="true" stored="true"/>
Field的属性也和FieldType类似,他的属性会覆盖掉FieldType的同名属性。
CopyField
你可能想让document的一些字段可以多次使用。solr 有一个字段复制机制,可以提交多个不同类型字段集中到一个字段,如将title字段和content字段复制到一个新的字段中,这样新的字段中就具有这两个字段的内容了。字段复制主要涉及两个概念,source和destination,一个是要复制的字段,另一个是要复制到哪个字段,以下是个例子:
<
copyField
source
=
"cat"
dest
=
"text"
maxChars
=
"30000"
/>
上例中,如果cat字段有数据的话,cat字段的内容将被添加到text字段中。maxChars 参数,一个int类型参数,用于限制复制的字符数。source和destination都支持通配符。以下是一个将所有以 _t 结尾的字段全部复制到text字段中。
<
copyField
source
=
"*_t"
dest
=
"text"
maxChars
=
"25000"
/>
其实说的简单一点,比如现在你要查询包涵"Java"的博客, 那么你肯定要查内容,标题是否包含Java,但是solr不能像SQL那样,where tittle like '%Java%' or content like '%Java%'. 这个时候copyField就派上用场了, 定义一个新字段,将title和content 复制到这个新字段,索引的时候,直接从这个新字段查询,这样就达到目地了。 这便是copyField的典型应用场景。
注意:如果dest由多个source构成,就需要将其指定为multiValued。
<schema name="eshequn.post.db_post.0" version="1.1" xmlns:xi="http://www.w3.org/2001/XInclude"> <fields> <!-- for title --> <field name="t" type="text" indexed="true" stored="false" /> <!-- for abstract --> <field name="a" type="text" indexed="true" stored="false" /> <!-- for title and abstract --> <field name="ta" type="text" indexed="true" stored="false" multiValued="true"/> </fields> <copyField source="t" dest="ta" /> <copyField source="a" dest="ta" /> </schema>
相关推荐
### SOLR中文文档知识点概述 ...这些知识点对于初学者来说是非常宝贵的资源,可以帮助他们快速上手SOLR并应用于实际项目中。此外,对于想要深入了解SOLR内部机制的开发者而言,掌握Lucene原理也是十分必要的。
3. **修改Solr配置**:在`solrconfig.xml`中,添加IK Analyzer的相关配置,比如资源加载路径,以便Solr启动时能正确加载分词器: ```xml ${solr.install.dir}/dist/" regex=".*analyzer-.*\.jar" /> ``` 4. **...
### Solr中的MMSeg4J中文分词器安装与配置详解 #### 一、MMSeg4J简介 MMSeg4J是一款高效的Java实现的中文分词工具包,它基于统计和规则混合的方法来处理中文文本的分词问题。在搜索引擎如Solr中,通过集成MMSeg4J...
标题中提到的"ikanalyzer-solr中文分词包兼容solr7.5"意味着这个分词器已经过优化,可以与Solr 7.5版本无缝集成,确保在该版本的Solr环境中正常运行。 首先,我们来了解一下ikanalyzer的核心组件: 1. `ik-...
2. **配置Solr schema.xml**:在Solr的schema.xml文件中,定义字段类型(fieldType),并指定使用Ik Analyzer。例如: ```xml <fieldType name="text_ik" class="solr.TextField" positionIncrementGap="100"> ...
在Solr中,分词器(Tokenizer)是文本分析的重要组成部分,它负责将输入的原始文本拆分成可搜索的独立单元——词语。IK分词器(Intelligent Chinese Analyzer for Solr,简称IK)是一款针对中文的高效分词工具,专为...
Solr是一款强大的全文搜索引擎,广泛应用于企业级的信息检索系统中。在处理中文内容时,一个合适的中文分词器是至关重要的。"solr中文分词高版本"的标题表明我们在这里讨论的是适用于Solr 6.5及以上版本的中文分词...
要在 Solr 中使用 IK Analyzer,首先需要将其添加到 Solr 的类路径中,然后在 Solr 的 schema.xml 或 managed-schema 文件中配置字段类型(fieldType),指定使用 IK Analyzer。同时,可以设置自定义词典路径,以...
在Solr 5.x和6.x版本中,中文分词器扮演着至关重要的角色,它负责将中文文本拆分成有意义的词汇,便于索引和查询。下面将详细介绍Solr中的中文分词器及其相关知识。 一、Solr中文分词器概述 在处理中文文档时,由于...
2. **配置schema.xml**:在Solr的配置文件`schema.xml`中,定义字段类型(fieldType)并指定使用IKAnalyzer。例如: ```xml <fieldType name="text_ik" class="solr.TextField"> </fieldType> ``` ...
### Solr中Cache综述及优化策略 #### 一、概述 Apache Solr是一个高性能、可伸缩的企业级搜索平台,它基于Lucene构建,在实际应用中为了提高查询效率和性能,内置了一系列缓存机制(Cache)。这些缓存机制不仅能够...
3. **配置Schema.xml**:在 Solr 的 schema.xml 文件中,我们需要定义字段类型(FieldType)并指定使用 ikanalyzer。例如,可以创建一个名为 `text_ik` 的字段类型,并设置其`analyzer_class`属性为 `org.apache....
以上只是Solr 4.7企业开发中的部分核心知识点,实际应用中还需要结合具体业务需求进行定制和优化。提供的文档“SOLR中文教程.doc”和“Solr4.7中文学习手册.docx”将更深入地阐述这些概念和操作方法,为开发者提供...
然后,在schema.xml中定义字段类型(fieldType),并设置该类型的分析器为IK Analyzer。 4. **自定义词典**:IK Analyzer允许用户自定义词典,以满足特定领域的搜索需求。例如,可以添加行业术语或公司名,确保它们...
在Solr 5.4版本中,对中文分词的支持是通过特定的分词器实现的。本文将详细介绍如何在Solr 5.4中配置中文分词库。 首先,"Solr5.4中文分词"这个标题表明我们关注的是针对Solr 5.4的一个特定分词解决方案。这通常...
在 Solr 6.0 中,IKAnalyzer 不仅可以继续为 Solr 5.x 提供服务,还增加了对新版本 Solr 的兼容性,确保了旧项目的平滑升级和新项目的稳定运行。 使用 IKAnalyzer 配置 Solr 6.0 或 5.x 的步骤大致如下: 1. **...
managed-schema.xml 文件是 Solr 中用于定义字段类型(fieldType)和字段(field)的关键配置文件,其中包含了对索引和搜索行为的详细设定。例如,`Field` 和 `dynamicField` 用于定义字段的属性,如 `indexed`(是否...
在本压缩包中,包含Solr的源码,以及IK分词器和Zookeeper的相关内容。下面我们将详细探讨Solr集群的构建与使用,以及IK分词器和Zookeeper的角色。 首先,让我们来看看Solr集群的构建。一个Solr集群是由多个独立的...
IKAnalyzer中文分词器本身已经不支持最新的solr 5,集成到solr中分词会报错,这里将解决了solr 5支持问题的最新IK包共享出来,希望能帮到各位! 附上IK在schema.xml中的配置: <fieldType name="text_ik" class=...