字段、复制字段、动态字段怎么使用

技术Field、CopyField、DynamicField怎么使用这篇文章主要介绍“Field、CopyField、DynamicField怎么使用”,在日常操作中,相信很多人在Field、CopyField、Dyna

本文主要介绍“如何使用字段、复制字段和动态字段”。在日常操作中,相信很多人对于如何使用Field、CopyField、DynamicField都有疑问。边肖查阅了各种资料,整理出简单易用的操作方法,希望能帮你解答“如何使用Field、CopyField、DynamicField”的疑惑!接下来,请和边肖一起学习!

字段:

字段就是字段。定义字段非常简单:

基本上,属性类似于字段类型,它的属性将覆盖具有相同名称的字段类型的属性。

CopyField(本段内容直接从solr中文网站复制而来):

您可能希望文档的某些字段被多次使用。Solr具有字段复制机制,可以将不同类型的多个字段提交到一个字段中。字段复制主要涉及两个概念,源和目的。一个是要复制的字段,另一个是要复制的字段。以下是一个例子:

一个

复制字段

来源

=

建筑环境及HVAC系统模拟的软件平台

=

“文本”

maxChars

=

'30000'

/在上例中,如果文本字段中有数据,cat字段的内容将被添加到文本字段中。MaxChars参数是一个int参数,用于限制复制字符的数量。

源和目标都支持通配符。以下是文本字段中以_t结尾的所有字段的副本。

一个

复制字段

来源

=

*_t '

建筑环境及HVAC系统模拟的软件平台

=

“文本”

maxChars

=

'25000'

/其实简单来说,比如你现在想查询包含‘Java’的博客,就必须检查内容以及标题是否包含Java,但是solr不能像SQL一样,其中title像“% Java%”或者content像“% Java%”。这时,copyField就派上用场了,定义一个新的字段,把标题和内容复制到这个新的字段中,直接索引。这是copyField的典型应用场景。注:如果目的地由多个组成

ource构成,就需要将其指定为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>

DynamicField:

动态字段(Dynamic fields)允许 solr 索引没有在 schema 中明确定义的字段。这个在忘记定义一些字段时很有用。动态字段可以让系统更灵活,通用性更强。

动态字段和常规字段类似,除了它名字中包含一个通配符外,在索引文档时,一个字段如果在常规字段中没有匹配时,将到动态字段中匹配。

假设schema中定义了一个叫*_i的动态动态字段,如果要索引一个叫 cost_i 的字段,但是 schema 中不存在 cost_i 的字段,这样 cost_i  将被索引到 *_i 字段中。

动态字段也是定义在 schema.xml 文件中,和其他字段一样,它也有个名词,字段类型,和属性。

1 <    
    dynamicField    
    name    
    =    
    "*_i"    
    type    
    =    
    "sint"    
    indexed    
    =    
    "true"    
    stored    
    =    
    "true"    
    />

建议在 schema.xml 定义一些基本的动态字段,以备扩展之用。

到此,关于“Field、CopyField、DynamicField怎么使用”的学习就结束了,希望能够解决大家的疑惑。理论与实践的搭配能更好的帮助大家学习,快去试试吧!若想继续学习更多相关知识,请继续关注网站,小编会继续努力为大家带来更多实用的文章!

内容来源网络,如有侵权,联系删除,本文地址:https://www.230890.com/zhan/155618.html

(0)

相关推荐

  • Visual Studio 2005 SP1如何安装

    技术Visual Studio 2005 SP1如何安装小编给大家分享一下Visual Studio 2005 SP1如何安装,相信大部分人都还不怎么了解,因此分享这篇文章给大家参考一下,希望大家阅读完这篇文章后大有收获

    攻略 2021年11月25日
  • DAY17 个人中心头像设置

    技术DAY17 个人中心头像设置 DAY17 个人中心头像设置先来说存储文件的两种情形,同文件不同名的存储以及同名不同文件的存储
    解决的方法就是指纹,用指纹来识别文件,并通过指纹进行文件的获取
    写入

    礼包 2021年10月28日
  • 老板的灵魂提问: 别人家的视频能自动播放为什么你开发的无法自动播放为什么网页上的音视频无法自动播放了

    技术老板的灵魂提问: 别人家的视频能自动播放为什么你开发的无法自动播放为什么网页上的音视频无法自动播放了 老板的灵魂提问: 别人家的视频能自动播放为什么你开发的无法自动播放为什么网页上的音视频无法自动播

    礼包 2021年12月7日
  • jmeter中时间戳函数怎么用

    技术jmeter中时间戳函数怎么用这篇文章主要介绍了jmeter中时间戳函数怎么用,具有一定借鉴价值,感兴趣的朋友可以参考下,希望大家阅读完这篇文章之后大有收获,下面让小编带着大家一起了解一下。在使用jmeter做接口测

    攻略 2021年11月30日
  • MongoDB用户及权限管理之角色说明的示例分析

    技术MongoDB用户及权限管理之角色说明的示例分析这篇文章给大家分享的是有关MongoDB用户及权限管理之角色说明的示例分析的内容。小编觉得挺实用的,因此分享给大家做个参考,一起跟随小编过来看看吧。mongodb安装完

    攻略 2021年11月25日
  • 如何解决PHP xcache无法加载

    技术如何解决PHP xcache无法加载这篇文章主要讲解了“如何解决PHP xcache无法加载”,文中的讲解内容简单清晰,易于学习与理解,下面请大家跟着小编的思路慢慢深入,一起来研究和学习“如何解决PHP xcache

    攻略 2021年10月23日