Elasticsearch

本文详细介绍了Elasticsearch在电商搜索、全文检索、与MySQL对比(如索引结构、数据格式和查询方式)以及倒排索引的工作原理。它强调了Elasticsearch在处理海量数据和实时搜索方面的优势,以及与Lucene的关系。
摘要由CSDN通过智能技术生成

es使用场景

京东、淘宝等电商搜索:

  • 搜索手机壳

    • 能够搜索到手机壳、手机等商品数据

    • 搜索到内容还有高亮显示

    • 还能搜索到手机相关的品牌数据等

上述的功能使用MySQL这种关系型数据库不能能够实现

什么是es

1.全文检索的高性能的服务器;

2.能够实现在海量数据中快速检索到满足条件的数据,同时还可以实现分页、高亮显示等功能

3.Kibana数据的可视化,提供了图形可视化界面,可以操作es;

4.lucene:ES底层是基于lucene来实现的;

es相当于mybatis,lucene相当于jdbc;

5.ES在搜索实时数据的性能要强于Solr

es对比mysql

1.mysql中的table-----》Elasticsearch中的index,文档的集合

2.mysql中的row-------》Elasticsearch中的document,文档内容都是json格式

3.mysql中的column------》Elasticsearch中的field,json文档中的字段

4.mysql中的schema-------》Elasticsearch中的mapping,索引中文档的约束,例如字段类型约束

5.mysql中的sql-------》Elasticsearch中的dsl,提供json风格的请求语句,实现crud

倒排索引

1.正向索引:先通过文件名找到具体的文件,再获取文件中的内容过程 mysql的查询功能就是正向索引的思想

2.从文件的内容查找,得到包含这些内容的文件列表,再得到文件对应的信息;

3.过程:

3.1、将文档的内容通过算法进行分词,得到一个词条列表

3.2、将词条列表当作key,包含该词条的文档id列表作为值,形成一张表

3.3、对用户输入内容进行分词,得到词条

3.4、拿着词条在倒排索引中查找,可以得到包含词条的文档id

3.4、拿着文档id到正向索引中查找具体文档

  • 1
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 1
    评论
评论 1
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值