关于Elasticsearch,我不做搜索很多年

2019 年 6 月 26 日 余晟以为

大约十年前,在听过高春辉团队分享Lucene在“手机之家”的使用之后,我结合自己对Lucene进行深度定制的经验,写过一篇《大型网站的Lucene应用》,总结了一些当时的探索。

如今看来,当时的许多观念都还很原始,不过写出来之后,还得到了不少反馈,有不少朋友来咨询,这充分说明搜索应用的普及性,以及搜索的难度。

十年过去了,如今的搜索简单了很多,有Elasticsearch这种“神器”,分布式完全不是问题,不但支持的字段类型丰富了很多,搜索的应用场景有了很大的扩展。

如今已经成为“标配”的ELK,用“暴力直接”的手段,拿搜索解决了业务上的痛点,效率确实比之前的awk + grep要高太多了,这个脑洞开得值,开得妙。

虽然我已经许多年不做搜索了,但我知道搜索仍然重要,甚至比之前更重要。以前搜索可能还只是“专门人才”玩得转,现在搜索需求到处都是,也没有人会认为一定要专门人才才能玩。

幸运的是,如今不再需要多少人去深度改造Lucene了,只要能玩转Elasticsearch,就可以解决相当多的问题了。

最近,极客时间推出的一门 ES 的视频课程,叫《Elasticsearch 核心技术与实战》。但我决定观望下,先看看课再决定是否推荐。如今上线 3 天,订阅破五千。不要再以为搜索“偏门”,因为有这样的成绩,你才看到了现在这篇。

还是那句话,买对的,别贪多,学到知识才是最好的。


Elasticsearch 是一款功能强大的开源分布式搜索与数据分析引擎,可以从海量数据中快速找到相关信息,在同领域内几乎没有竞争对手——近两年 DBRanking 的数据库评测中,ES 在搜索引擎领域始终位列第一

 

当你在 GitHub 上搜索时,Elasticsearch 可以实现代码级的搜索与高亮显示 ;当你在网上购物时,ES 可为你推荐喜欢的商品;当你下班打车回家时,ES 可以通过定位附近的乘客和司机,帮助平台优化调度。

 

ES 还被广泛运用于大数据近实时分析,包括日志分析、指标监控、信息安全等多个领域,它可以探索海量结构化、非结构化数据,按需创建可视化报表,对监控数据设置报警阈值,甚至通过使用机器学习,做到自动识别异常状况。

 

作为目前最流行的开源搜索引擎,ES 在全球的下载量已超过 3.5 亿次,腾讯、滴滴、今日头条、饿了么、360 安全、小米,vivo 等国内诸多知名公司都在使用 Elasticsearch。


如何深入理解,并高效使用 ES?


Elasticsearch 非常容易上手,具有开箱即用的特性,你可以在极短的时间内设置好开发环境,然后快速上手使用,继而在成百上千台服务器上实现 PB 级的数据处理

 

虽然上手快,但要做到深入理解并高效使用,可就没那么简单了,比如:

 

1. 为什么我的数据查不到,明明是有的啊!

2. 什么鬼?为什么这几条数据出现在搜索结果的前几位?

3. 生产环境我需要多少台机器,索引的分片数怎么样设置才是合理的?

4. 应该关注哪些指标,才能保证集群健康高效地运行?

5. 对于日志型应用,如何设置 Hot & Warm Architecture 节约成本,怎样管理和优化基于时间序列的索引数据,才能提高集群的整体性能?

6. 为什么我的集群脑裂了?数据损坏后,怎样才能恢复?


其实,想要掌握 Elasticsearch,除了要理解其分布式架构的原理外,还要了解一些信息检索领域的知识和相关技巧

 

分享给你一张 Elasticsearch 核心知识图谱,只有对每一个知识点仔细梳理并深入理解,才能解决工作中的实际问题。


       

这张图谱出自阮一鸣,他在 Elastic 中国开发者大会做过分享,反馈非常不错。

 

最近,他跟极客时间合作,推出了一门视频课《Elasticsearch 核心技术与实战》

 

