Lucence建立索引时,Field建立索引时分词存储索引NORMS问题

2 篇文章 0 订阅
1 篇文章 0 订阅

Field.Store.YES(存储域选项)

               就是存储该域中的内容,方便以后进行还原,

              设置为NO表示把这个域中的内容不存储到文件中,但是可以被索引。一般正文的域是不需要进行存储的,因为太大了。类似于

              ID,邮箱字段,名字字段,需要存储的。不存储的域不能被完全还原。(doc.get("content"))

Field.Index(索引选项)

       index.ANALYZER:进行分词和索引,适用于标题,内容等。

      index.NOT_ANALYZER进行索引但是不进行分词,如:身份证号,姓名,ID等。用来精确搜索

      INDEX.ANALYZER_NOT_NORMS:进行分词但是不存储norms信息,这个norms包括了创建索引的时间和权值等信息。

       INDEX.NOT_ANALYZER_NOT_NORMS不进行分词也不存储norms信息 //这个很少用

      INDEX.NO不进行索引。

      NORMS就是每条结果的相关信息,例如评分值,排序的信息等。他可以用来加权评分。当NOT_NORMS时,

      就是要分词但是不把评分信息存储进去,这样一来,排序就不能按照一种合理的评分来进行。

      实际情况:当不推荐boost这个field或者是document的时候,你可以选择no norms,可以节省一些存储空间。

 

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值