搜索引擎设计
一、前言
所谓搜索引擎,就是根据用户需求与一定算法,运用特定策略从互联网检索出信息反馈给用户的一门检索技术。搜索引擎应用场景在全文检索、加快检索效率方面应用广泛,而本小节主要介绍我们工作中用的比较多的两个中间件Solr和ElasticSearch
二、搜索引擎组件介绍
2.1 常用场景
项目开发中,遇到全文检索和加快检索效率业务场景,经常会选用Solr或ES(ElasticSearch)组件来解决,那我们来简单了解下相关设计
全文搜索:一般网络用户适用于全文搜索引擎。这种搜索方式方便、简捷,并容易获得所有相关信息。但搜索到的信息过于庞杂,因此用户需要逐一浏览并甄别出所需信息。尤其在用户没有明确检索意图情况下,这种搜索方式非常有效。如果基于全文检索业务开发,无疑选用比较成熟的搜索引擎能快速的上手,实现功能。
检索效率:开发中遇到数据量比较大,往往对于使用分布式数据库、添加库索引、SQL优化等效率提升不是很明显时,很多开发者会选用非关系型数据存储方式(如Sol