在课程中,他用理论与实践相结合的方式、深入浅出地讲解了 Elasticsearch,只要你坚持学习,就可以掌握 ES 的基本概念和服务搭建,了解其运行机制和常用技巧,并通过上手实战理解 ES 在实际项目中的应用。

 

近几年 ES 非常热门,所以去年 Elastic 公司推出了官方的 Elastic 工程师认证考试,需要考生在 3 个小时的线上考试中,动手解决 12 个实际问题,就算有多年工作经验的老手都未必能通过。

 

所以,这个认证的含金量还是挺高的,有证跟没证不仅能力水平可能差一个档次,收入也有可能差一个档次。

 

阮一鸣说,这门课覆盖了 Elastic 认证考试的全部考点,想参加考试的朋友可以将这门课作为参考教材,这也算是「学习技能之外的 bonus」了。


关于阮一鸣


阮一鸣,eBay Pronto 平台技术负责人。Pronto 平台管理了 eBay 内部上百个 Elasticsearch 集群,数据规模超过了 4000 个节点。这些集群在 ebay 的生产环境中,支撑了包括订单搜索,商品推荐,日志管理,风险控制,IT 运维,安全监控等不同领域的服务。

 

作为一名互联网行业的老兵,他从业近 20 年了,在大数据、云计算和性能优化方面积累了丰富的经验。同时,他还是一名连续创业者,创办过手机游戏公司、个性化音乐推荐与分享平台 8box。


他是如何讲解 Elasticsearch 的?


如果你对 Elasticsearch 有些了解,就会发现 ES 的产品迭代速度非常快,很多老的 API 都已经被废弃不再使用,搜索到的参数配置也大多发生了变化。

 

市面上的书籍和教程都是基于 5.x 甚至是 2.x 版本。而在课程中,哥们儿使用 Elasticsearch 最新的 7.1 版本进行教学。

 

所有 ES 最新版本的特性,在课程里都会有全面和直观地展现,比如:用机器学习进行异常检测;用 Canvas 展示数据;用索引的生命周期管理工具对索引进行优化等等。

 

结合目录,我总结了一下,这个课大概分为 5 个部分

 

1. 初识 Elasticsearch

Elasticsearch 核心概念、工作机制与应用场景;本地开发环境搭建;倒排索引的原理与 ES 中 Analysis 的具体细节;Mapping 设置和一些基本的 Search & Aggregation API。


2. 深入了解 Elasticsearch

理解 Elasticsearch 分布式架构的原理;相关性算分的原理;数据建模的最佳实践;深入搜索及聚合功能以提高搜索结果的相关度。


3. 管理 Elasticsearch 集群

集群的水平扩展、参数配置、性能优化、故障诊断。


4. 利用 ELK 做大数据分析

结合使用场景和数据,探索 Logstash、Kibana 的各项功能。


5. 应用实战工作坊

设计了电影搜索和 Stack Overflow 用户调查问卷数据分析两个实战项目,通过上手实践,你可以巩固所学的知识点,并运用到实际项目中。


需要什么基础,能获得什么?

 

这门课不仅适合有 ES 使用经验的人,也适合初学者。编程知识和数据库的相关使用经验,会对你学习 ES 有一定帮助,但并不是必须的

 

针对开发人员,搜索是一项被广泛需要的功能,哥们儿详细地讲解了相关的搜索概念在 Elasticsearch 中是如何对应和具体实现的。

 

如果你是一名 ES 的运维人员,管理了公司内部的 Elasticsearch 集群:上线前的如何进行容量规划,上线后如何保证这些集群在生产环境内稳定高效的运行,如何在凌晨识别出异常信号,及时发出告警,以避免灾难的发生。


这些问题,他在课程中都会给出相关的最佳实践

 

其实,无论是开发还是运维,架构师抑或数据分析师,甚至是产品经理,都应该学一学 Elastic Stack。

 

在大数据时代,近实时的搜索和分析能力,会让你唯快不破,洞见未来。——这句 copy 了阮一鸣,要我说其实就是升职加薪走上人生巅峰呗,这话够实在吧。

 

