中华石衫 Elasticsearch 顶尖高手系列课程
最近在看 B 站上中华石衫的 Elasticsearch 顶尖高手系列课程,简单的介绍一下。
根据自我介绍,中华石杉为 BAT 以及一线互联网公司出身,真实身份暂时未知,但是在网络上似乎流传着有关 Elasticsearch、Java 面试的课程、Spark 和架构等各种课程。
我听了大概 20 讲左右的 Elasticsearch 课程,感觉讲的还是挺不错的,不过老师本身也比较有性格,比如不喜欢 PPT 上课,更愿意使用 Windows 自带的画图软件手工画图,而且还在上面写字。图画的一点也不好看,有点类似于板书的意思。
有点好奇,感觉老师似乎出道太早,错过了知识付费的浪潮。不过好像现在也有学费昂贵的架构师课程,另外有一个公众号:石杉的架构笔记
课程大概是 2017 年录制的,针对 Elasticsearch 5.2,好像是为龙果学院录制的,但是现在的龙果学院似乎已经找不到这个课程。
按照课程内容介绍,似乎应该是有核心知识篇,高手进阶篇,大型集群运维优化篇,大型项目架构篇和 ELK 深入浅出篇。在 B 站能找到的大概是有核心知识篇和高手进阶篇两个部分,其中核心知识篇大概是 74 讲,16 小时;高手进阶 135 讲,30 小时。高手进阶部分似乎还有第二版,不知真伪。
其中有一些关于开发的内容,如果是作为认证考试之前的准备,那么可以先不看。
我打算先过一遍能找到的视频,在 Elastic 7.10.1 的版本上过一遍其中的操作和案例,并且把学习的过程记录一下,不知道 28 天够不够。
以下内容来自于课程
什么是搜索?
如果一般人想找寻任何的信息的时候,就会上搜索引擎去搜索一下,比如说找一部自己喜欢的电影,或者说找一本喜欢的书,或者找一条感兴趣的新闻(提到搜索的第一印象)
但是搜索引擎并不是搜索的全部,还有站内的垂直搜索以及企业内部的搜索。
互联网的搜索:电商网站、招聘网站、新闻网站、各种应用
信息系统的搜索:办公自动化软件,会议管理,日程管理,项目管理,员工管理,搜索“张三”,“张三儿”,“张小三”;电商网站,卖家,后台管理系统,搜索“牙膏”,订单,“牙膏相关的订单”
搜索,就是在任何场景下,找寻你想要的信息,这个时候,会输入一段你要搜索的关键字,然后就期望找到这个关键字相关的有些信息
如果用数据库做搜索会怎么样?
做软件开发的话,或者对 IT、计算机有一定的了解的话,都知道,数据都是存储在数据库里面的,比如说电商网站的商品信息,招聘网站的职位信息,新闻网站的新闻信息,等等吧。所以说,很自然的一点,如果说从技术的角度去考虑,如何实现如说,电商网站内部的搜索功能的话,就可以考虑,去使用数据库去进行搜索。
比方说,每条记录的指定字段的文本,可能会很长,比如说“商品描述”字段的长度,有长达数千个,甚至数万个字符,这个时候,每次都要对每条记录的所有文本进行扫描,懒判断说,你包不包含我指定的这个关键词(比如说“牙膏”)
还不能将搜索词拆分开来,尽可能去搜索更多的符合你的期望的结果,比如输入“生化机”,就搜索不出来“生化危机”
用数据库来实现搜索,是不太靠谱的。通常来说,性能会很差的。
什么是全文检索和 Lucene?
全文检索,倒排索引
lucene,就是一个 jar 包,里面包含了封装好的各种建立倒排索引,以及进行搜索的代码,包括各种算法。我们就用 java 开发的时候,引入 lucene jar,然后基于 lucene 的 api 进行去进行开发就可以了。用 lucene,我们就可以去将已有的数据建立索引,lucene 会在本地磁盘上面,给我们组织索引的数据结构。另外的话,我们也可以用 lucene 提供的一些功能和 api 来针对磁盘上额
那么,什么是 Elasticsearch ?且听下回分解。
版权声明: 本文为 InfoQ 作者【escray】的原创文章。
原文链接:【http://xie.infoq.cn/article/8523504cf90d9e475b381a71c】。
本文遵守【CC-BY 4.0】协议,转载请保留原文出处及本版权声明。
评论