Lucene笔记36-Lucene运用到项目中-需求分析

一、需求分析

索引的目标

现在需要设计一个留言管理系统,我们需要对哪些字段建立索引呢?

  1. 留言的内容
  2. 留言的标题
  3. 留言的附件

索引的对象

索引的对象,要存放什么属性呢?

  1. messageId
  2. title
  3. summary
  4. createDate
  5. content:这里的content存放了文本内容或者附件内容

既然上面说到content既可以存放文本内容,又可以存放附件内容,那么文本内容id和附件内容id就有可能冲突,怎么解决这个冲突呢?这里的附件id就不要使用int来存储,而是使用String来存储,因为,我们可以规定x_y的形式,如果存放的是文本,那么x_y代表文本,其中x为0,y为文本id,如果存放的是附件,其中x代表文本id,y代表x下的附件id,这就巧妙的将id冲突问题解决了,而且还非常巧妙的绑定了文本和附件的关系。

搜索的业务需求

是否做实时搜索(只能做到近实时搜索)?什么时候更新索引?

完全实时搜索:只要数据库一变动,立刻执行indexWriter的commit()方法更新索引数据,不过这样的做法性能非常的低。

近实时搜索:当用户做了修改之后,先将索引保存到内存当中,在一个统一的时间,对内存中的所有索引进行统一的提交操作。

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值