Elasticsearch的功能、使用场景以及特点

Elasticsearch的功能

(1)分布式的搜索引擎和数据分析引擎

搜索:百度,网站的站内搜索,IT系统的检索 数据分析:电商网站,最近7天牙膏这种商品销量排名前10的商家有哪些;新闻网站,最近1个月访问量排名前3

的新闻版块是哪些 分布式,搜索,数据分析

(2)全文检索,结构化检索,数据分析

全文检索:我想搜索商品名称包含牙膏的商品,select * from products where product_name like "%牙膏%" 结构化检索:我想搜索商品分类为日化用品的商品都有哪些,select * from products where category_id='

日化用品' 部分匹配、自动完成、搜索纠错、搜索推荐 数据分析:我们分析每一个商品分类下有多少个商品,select category_id,count(*) from products group

by category_id

(3)对海量数据进行近实时的处理

分布式:ES自动可以将海量数据分散到多台服务器上去存储和检索 海量数据的处理:分布式以后,就可以采用大量的服务器去存储和检索数据,自然而然就可以实现海量数据的

处理了 近实时:检索个数据要花费1小时(这就不要近实时,离线批处理,batch-processing);在秒级别对数据进行

搜索和分析

跟分布式/海量数据相反的:lucene,单机应用,只能在单台服务器上使用,最多只能处理单台服务器可以处理

的数据量

Elasticsearch的适用场景

国外

(1)维基百科,类似百度百科,牙膏,牙膏的维基百科,全文检索,高亮,搜索推荐 (2)The Guardian(国外新闻网站),类似搜狐新闻,用户行为日志(点击,浏览,收藏,评论)+社交网络

数据(对某某新闻的相关看法),数据分析,给到每篇新闻文章的作者,让他知道他的文章的公众反馈(好,

坏,热门,垃圾,鄙视,崇拜) (3)Stack Overflow(国外的程序异常讨论论坛),IT问题,程序的报错,提交上去,有人会跟你讨论和回答

,全文检索,搜索相关问题和答案,程序报错了,就会将报错信息粘贴到里面去,搜索有没有对应的答案 (4)GitHub(开源代码管理),搜索上千亿行代码 (5)电商网站,检索商品 (6)日志数据分析,logstash采集日志,ES进行复杂的数据分析(ELK技术,elasticsearch+logstash+kibana

) (7)商品价格监控网站,用户设定某商品的价格阈值,当低于该阈值的时候,发送通知消息给用户,比如说订

阅牙膏的监控,如果高露洁牙膏的家庭套装低于50块钱,就通知我,我就去买 (8)BI系统,商业智能,Business Intelligence。比如说有个大型商场集团,BI,分析一下某某区域最近3年

的用户消费金额的趋势以及用户群体的组成构成,产出相关的数张报表,**区,最近3年,每年消费金额呈现

100%的增长,而且用户群体85%是高级白领,开一个新商场。ES执行数据分析和挖掘,Kibana进行数据可视化

国内

(9)国内:站内搜索(电商,招聘,门户,等等),IT系统搜索(OA,CRM,ERP,等等),数据分析(ES热门

的一个使用场景)

Elasticsearch的特点

(1)可以作为一个大型分布式集群(数百台服务器)技术,处理PB级数据,服务大公司;也可以运行在单机上

,服务小公司 (2)Elasticsearch不是什么新技术,主要是将全文检索、数据分析以及分布式技术,合并在了一起,才形成

了独一无二的ES;lucene(全文检索),商用的数据分析软件(也是有的),分布式数据库(mycat) (3)对用户而言,是开箱即用的,非常简单,作为中小型的应用,直接3分钟部署一下ES,就可以作为生产环

境的系统来使用了,数据量不大,操作不是太复杂 (4)数据库的功能面对很多领域是不够用的(事务,还有各种联机事务型的操作);特殊的功能,比如全文检

索,同义词处理,相关度排名,复杂数据分析,海量数据的近实时处理;Elasticsearch作为传统数据库的一个

补充,提供了数据库所不能提供的很多功能

作者:编程界的小学生 链接:https://www.jianshu.com/p/ed80664141a5 來源:简书 简书著作权归作者所有,任何形式的转载都请联系作者获得授权并注明出处。

本文参与腾讯云自媒体分享计划,欢迎正在阅读的你也加入,一起分享。

发表于

我来说两句

0 条评论
登录 后参与评论

相关文章

来自专栏web前端教室

前端新人,除了js还缺少啥?

简短截说,前端新人除了js还缺少二样东西,一是规则;二是沟通; 规则是指,日常工作中的事务性工作,例如日志,邮件,会议,记录,讨论,发言...等等这些东西。 例...

20210
来自专栏FD的专栏

前后端分离团队的资源浪费

最近的项目,团队都是以前端、后端两个分离的形式。作为一个大前端,不论是在 Web 开发的时候,还是开发 Android 应用的时候,经常遇到:

1354
来自专栏Django中文社区

django开发时遇到问题的正确求助姿势

自 django博客教程发布以来,已有超过上万名读者学习了该教程。一些学习者跟随教程顺利地完成了个人博客的搭建,但一直以来也不断地收到读者的评论留言、QQ 留言...

3488
来自专栏SDNLAB

通用客户端设备(uCPE)详解

通用客户端设备(Universal customer premise equipment,uCPE)正在吸引服务提供商的注意力,AT&T目前已经宣布了其uCPE...

4596
来自专栏SDNLAB

混合虚拟化网络,网络性能优化之辩

网络设备在虚拟化后是否依旧可以快速提供良好的性能?这是目前大家最为关注的问题之一。下面就讨论一下传统网络设备和虚拟化后面临的问题以及怎样使用网络设备才能提供实时...

4227
来自专栏测试开发架构之路

今天聊聊云计算

产生         2006年谷歌推出了“Google 101计划”,并正式提出“云”的概念和理论。 云计算思想的产生:        传统模式下,企...

1K6
来自专栏WeTest质量开放平台团队的专栏

2018 Unite大会,专家为你解锁了哪些新姿势——《使用UPA工具优化项目》演讲实录

1122
来自专栏知晓程序

小程序搜索功能不容忽视,背后大有深意

1602
来自专栏IT大咖说

腾讯DevOps体系之研发管理那些事儿

内容来源:2018 年 5 月 05 日,腾讯研发管理部CODE平台产品负责人孙晨星在“2018 DevOpsDays Beijing”进行《腾讯DevOps体...

2482
来自专栏Golang语言社区

最终,为什么选择go-kit

前言 工作这些年,先后经历过两家公司,分别参与过php语言框架的设计和主导过golang技术栈的落地工作,在此过程中有一些感悟和总结。我想以之前我主导的gola...

8777

扫码关注云+社区

领取腾讯云代金券