查询百亿级数据毫秒级返回!牛逼哄哄的ElasticSearch是如何做到的?
路人甲Java
共 1002字,需浏览 3分钟
·
2021-03-16 16:32
来源:GitHub指南
1、你是否有这样的需求?
1、想做一个类似于谷歌、或者百度一样的网站,用户随意输入一些词,毫秒之间快速检索大量相关文章。
2、或者类似于淘宝、京东这样的网站中的检索功能,用户随意输入,然后快速检索出用户期望的产品。
3、想做一个博客网站,支持快速检索
4、在公司内部做一个日志检索系统,能够收集公司所有系统的日志,支持关键字快速定位日志,方便排错。
如果你有这样的需求,那么这篇文章就可以帮你实现这种诉求。
2、如何实现我们的诉求?
刚刚上面提到的需求就是全文检索技术解决的问题,能够从大量非结构化的数据中快速检索出符合条件的结果。
比如百度可能收录了万亿以上的文章,但是你输入一个 python,百度能在毫秒之间从万亿文章中检索出包含 python 的结果返回给你,而这个就是全文检索技术的功能。
3、Elasticsearch
这里给大家推荐全球排名第一的全文检索框架:Elasticsearch,特点如下:
1、java 语言开发的一个全文检索框架,源码已开源
2、支持 restfull 接口的方式调用,所以基本上和任何开发语言都可以非常方便的集成
3、支持无限扩展,这个什么意思呢?不管你的数量多大,elasticsearch 都可以在快速帮你检索出结果;因为他采用分布式集群的方式部署,支持无限扩张
4、高可用
可能这里还不能体现他到底有多牛,这么说吧,除了谷歌、百度他们的检索技术是自己实现的,而其他公司 99%都使用的是 Elasticsearch,而这家公司光靠对外提供全文检索技术服务,市值已经 100 亿美元了。
4、官网
https://www.elastic.co/cn/
5、学习文档
学习资料可以直接看官网文档,地址如下:
https://www.elastic.co/guide/cn/elasticsearch/guide/current/index.html
6、学习视频
通过视频学习,会更容易一些,b 站上很多,可以去看看
https://search.bilibili.com/all?keyword=elasticsearch
7、领取福利
评论