solr学习之路2---Field和FieldType的介绍

更新时间:2023-07-07 17:53:56 阅读: 评论:0

开心厨房solr学习之路2---Field和FieldType的介绍
上⼀篇已经介绍了solr怎么去搭建,今天说下solr中的Field和FieldType
1.什么是Field
在我认为,Field就相当于数据库中的字段,⽽FieldType就是数据库中列的类型了,我不喜欢把他叫我索引,我感觉索引总是不怎么好去理解。
2.Field的配置
deputy什么意思
2.1 普通的Field
当你离开时Field是在我们所配置的solrhome的collection1\l中,
<field name="id" type="string" indexed="true" stored="true" required="true" multiValued="fal" />
<field name="sku" type="text_en_splitting_tight" indexed="true" stored="true" omitNorms="true"/>
这就是系统⾃带的Field
其中name就是Field的名字
type则是我们所配置的FieldType
index有两个值,true或者fal,代表的是是否作为索引进⾏查询,在实际开发中,当你需要这⼀Field需要被查询这设置为true,这样可以加快运⾏效率stored也⼀样有两个值,代表的是是否将field域中的内容存储到⽂档域,简单通俗的来说,就是你这⼀个Field需不需要被当作查询结果返回。
multiValued指的是是否允许有多个值,⼀般是被⽤来copyFiled。
omitNorms指的是是否使⽤Norms,norms是否启⽤,代表着solr中的排序 打分规则中的 length normalization 和 boosting
2.2 copyField
rescuer<field name="remark1" type="text_general" indexed="true" stored="true"/>
contessa<field name="remark2" type="text_general" indexed="true" stored="true"/>
<field name="arch" type="text_general" indexed="true" stored="fal" multiValued="true"/>
<!--
sassy girl
机械设备管理制度copyfield字段,把上⾯的字段放⼊⼀个字段中
-->
<copyField source="remark1" dest="arch"/>
<copyField source="remark2" dest="arch"/>
英英词典在线这是我写的CopyField,如果配了CopyField就是代表把上⾯的remark1和remark2字段作为⼀个字段进⾏查询,当你查询arch字段时,就同时查询了remark1和remark2字段。⽽arch字段也不需要我们⾃⼰去写,当你配置了remark1和remark2字段时,arch同时就被配置了,但是arch⾥⾯存的就remark1和remark2中字段的值,不包括他们的FieldName。
source中写的是需要被同时查询的字段名
dest中写的是需要被配置到那个字段。hiv是什么意思
还可以配置arch为默认字段,当不写查询的FieldName时,默认使⽤arch,但是我觉得这个没有什么⽤,因为我们使⽤的默认的查询拦截器是/lect,⽽/lect中可以配置⾃⼰的默认查询字段,系统的默认字段是text。
2.3 dynamicField
dynamicField看字⾯意思就是动态属性,在应⽤中的使⽤就是配置了动态字段,只需要按照相应的格式去书写字段名,系统就会把它认为是你配置好的字段类型,以下是例⼦:
<dynamicField name="*_i"  type="int"    indexed="true"  stored="true"/>
<dynamicField name="*_is" type="int"    indexed="true"  stored="true"  multiValued="true"/>
<dynamicField name="*_s"  type="string"  indexed="true"  stored="true" />
<dynamicField name="*_ss" type="string"  indexed="true"  stored="true" multiValued="true"/>
例如你在使⽤时只需要写xxxx_i,系统就会把这个字段认为是int类型的,然后index为true,stored为ture,⽽这个xxxx_i字段也就不需要去在Field中配置了,也是很简单。
3.FieldType
go your way
其实就是配置Field的类型,因为⼀个类型对应了⼀个具体的类。

本文发布于:2023-07-07 17:53:56,感谢您对本站的认可!

本文链接:https://www.wtabcd.cn/fanwen/fan/90/170187.html

版权声明:本站内容均来自互联网,仅供演示用,请勿用于商业和其他非法用途。如果侵犯了您的权益请与我们联系,我们将在24小时内删除。

标签:查询   字段   需要   配置   类型   档域   默认   是否
相关文章
留言与评论(共有 0 条评论)
   
验证码:
Copyright ©2019-2022 Comsenz Inc.Powered by © 专利检索| 网站地图