一、分布式搜索引擎ElasticSearch——基本介绍

分布式搜索引擎ElasticSearch

1.引入

1.1 为什么要使用ElasticSearch?

​ 场景再现:小张在做电商项目的商品搜索相关的事务时,原本使用的是MySQL数据库进行,但是最近出现了问题,商品越来越多,自然速度也越来越慢。

​ 在测试时,数据仅仅上万条时,关键词查询就比较慢了,如果一旦企业级的数据。响应速度就更加不能接受了。原因在于在数据库做模糊查询时,如LIKE语句,它会遍历整张表,同时进行字符串匹配。

2.ElasticSearch简介

2.1 什么是ElasticSearch?

​ Elasticsearch是一个实时的分布式搜索和分析引擎。它可以帮助你用前所未有的速
度去处理大规模数据。ElasticSearch是一个基于Lucene的搜索服务器。它提供了一个分
布式多用户能力的全文搜索引擎,基于RESTful web接口。Elasticsearch是用Java开发
的,并作为Apache许可条款下的开放源码发布,是当前流行的企业级搜索引擎。设计用
于云计算中,能够达到实时搜索,稳定,可靠,快速,安装使用方便。

2.2 ElasticSearch特点

  • 可以作为一个大型分布式集群(数百台服务器)技术,处理PB级数据,服务大公司;也可以运行在单机上,服务小公司
  • Elasticsearch不是什么新技术,主要是将全文检索、数据分析以及分布式技术,合并在了一起
  • 对用户而言,是开箱即用的,非常简单,作为中小型的应用,直接3分钟部署一下ES
  • Elasticsearch作为传统数据库的一个补充,比如全文检索,同义词处理,相关度排名,复杂数据分析,海量数据的近实时处理;

2.3 ElasticSearch应用场景

  1. 维基百科,类似百度百科,全文检索,高亮,搜索推荐
  2. The Guardian(国外新闻网站),类似搜狐新闻,用户行为日志(点击,浏览,收藏,评论)+社交网络数据(对某某新闻的相关看法),数据分析,给到每篇新闻文章的作者,让他知道他的文章的公众反馈(好,坏,热门,垃圾,鄙视,崇拜)
  3. Stack Overflow(国外的程序异常讨论论坛),IT问题,程序的报错,提交上去,有人会跟你讨论和回答,全文检索,搜索相关问题和答案,程序报错了,就会将报错信息粘贴到里面去,搜索有没有对应的答案
  4. GitHub(开源代码管理),搜索上千亿行代码
  5. 电商网站,检索商品
  6. 日志数据分析,logstash采集日志,ES进行复杂的数据分析(ELK技术,elasticsearch+logstash+kibana)
  7. 商品价格监控网站,用户设定某商品的价格阈值,当低于该阈值的时候,发送通知消息给用户,比如说订阅牙膏的监控,如果高露洁牙膏的家庭套装低于50块钱,就通知我,我就去买。

2.4 ElasticSearch体系结构

下表是Elasticsearch与MySQL数据库逻辑结构概念的对比

Elasticsearch关系型数据库Mysql
索引(index)数据库(databases)
类型(type)表(table)
文档(document)行(row)
  • 2
    点赞
  • 2
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值