跟着好好学,结合课程中的练习和实践,相信你一定能学以致用,基于 Elasticsearch 构建出你自己的搜索和数据分析产品。

 

这部分好像写得有点长,总结起来就一句:放心学,学得会,用得着。

 

△扫我的海报试读或订阅


从我这里订阅有什么福利?


1. 早鸟¥99,原价¥129。


结算时,输入优惠口令「ILOVEES66」再减¥10到手价¥89。


* 注意:口令【今晚24点失效


2. 订阅专栏后,可以获得阮一鸣亲自整理的高清版「Elasticsearch 核心知识图谱」,获取方式:在公众号内回复关键字「ES」。


说了半天,是时候上目录了,

想要干货往下看:



优惠口令【 今晚 24点 】失效

👇点击「阅读原文」,以最低价 89 元入手。


登录查看更多
0

相关内容

ElasticSearch是一个基于Lucene的分布式实时搜索引擎解决方案。属于Elastic Stack的一部分,同时另有 logstash, kibana, beats等开源项目。
商业数据分析,39页ppt
专知会员服务
160+阅读 · 2020年6月2日
【硬核书】可扩展机器学习:并行分布式方法
专知会员服务
85+阅读 · 2020年5月23日
【实用书】Python爬虫Web抓取数据,第二版,306页pdf
专知会员服务
117+阅读 · 2020年5月10日
专知会员服务
123+阅读 · 2020年3月26日
【电子书】大数据挖掘,Mining of Massive Datasets,附513页PDF
专知会员服务
103+阅读 · 2020年3月22日
在K8S上运行Kafka合适吗?会遇到哪些陷阱?
DBAplus社群
9+阅读 · 2019年9月4日
推荐系统
炼数成金订阅号
28+阅读 · 2019年1月17日
如何快速入门TensorFlow ?丨极客时间
InfoQ
4+阅读 · 2019年1月8日
关于机器学习你要了解的 5 件事
机器学习算法与Python学习
7+阅读 · 2018年9月7日
当ES赶超Redis,这份ES进修攻略不容错过!
DBAplus社群
3+阅读 · 2018年4月15日
推荐系统这事,难不?难在哪里?
聊聊架构
7+阅读 · 2018年2月26日
关于数据挖掘,有几本书推荐给你......
图灵教育
16+阅读 · 2017年10月11日
今日头条推荐系统架构演进之路
QCon
32+阅读 · 2017年6月21日
Adaptive Neural Trees
Arxiv
4+阅读 · 2018年12月10日
Arxiv
14+阅读 · 2018年4月18日
Arxiv
6+阅读 · 2018年2月7日
VIP会员
相关VIP内容
商业数据分析,39页ppt
专知会员服务
160+阅读 · 2020年6月2日
【硬核书】可扩展机器学习:并行分布式方法
专知会员服务
85+阅读 · 2020年5月23日
【实用书】Python爬虫Web抓取数据,第二版,306页pdf
专知会员服务
117+阅读 · 2020年5月10日
专知会员服务
123+阅读 · 2020年3月26日
【电子书】大数据挖掘,Mining of Massive Datasets,附513页PDF
专知会员服务
103+阅读 · 2020年3月22日
相关资讯
在K8S上运行Kafka合适吗?会遇到哪些陷阱?
DBAplus社群
9+阅读 · 2019年9月4日
推荐系统
炼数成金订阅号
28+阅读 · 2019年1月17日
如何快速入门TensorFlow ?丨极客时间
InfoQ
4+阅读 · 2019年1月8日
关于机器学习你要了解的 5 件事
机器学习算法与Python学习
7+阅读 · 2018年9月7日
当ES赶超Redis,这份ES进修攻略不容错过!
DBAplus社群
3+阅读 · 2018年4月15日
推荐系统这事,难不?难在哪里?
聊聊架构
7+阅读 · 2018年2月26日
关于数据挖掘,有几本书推荐给你......
图灵教育
16+阅读 · 2017年10月11日
今日头条推荐系统架构演进之路
QCon
32+阅读 · 2017年6月21日
相关论文
Top
微信扫码咨询专知VIP会员