ElasticSearch是什么?什么是全文检索?什么是倒排索引?ElasticSearch有哪些优点?

ElasticSearch是基于Lucene的分布式搜索引擎,它解决了数据库搜索的效率问题,实现了全文检索和倒排索引。ElasticSearch支持实时搜索、分布式、可伸缩,提供RESTful接口,适用于维基百科、站内搜索等多种场景。其特点包括自动处理数据分部、冗余副本,以及提供高级功能如地理位置搜索。ElasticSearch的内部机制涉及分片、副本、负载均衡等复杂分布式技术。
摘要由CSDN通过智能技术生成

Elastic Search

1.数据库搜索的弊端

1).要对被搜索字段的文本进行全部扫描,效率太低.比如商品描述,如果内容上千字的话,需要从头到尾全盘扫描.
2).不能分词检索.只能匹配连续的内容.比如:搜索关键词:中国移动联通,那么不能匹配:中国移动,中国联通等.

2.什么是全文检索和倒排索引?

全文搜索:
类似于通过字典的检索字表查字的过程.
计算机索引程序通过扫描文章中的每一个词,对每一个词建立一个索引,指明该词在文章中出现的次数和位置,当用户查询时,检索程序就根据事先建立的索引进行查找,并将查找的结果反馈给用户的检索方式。
倒排索引(inverted index)
根据属性值来确定记录该属性值的各记录的位置.
由于不是根据记录来确定属性值,而是由属性值来确定记录的位置,因而成为倒排索引.

3.ElasticSearch的诞生:

1.Lucene就是一个jar包,里面包含了封装好的各种建立倒排索引,以及进行搜索的代码,包括各种算法.开发的时候,引入lucene jar,然后基于lucene的api进行开发就可以了.
使用lucene,我可以将已有的数据建立索引,lucene会在本地磁盘上,给我们组织索引的数据结构.另外,我们也可以用lucene提供的一些功能和api来针对磁盘上的索引数据,进行搜索.

2…当被搜索数据量很大的时候,一台机器放不下,信息在不同的服务器上,一般的搜索需要分别和多个服务器进行通信.(无法满足高性能)
信息保存在不同的服务器上,如果某个服务器宕机,那么会造成信息丢失.(无法满足高可用)

3由此,基于Lucene的ElasticSearch诞生了,可以满足
1).实时搜

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值