阿里、蚂蚁、晟腾、中科加禾精彩分享 AI 基础设施洞见,现购票可享受 9 折优惠 |AICon 了解详情
写点什么

查询亿级数据毫秒级返回!Elasticsearch 是如何做到的?|极客时间

  • 2019-06-26
  • 本文字数:2481 字

    阅读完需:约 8 分钟

查询亿级数据毫秒级返回!Elasticsearch 是如何做到的?|极客时间

搜索是现代软件必备的一项基础功能,而 Elasticsearch 就是一款功能强大的开源分布式搜索与数据分析引擎


它可以从海量数据中快速找到相关信息,在同领域内几乎没有竞争对手——近两年 DBRanking 的数据库评测中,Elasticsearch 在搜索引擎领域始终位列第一


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


Elasticsearch 还被广泛运用于大数据近实时分析,包括日志分析、指标监控、信息安全等多个领域。


它可以探索海量结构化、非结构化数据,按需创建可视化报表,对监控数据设置报警阈值,甚至通过使用机器学习,做到自动识别异常状况。


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

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

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


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


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

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

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

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

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

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


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


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



所以,我和极客时间合作了这门视频课《Elasticsearch 核心技术与实战》,在课程中,我会用理论与实践相结合的方式、深入浅出地讲解 Elasticsearch。


只要你坚持学习,就可以掌握 ES 的基本概念和服务搭建,了解其背后的运行机制和常用技巧,并通过上手实战理解 ES 在实际项目中的应用


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


我们这门课覆盖了 Elastic 认证考试的全部考点,参加 Elastic 认证考试的同学,也可以将这门课作为参考教材,进行学习和知识要点的回顾。

我是谁

我是阮一鸣,eBay Pronto 平台技术负责人。我所负责的 Pronto 平台,管理了 ebay 内部上百个 ES 集群,数据规模超过了 4000 个节点。


这些集群在 ebay 的生产环境中,支撑了包括订单搜索,商品推荐,日志管理,风险控制,IT 运维,安全监控等不同领域的服务。


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

我是如何讲解 Elasticsearch 的?

Elasticsearch产品迭代速度非常快,很多老的 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 使用经验的人,也适合初学者。编程知识和和数据库的相关使用经验,会对你的学习有一定帮助,但并不是必须的。 我会从原理和基本概念出发,帮助新手在复杂的搜索世界里获得一个稳定的基础。


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


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


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


开发人员、运维工程师、架构师、数据分析师、产品经理,都值得学习 Elastic Stack。因为在大数据时代,近实时的搜索和分析能力,会让你唯快不破,洞见未来。


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


《Elasticsearch 核心技术与实战》

上线仅 2 天,

超过 5000人已加入学习。


现在订阅有什么福利?

  1. 早鸟 ¥99,原价 ¥129,结算时输入优惠口令「521devops」再减 10 元,到手仅 89 元。

  2. *注:口令仅限【前 100 个名额有效】,戳此使用,以最低价 ¥89 入手课程。

  3. 订阅课程后,可以获得作者亲自整理的高清版「Elasticsearch 核心知识图谱」,获取方式:添加课程运营微信 dididisco,回复关键词:「ES」。




优惠口令【 仅限前 100 个名额 】有效。


👇戳此使用,以最低价 89 元订阅。


2019-06-26 15:597725

评论

发布
暂无评论
发现更多内容

助力香港成为全球寿命最长的城市,我们如何看医管局的数字化转型?

有只小耳朵

数字化转型 人才培养

Three.js杂记(二)——绘制点、线、面

空城机

JavaScript 大前端 WebGL 3D可视化 three.js

前置机器学习(一):数学符号及希腊字母

caiyongji

机器学习

大前端工程师进阶之路,Node全栈为前端带来更多可能

孙叫兽

大前端 全栈 Node

首席AI架构师进阶之旅开启!第4期60位AICA学员硬核开学

百度大脑

AI 百度飞桨

Git教程 - Git 命令与操作

码语者

git DevOps

飞桨刷新分子性质预测榜单,助力AI药物研发

百度大脑

AI 药物研发 百度飞桨

爬虫入门经典(七) | 一文带你爬取淘宝电场

不温卜火

python 爬虫

实时 摔倒识别 /运动分析/打架等异常行为识别/控制手势识别等所有行为识别全家桶 原理 + 代码 + 数据+ 模型 开源!

cv君

AI 目标检测 视频理解 引航计划

爬虫入门经典(十五) | 邪恶想法之爬取百度妹子图

不温卜火

python 爬虫

C 语言性能优化:循环展开

1

编程 程序员 性能优化 C语言 循环展开

手把手教学基于深度学习的遥感影像倾斜框算法训练与分析

cv君

人工智能 深度学习 AI 智能 视觉

Three.js杂记(三)—— 物体运动

空城机

JavaScript 大前端 WebGL 3D可视化 three.js

2021年ONNX开发者大会即将召开

百度大脑

百度飞桨 ONNX

python 爬虫之selenium可视化爬虫

诡途

Python 爬虫 selenium

初来乍到,请多关照

空城机

杂记

一气之下开发了个群聊机器人

诡途

Python 办公自动化 群聊机器人

寻找被遗忘的勇气(二十二)

Changing Lin

3月日更

想当程序员,如何判断自己是否适合当前端程序员?

孙叫兽

程序员 大前端 引航计划

波卡生态DeFi系统开发方案

薇電13242772558

区块链 defi

如何巧妙的去除数组中的空格?

程序媛观澜

c++ 字符串

爬虫入门经典(十八) | 滑动验证码识别

不温卜火

python 爬虫

一文看懂特权访问管理(PAM)

龙归科技

云计算 云存储

飞桨中国行首站重庆 解读产业 智造

百度大脑

百度 飞桨 中关村智酷

【实战问题】-- 缓存穿透,缓存击穿和缓存雪崩的区别以及解决方案

秦怀杂货店

Java redis 缓存 架构 分布式

2.4 Go语言从入门到精通:条件和循环

xcbeyond

3月日更 Go 语言

Three.Js杂记(一)——起步

空城机

大前端 WebGL 3D可视化 three.js

爬虫入门经典(四) | 如何爬取豆瓣电影Top250

不温卜火

python 爬虫

爬虫入门经典(十二) | 一文带你快速爬取豆瓣电影

不温卜火

python 爬虫

它终于来了!

Python研究所

Python

数据分析实战项目-蛋壳公寓投诉分析

诡途

Python 数据分析 蛋壳公寓

查询亿级数据毫秒级返回!Elasticsearch 是如何做到的?|极客时间_语言 & 开发_阮一鸣_InfoQ精选文章