赞
踩
大家都知道ES是搜索引擎,搜索框架,反正就是干搜索的,那搜索到底是个啥?
大白话来剖析搜索的含义就是:你想查个东西,输入了你要查的关键词,然后给你返回来一堆匹配度最高的文章,也就是你想要的结果。这就是搜索!
再比如:
ES是搜索框架。也就是说你用它就能实现类似百度、Google、淘宝、京东等这种搜索网站。他底层是lucene,简化了lucene的那些复杂API,它天然支持集群,开箱即用。性能也得到了大幅度提升。
emm…还不懂?
你把lucene理解成spring,而ES就是springboot,也就是说lucene很复杂,ES对lucene封装了,使其开箱即用变得很简单,同时又额外天然支持了集群,性能方面也得到了提高。
搜索引擎:比如百度、Google、电商网站等搜索的场景
数据分析引擎:比如对用户的行为进行埋点,一般多用于大数据分析领域,你没发现你在淘宝或者头条或者抖音搜个东西后,下次再打开的时候给你推送的都是你之前常搜的那些类型的东西吗?
全文检索:也就是说在全部内容里找你要检索的关键字,比如如下SQL:
SELECT * FROM table WHERE title LIKE "%Java%" OR content LIKE "%Java%";
- 1
结构化搜索:也就是说等值匹配,比如如下SQL:
SELECT * FROM table WHERE title = "JDK安装与配置";
- 1
聚合:比如京东都有分类的,统计每一个分类下有多少个商品:
SELECT category_id, COUNT(*) FROM table GROUP BY category_id;
- 1
天然支持集群分布式。也就是说ES可以自动将海量数据分散到多台服务器上去存储和检索。分布式以后,就可以采用大量的服务器去存储和检索数据,自然而然就可以实现海量数据的
近实时:检索个数据要花费好几分钟这就不叫近实时,ES可以在秒级别对海量数据进行搜索和分析。
Elastic Stack整套生态圈就跟SpringCloud是的,全家桶,啥也有,存储、分析、搜索、可视化、告警等等都给你做好了组件。
【微信公众号】
Copyright © 2003-2013 www.wpsshop.cn 版权所有,并保留所有权利。