前两天看到曹政大佬的文章,说他上个世纪末在广州做 PHP 程序员的时候,接到一个私活儿。
有个客户是开律所的,要做个法律查询的网站。他整了个 Mysql,把内容导进去,写个搜索查询语句就搞定了。客户觉得,这开发效率,没谁了。
于是,问题来了。搜索一个关键词,得等好半天,那会儿他只会 SQL 的 like 语法,更不用说负载问题了。
后来,他才知道搜索这玩意的开销、字索引和词索引都是怎么回事,搜索引擎是如何实现的,也渐渐知道了各种第三方的开源搜索平台。
其实,搜索是现代互联网应用必备的一项基础功能,很多产品都需要内建搜索系统。
而且,随着时代的前进,搜索不再仅仅是关键词匹配,比如随着搜索出现的相关推荐,再比如基于地理位置的就近查询,等等需求应运而生。
能够胜任这样的开发,可不是什么容易的事情。幸而有些强大的第三方工具,才能让我们不用重复造轮子,Elasticsearch 就是一款功能强大的开源分布式搜索与数据分析引擎
它可以从海量数据中快速找到相关信息,在同领域内几乎没有竞争对手——近两年 DBRanking 的数据库评测中,ES 在搜索引擎领域始终位列第一
当你在 GitHub 上搜索时,Elasticsearch 可以实现代码级的搜索与高亮显示 ;当你在网上购物时,ES 可为你推荐喜欢的商品;当你下班打车回家时,ES 可以通过定位附近的乘客和司机,帮助平台优化调度。
Elasticsearch 还被广泛运用于大数据近实时分析,包括日志分析、指标监控、信息安全等多个领域。
它可以探索海量结构化、非结构化数据,按需创建可视化报表,对监控数据设置报警阈值,甚至通过使用机器学习,做到自动识别异常状况。
作为目前最流行的开源搜索引擎,ES 在全球的下载量已超过 3.5 亿次,腾讯、滴滴、今日头条、饿了么、360 安全、小米,vivo 等国内诸多知名公司都在使用 Elasticsearch。
如何深入理解,并高效使用 ES ?
Elasticsearch 非常容易上手,具有开箱即用的特性,你可以在极短的时间内设置好开发环境,然后快速上手使用,继而在成百上千台服务器上实现 PB 级的数据处理
虽然上手快,但要做到深入理解并高效使用,可就没那么简单了,比如:
1. 为什么我的数据查不到,明明是有的啊!
2. 什么鬼?为什么这几条数据出现在搜索结果的前几位?
3. 生产环境我需要多少台机器,索引的分片数怎么样设置才是合理的?
4. 应该关注哪些指标,才能保证集群健康高效地运行?
5. 为什么我的集群脑裂了?数据损坏后,怎样才能恢复?
... ...
其实,想要掌握 Elasticsearch,除了要理解其分布式架构的原理外,还要了解一些信息检索领域的知识和相关技巧
分享给你一张 Elasticsearch 核心知识图谱,只有对每一个知识点仔细梳理并深入理解,才能解决工作中的实际问题。
这张图谱出自阮一鸣,是eBay Pronto 平台技术负责人,管理着内部上百个 Elasticsearch 集群,数据规模超过了 4000 个节点。我之前也听过他在 Elastic 中国开发者大会的分享,讲得非常不错。
最近我在二刷他在极客时间的视频课《Elasticsearch 核心技术与实战》。我敢说,只要你认真看完,就能掌握 ES 的基本概念服务搭建,了解其运行机制和常用技巧,并通过上手实战理解 ES 在实际项目中的应用
近几年 ES 非常热门,所以 Elastic 公司推出官方的 Elastic 工程师认证考试,需要考生在 3 个小时的线上考试中,动手解决 12 个实际问题,就算有多年工作经验的老手都未必能通过。
所以,这个认证的含金量还是挺高的。很多巨头都在使用 ES 搭建自己的搜索系统,你去应聘的时候,有证跟没证有可能就会影响你的录取收入也有可能差一个档次。
阮一鸣说,这门课覆盖了 Elastic 认证考试的全部考点,想参加考试的朋友可以将这门课作为参考教材,这也算是「学习技能之外的 bonus」了。
这个专栏已经突破 6W 订阅了。现在正在做拼团活动,限时拼团到手 ¥139 ,立省 ¥60!感兴趣的小伙伴可以先扫码免费试读。
限时秒杀,立省 ¥60
到手 ¥139
他是如何讲解 Elasticsearch 的?
如果你对 Elasticsearch 有些了解,就会发现 ES 的产品迭代速度非常快,很多老的 API 都已经被废弃不再使用,搜索到的参数配置也大多发生了变化。
市面上的书籍和教程都是基于 5.x 甚至是 2.x 版本。而在课程中,哥们儿使用 Elasticsearch 最新的 7.1 版本进行教学。
所有 ES 最新版本的特性,在课程里都会有全面和直观地展现,比如:用机器学习进行异常检测;用 Canvas 展示数据;用索引的生命周期管理工具对索引进行优化等等。
需要什么基础,能获得什么?
其实,无论是开发还是运维,架构师抑或数据分析师,甚至是产品经理,如果想更多的掌握搜索相关的知识和能力,都可以学一学 Elastic Stack。
哎,你可能要说,为什么产品经理也要学,因为以后遇到开发说“这个搜索功能做不来”的时候,你可以理直气壮地撕逼啊。
在大数据时代,近实时的搜索和分析能力,会让你唯快不破,洞见未来。——这句 copy 了阮一鸣
跟着认真学,结合课程中的练习和实践,相信你一定能学以致用,基于 Elasticsearch 构建出你自己的搜索和数据分析产品。
总结起来就一句:放心学,学得会,用得着。干货部分看课表:
这个专栏口碑真的不错
现已有 6.1W 人订阅
↓↓↓
限时秒杀,立省 ¥60
到手 ¥139
👇点「阅读原文」2 杯奶茶的价格,吃透 ES。
继续阅读
阅读原文