关于全文检索系统设计我的思考

全文搜索大体分为:数据采集,索引,搜索。

我认为最重要的是搜索效果,大体表现在准确性,搜索结果排序,稳定,速度。准确和分词相关,排序是如何让最适合的结果出现在最前面,稳定这里指索引和搜索时的稳定,速度指索引,搜索使用以及维护。
当然这一切加上硬件,人力综合成一个性价比,这个值决定了最终使用哪个搜索架构(像我这样的懒人通常会基于一些现有的东西,在上面堆砌来完成)

基本确定后,就会写更加细的测试代码,根据数据特性,业务特性进行优化,充分利用硬件发挥其特性。以lucene索引部分为例就是addDoc,updateDoc,deleteDoc,commit,optimize效率,分词速度,内存占用,硬盘占用等方面的细节数字。测试以真实数据为佳,切忌以别人的数据为准,因为他的情况不一定适用你。

有了上述测试数字,就能比较准确的设计适合自己业务的搜索系统,和业务设计的沟通贯彻整个过程,这里尤为重要。对其中涉及的难点,应该做一定测试,确保设计的系统是最适合的。这一过程中可能要借用其他第三方开源程序来补充时,那么就需要衡量使用它的收获和付出是否合算。

然后就是模型搭建,业务测试,压力测试。

最后上线,维护。

每个过程寻找瓶颈而不是提速,功能分离很重要,即便因此牺牲了部分性能和资源也值得。因为上线只是个开始,如何优化是接下来问题了,因为有了分离,测试优化就有了机会。
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值