Lucene站内搜索的设计思路

Posted 指尖挥舞

tags:

篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了Lucene站内搜索的设计思路相关的知识,希望对你有一定的参考价值。

正好近期部门有一个小需求需要做商品的搜索,虽然最终由于工作量等原因先做数据库搜索,我依然用刚接触的Lucene弄了一套自嗨。

首先看需求:搜索:根据商品标题和内容搜索

没错,就这么简单!

我想了想,数据源大概有以下两种:

1、根据需要搜索的字段,从数据库读取信息加载,并创建Lucene索引

2、利用爬虫定时抓取数据,并创建Lucene索引

由于是非正式的,数据库不方便访问,因此我选择利用爬虫去抓取指定网页,并清理内容来建立索引

其中,针对链接,做商品详情页的过滤,这样能保证最快速、最精准的建立我需要的索引。

该Demo主要分为两部分:

1、爬虫部分:按照一定时间频率抓取所有商品详情页链接

2、索引部分:根据商品链接解析内容并创建Lucene索引

最终DEMO成型了,在百度云上部署成功(Tips:由于百度云上写文件会失败,因此我选择将索引加载入内存,使用RAMDirectory方式)

地址:严选商城搜索 (http://yxsearch.duapp.com/)

当然,我的思路可能有不妥的地方,后续继续学习优化

以上是关于Lucene站内搜索的设计思路的主要内容,如果未能解决你的问题,请参考以下文章

站内搜索解决方案: Lucene + Gulp

站内全文搜索

搜索技术---solr

搜索引擎 Solr 简介

lucene全文检索技术

原创Lucene001--介绍和入门