资讯专栏INFORMATION COLUMN

elasticsearch学习笔记(二)——elasticsearch的功能、适用场景以及特点介绍

宋华 / 2939人阅读

摘要:比如有个大型商场集团,,分析一下某某地区最近年的用户消费金额的趋势以及用户群体的组成构成,产出相关的数张报表。

学习了什么是Elasticsearch之后,针对工程而言,我们更加关心的是Elasticsearch它能干什么?能在什么地方发挥作用?跟其它类似的东西相比它不同的地方在哪里?
归纳起来就是Elasticsearch在什么场景下,相比于其他类似的技术而言,它更适合做什么

1、Elasticsearch的功能 (1)分布式的搜索引擎和数据分析引擎

搜索:百度,网站的站内搜索,IT系统的检索
数据分析:电商网站,最近7天牙膏这种商品销量排名前十的商家有哪些;新闻网站,最近一个月访问量排名前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);在秒级别对数据进行搜索和分析才叫做近实时

2、Elasticsearch的适用场景

国外:
(1)维基百科 全文检索、高亮、搜索推荐
(2)The Guardian(国外新闻网站) 用户行为日志(点击,浏览,收藏,评论)+社交网络数据(对某某新闻的相关看法),数据分析,给到每篇新闻文章的作者,让他们知道他的文章的公众反馈(好、坏、热门。。。)
(3)Stack Overflow(国外程序异常讨论论坛),全文检索,搜索到相关问题和答案,如果程序报错了,就会将报错信息粘贴到里面去,搜索有没有对应的答案
(4)github,搜索上千亿行的代码
(5)电商网站,检索商品
(6)日志数据的分析 elk技术
(7)商品价格监控网站,用户设定某商品的价格阈值,当低于该阈值的时候,发送通知消息给用户
(8)BI系统,商业智能Business Intelligence。比如有个大型商场集团,BI,分析一下某某地区最近3年的用户消费金额的趋势以及用户群体的组成构成,产出相关的数张报表。

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

2、Elasticsearch的特点

(1)可以作为大型分布式集群(数百台服务器)技术,处理PB级的数据,服务大公司;也可以运行在单机上服务于小公司
(2)Elasticsearch不是什么新技术,主要是将全文检索、数据分析以及分布式技术,合并在了一起,才形成了独一无二的ES:lucene(全文检索),商用的数据分析软件,分布式数据库
(3)对用户而言,是开箱即用的,非常简单,作为中小型应用,直接3分钟部署一下ES,就可以作为生产环境的系统来使用了,此时的场景是数据量不大,操作不是太复杂
(4)数据库的功能面对很多领域是不够用的(事务,还有各种联机事务型的操作);特殊的功能,比如全文检索,同义词处理,相关度排名,复杂数据分析,海量数据的近实时处理,Elasticsearch作为传统数据库的一个补充,提供了数据库所不能提供的很多功能

文章版权归作者所有,未经允许请勿转载,若此文章存在违规行为,您可以联系管理员删除。

转载请注明本文地址:https://www.ucloud.cn/yun/34434.html

相关文章

  • 近几个月Github上最热门Java项目一览

    摘要:今天逛了逛,顺手精选出了一下近几个月以来上最热门的个项目。相关阅读正式开源,帮助应用快速容器化未来可能会上热门的项目地址介绍哈哈,皮一下很开心。这是我自己开源的一份文档,目前仍在完善中,欢迎各位英雄好汉一起完善。 showImg(https://segmentfault.com/img/remote/1460000015766827?w=391&h=220);今天逛了逛Github,顺...

    cyqian 评论0 收藏0
  • elasticsearch学习笔记(一)——大白话告诉你什么是elasticsearch

    摘要:对于倒排索引,也就是在全文检索时对每个词建立索引是采用倒排索引的方式。由于不是由记录来确定属性值,而是由属性值来确定记录的位置,因而称为倒排索引。 什么是elasticsearch? wiki上面的解释是: Elasticsearch is a search engine based on the Lucene library. It provides a distributed, m...

    darkbaby123 评论0 收藏0
  • elasticsearch学习笔记高级篇()——filter执行原理深度剖析

    摘要:对于小或,不缓存。这样下次如果在有这个条件过来的时候,就不用重新扫描倒排索引,反复生成,可以大幅度提升性能。比好的原因除了不计算相关度分数以外还有这个。 下面详细讲一下为什么filter的性能很高,filter的底层原理究竟是什么? 通过一个搜索的场景来深入剖析一下,当一个filter搜索请求打到Elasticsearch的时候,ES会进行下面的操作: (1)在倒排索引中查找搜索串,获...

    ckllj 评论0 收藏0
  • 后端技术精选

    摘要:服务教程在它提出十多年后的今天,已经成为最重要的应用技术之一。全方位提升网站打开速度前端后端新的技术如何在内完整打开网站会直接影响用户的满意度及留存率,在前端后端数据缓存加速等等方面都有诸多可以提升。 HTTPS 原理剖析与项目场景 最近手头有两个项目,XX 导航和 XX 产业平台,都需要使用 HTTPS 协议,因此,这次对 HTTPS 协议做一次整理与分享。 使用缓存应该注意哪些问题...

    GitCafe 评论0 收藏0
  • 后端技术精选

    摘要:服务教程在它提出十多年后的今天,已经成为最重要的应用技术之一。全方位提升网站打开速度前端后端新的技术如何在内完整打开网站会直接影响用户的满意度及留存率,在前端后端数据缓存加速等等方面都有诸多可以提升。 HTTPS 原理剖析与项目场景 最近手头有两个项目,XX 导航和 XX 产业平台,都需要使用 HTTPS 协议,因此,这次对 HTTPS 协议做一次整理与分享。 使用缓存应该注意哪些问题...

    explorer_ddf 评论0 收藏0

发表评论

0条评论

最新活动
阅读需要支付1元查看
<