一、ElasticSearch
ElasticSearch 是一个基于 Apache Lucene 的开源搜索引擎。它通过RESTful API 来隐藏Lucene的复杂性,从而让全文搜索变得简单。不过,Elasticsearch 不仅仅是 Lucene 和全文搜索,我们还能这样去描述它:
- 分布式的实时文件存储,每个字段都被索引并可被搜索
- 分布式的实时分析搜索引擎
- 可以扩展到上百台服务器,处理PB级结构化或非结构化数据
许多年前(2004年), 有一个叫Shay Banon的待业工程师跟随他的新婚妻子来到伦敦,他的妻子想在伦敦学习做一名厨师。然后他想为自己的妻子开发一个方便搜索菜谱的应用,他开始使用 Lucene 的一个早期版本。
但是尝试之后,他感受到了直接使用 Lucene 开发程序的各种暴击和痛苦,于是他在 Lucene 之上,封装了一个叫作 Compass 的程序框架并且把它开源了。后来 Shay 找到了一份跟高性能和分布式相关的工作,他在工作中渐渐发现,越来越需要一个易用的高性能、实时、分布式搜索服务,于是他决定重写Compass,将它从一个库打造成了一个独立的server,并将其改名Elasticsearch。
Shay Banon在2010年2月发布了Elasticsearch的第一个版本。它支持分布式,可以水平扩展,增加了Restful api, 降低了全文检索的学习曲线,可以被任何编程语言调用。
2012年成立了Elasticsearch 公司,主要围绕Elasticsearch及相关软件提供商业服务和产品。2014年6月,在成立公司18个月后,该公司宣布通过C轮融资筹集7000万美元。这轮融资由新企业协会(NEA)牵头。其他投资者包括Benchmark Capital和Index Ventures。这一轮融资总计1.04亿美元。
2015年3月,Elasticsearch公司更名为Elastic。
2018年6月,Elastic提交了首次公开募股申请,估值在15亿到30亿美元之间。公司于2018年10月5日在纽约证券交易所挂牌上市。
二、Logstash
Logstash 是开源的服务器端数据处理管道,支持从不同来源采集数据,装换数据,并将数据发送到不同的存储库中。
Logstash 项目诞生于2009年8月2日。其作者是世界著名的运维工程师乔丹西塞(JordanSissel),乔丹西塞当时是著名虚拟主机托管商 DreamHost 的员工,还发布过非常棒的软件打包工具 fpm。
2013年,Logstash 被 Elasticsearch 公司收购。
三、Kibana
Kibana 是基于 Logstash 的工具,2013年被 Elasticsearch 公司收购。Kibana是一个针对Elasticsearch的开源分析及可视化平台,用来搜索、查看交互存储在 Elasticsearch索引中的数据。使用Kibana,可以通过各种图表进行高级数据分析及展示。
四、Beats
Beats 是采用 go 语言开发的轻量级的数据采集工具,它可以采集不同类型的数据发送到 ElasticSearch 中,也可以将采集完的数据发送到 Logstash 上进行中转,然后推送到 ElasticSearch 中。