除了谷歌和百度还必须了解的 Elasticsearch 的前世此生必看

当说到搜索时,大部分人可能只会说谷歌、百度等,但在企业内部的数据搜索还面临许多挑战,这就须要依赖开源的搜索技术,Elastic 公司就诞生了。本文讲讲 Elasticsearch 前世此生,可让咱们从总体上理解这个产品这家公司。生活中你遇到不懂的问题找百度或者谷歌,而在一个网站上面,好比淘宝,京东等电商买东西,去B站搜索好玩的视频,去抖音搜索等等,这些网站的搜索技术基本都是依赖于下面要说的这家公司Elastic。前端

诞生的前夜

许多年前,一个刚结婚的名叫ShayBanon的开发者,跟着他的妻子去了伦敦,他的妻子在那里学习厨师。在寻找一个赚钱的工做的时候,为了给他的妻子作一个食谱搜索引擎,他开始使用 Lucene 的一个早期版本。数据库

直接使用 Lucene 是很难的,所以 Shay Banon 开始作一个抽象层,Java 开发者使用它能够很简单的给他们的程序添加搜索功能。 他发布了他的第一个开源项目 Compass。后端

听说,Shay 的妻子还在等着她的食谱搜索引擎…服务器

食谱搜索引擎没作完, 却建立了一个开源项目Compass,这是2004年架构

诞生时刻

后来 Shay Banon 得到了一份工做,主要是高性能,分布式环境下的内存数据网格。这个对于高性能,实时,分布式搜索引擎的需求尤其突出,他决定重写Compass,把它变为一个独立的服务并取名 Elasticsearch。运维

第一个公开版本在2010年2月发布,今后之后,Elasticsearch 已经成为了 Github 上最活跃的项目之一,他拥有超过300名 contributors(目前736名 contributors )。 一家公司已经开始围绕Elasticsearch提供商业服务,并开发新的特性,可是,Elasticsearch 将永远开源并对全部人可用。分布式

快速发展

  • 2012年,Shay 成立了商业的公司Elasticsearch来对外提供商业的产品和服务。微服务

  • 2014年,成立公司仅仅18月之后,得到7000万美金的融资。性能

  • 2015年,公司名称从Elasticsearch改成Elastic ,由于公司的主要产品已经从单纯的Elasticsearch变为ELK(Elasticsearch ,Logstash和Kibana)。学习

  • 2017年10月13日宣布与阿里云签署达成多年的战略合做伙伴关系,并提供新的阿里云 Elasticsearch 服务。这项新的服务将把 Elasticsearch、Kibana、及全部 X-Pack 的功能托管在阿里云上,让客户能在阿里云上一键部署。

  • 2018年美国时间10月5号,成功上市。股票(股票代码:ESTC)更是大涨,发行价为 36 美圆,最高涨至 74.20 美圆,最终收盘价为 70.00 美圆,涨幅 94.44%,几乎翻倍。从公司成立到上市仅用了 8 年,超过 3.5+ 亿的产品下载,100万+ 名开发人员及 5,500+ 个客户。上市当天CEO Shay Banon 亲自发文感谢

  • 2019年5月23日 宣布 Elastic 与腾讯云达成全球合做关系。

腾讯云 Elastic 服务将会与 Elastic 在本身 Elastic Cloud 上提供的 Elasticsearch Service(以及与 Elastic 合做的其余平台之上的服务)保持一致,让用户不只可使用 Elastic Stack 的所有功能以及 Elastic 愈来愈丰富的解决方案(例如 App Search、Site Search、Enterprise Search、Logging、APM、Metrics、Security、Business Analytics 等等),还能在多种云服务之间的无缝转换。

Elasticsearch 版本迭代


date ES version
on 10 Apr 2019 7.0.0
on 15 Nov 2017 6.0.0
on 26 Oct 2016 5.0.0
on 22 Oct 2015 2.0.0
on 13 Feb 2014 1.0.0
on 8 Feb 2010 0.90.x -> 0.4.0

目前最新版本已经到 v7.3.2

Elastic 能够帮你解决什么问题?

试想一下:

在一个风和日丽的下午,你手机上收到一条告警短信,因而点击连接,打开 Kibana 的监控仪表盘,发现某台服务器的 CPU 达到 100% 了。

因而,你顺手点击过滤这台服务器的全部相关信息,能够看到相关的日志显示,是这台服务器上面部署的某一个业务服务的 QPS 有显著降低,而后过滤到这个业务的日志,发现有不少异常的日志信息,前端 Nginx 代理日志还显示有不少请求被拒绝,看样子是后端的微服务处理能力达到瓶颈。

这个时候,继续点击 APM 的分析面板,切换到事务和会话分析界面,看到有不少数据库连接处于开启状态。

你点击查看调用代码,立马就找到了性能瓶颈的缘由,原来是某个类的某个方法调用 MySQL 却没有及时释放连接形成了泄露,因而修改这行代码,提交上线,问题解决。而后,你能够若无其事地继续浏览相亲网站啦。

尽管这是一个假想的例子,可是能够看到,基于 Elastic Stack ,你能够覆盖一整套完整的,从全局性能监控到具体代码级别的排障和解决问题的过程,而且使用起来要比不少现有的方案更加高效和便捷。

这个故事说明了 Elastic Stack 平台的魅力,技术能够改变你的生活。

最近Elastic 发展真是太快了,推出了各类开源产品使用:

若是你没有一个强大的技术团队,还能够经过云端部署,交给更专业的人处理,更快捷高效。

Elasticsearch在智能运维领域的应用也很是广阔, 2017年5月4日官方推出 Elastic Stack Machine Learning,并将 Prelert Machine Learning 技术彻底集成到 Elastic Stack。下面一篇阿里的应用参考:

阿里云Elasticsearch在智能运维领域的应用

将来属于搜索

这个时代是数据的时代,信息的大爆炸,如何筛选信息,过滤信息成为了一个高手必会的技能,否则会被天大数字的信息,压的喘不过气。搜索的技术正式这个时代的一把利器,将来搜索能够帮咱们作不少意想不到的事情。

接下来,会一步一步经过Elastic 相关技术的学习,起先先经过 Elasticsearch 的入口。

下一篇会带来,如何规划高效能学习Elasticsearch 的技术,欢迎订阅关注我。

END

若有收获,请帮忙转发,后续会有更好文章贡献,您的鼓励是做者最大的动力!

欢迎关注个人公众号:架构师的修炼,得到独家整理的学习资源和平常干货推送。

相关文章
相关标签/搜索