ElasticSearch(es)笔记

ElasticSearch

ElasticSearch是一个基于Lucene的搜索服务器。它提供了一个分布式多用户能力的全文搜索引擎,基于RESTful web接口

*【Lucene 是 apache 下的一个开放源代码的全文检索引擎工具包。提 供了完整的查询引擎和索引引擎,部分文本分析引擎(英文与德文两种西方语言)。Lucene 的目的是 为软件开发人员提供一个简单易用的工具包,以方便的在目标系统中实现全文检索的功能

*restful

***前面是搜索服务器,后面说是全文搜索引擎,所以他到底是什么,这些高大上的词都是对他的包装,本质上就是个数据库

es就是一个性能很好的非关系型数据库

内部整合了Lucene 搜索引擎,整合了分布式架构,提供了一整套restful风格接口的一个非关系型数据库

*最终就是数据库,也可以说是搜索引擎,就是存数据的

那现在存数据的话,得有一个算法,为什么不用mySQL,肯定有他独特的方式或算法,搜索算法就是Lucene 提供的,再接着是提供了分布式架构,

(他内部本身就是分布式的,可以快速搭建集群,快速扩展服务器,横向扩展,这就是他的特征,因为他自身就是个分布式,再来一台,先不说两个es,只要名称一样他俩默认自动就是一个集群)

再就是提供了restful风格,想一下controller,controller层上面的RestController注解,加了这个注解,所有的方法就返回整个的json数据,这就是restful分格,通过json来进行数据交互,也就是所有的接口都写完了,所有的增删改查就都写完了,去掉接口就能完成增删改查

当然它还

能够达到实时搜索,稳定,可靠,快速,安装使用方便

稳定新非常好,可靠性非常高

什么是稳定性好,可靠性高?

因为他自身就是个分布式的,分布式有个特征就是保证整体的高可用,比如说一个分区坏了,不影响整体,就算是损失一台上的所有es数据,这个概率很小,就算是真的发生了,也不会有很大的影响,因为整体的es可用

(分布式和集群的区别:从概念上看,两者是完全不同的,分布式是多台部署了不同子业务系统的服务器协同完成一个任务;集群是多台服务器都提供同一种服务和功能

es里面的机制

全文检索,这个就能解释为什么可以代替mysql的搜索

全文检索是基于词条库的基础上,词条和id会有一个对应关系,在检索的过程中,词条和词条库里匹配的话,会找出对应匹配的id,再去找数据,这个过程叫全文检索

这是一个替代mysql的原因

再有就是数据量大,mysql中的数据,百万条千万条已经是个极端了,在优化就没必要了,表结构必须得拆,简单的单表的话一亿条数据也可以查,但真实的业务不可能只是简单的单表操作,结构一定很复杂,所以说mysql根本干不了

还有就是搜索比较复杂,从这三点来说,mysql适应不了,所以能替代他

  • 8
    点赞
  • 6
    收藏
    觉得还不错? 一键收藏
  • 2
    评论
评论 2
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值