#头条创作挑战赛#

一、Elasticsearch 简介
Elasticsearch:官方分布式搜索和分析引擎 | Elastic在 RESTful 风格的分布式免费开源搜索和分析引擎开源中,Elasticsearch 处于领先地位,速度快,可实现水平可扩展性和可靠性,并能让您轻松进行管理。免费启用。

https://www.elastic.co/cn/elasticsearch

1、介绍
- Elasticsearch 是一个基于Lucene的搜索服务器、
- 提供了一个分布式多用户能力的全文搜索引擎,基于 RESTful web 接口
- Elasticsearch 是用 Java 语言开发的,并作为 Apache 许可条款下的开放源码发布,是一种流行的企业级搜索引擎。Elasticsearch 用于云计算中,能够达到实时搜索,稳定,可靠,快速,安装使用方便。官方客户端在 Java、.NET(C#)、PHP、Python、Apache Groovy、Ruby 和许多其他语言中都是可用的
- 根据 DB-Engines 的排名显示,Elasticsearch 是最受欢迎的企业搜索引擎,其次是 Apache Solr,也是基于 Lucene。
2、创始人
Shay Banon (谢巴农)

二、Elasticsearch 可以做什么
1、信息检索



电商 / 门户 / 论坛
2、企业内部系统搜索
- 关系型数据库使用 like 进行模糊检索,会导致索引失效,效率低下
- 可以基于 Elasticsearch 来进行检索,效率杠杠的

OA / CRM / ERP
3、数据分析引擎
Elasticsearch 聚合可以对数十亿行日志数据进行聚合分析,探索数据的趋势和规律。
三、Elasticsearch 特点
1、海量数据处理
- 大型分布式集群(数百台规模服务器)
- 处理 PB 级数据
- 小公司也可以进行单机部署
2、开箱即用
3、作为传统数据库的补充
- 传统关系型数据库
- 排名、海量数据存储、分析等功能
- Elasticsearch 可以作为传统关系数据库的补充,提供 RDBM 无法提供的功能
四、哪些公司在使用 Elasticsearch
- 京东
- 携程
- 去哪儿
- 58 同城
- 滴滴
- 今日头条
- 小米
- 哔哩哔哩
- 联想
- 思科
- Airbus
- ebay
- 暴雪
- 德国大众
- 微软
- Symantec
- Facebook
- BBC
- 英伟达
- Uber
- IBM
- Github
- Docker
五、ElasticSearch 使用案例
- 2013 年初,GitHub 抛弃了 Solr,采取 ElasticSearch 来做 PB 级的搜索。 “GitHub 使用 ElasticSearch 搜索 20TB 的数据,包括 13 亿文件和 1300 亿行代码”
- 维基百科:启动以 elasticsearch 为基础的核心搜索架构
- SoundCloud:“SoundCloud 使用 ElasticSearch 为 1.8 亿用户提供即时而精准的音乐搜索服务”
- 百度:百度目前广泛使用 ElasticSearch 作为文本数据分析,采集百度所有服务器上的各类指标数据及用户自定义数据,通过对各种数据进行多维分析展示,辅助定位分析实例异常或业务层面异常。目前覆盖百度内部 20 多个业务线(包括 casio、云分析、网盟、预测、文库、直达号、钱包、风控等),单集群最大 100 台机器,200 个 ES 节点,每天导入 30TB+数据
- 新浪使用 ES 分析处理 32 亿条实时日志
- 阿里使用 ES 构建挖财自己的日志采集和分析体系
六、ElasticSearch 对比 Solr
- Solr 利用 Zookeeper 进行分布式管理,而 Elasticsearch 自身带有分布式协调管理功能;
- Solr 支持更多格式的数据,而 Elasticsearch 仅支持 json 文件格式;
- Solr 官方提供的功能更多,而 Elasticsearch 本身更注重于核心功能,高级功能多有第三方插件提供;
- Solr 在传统的搜索应用中表现好于 Elasticsearch,但在处理实时搜索应用时效率明显低于 Elasticsearch
七、发展历史

- 2004 年,发布第一个版本名为 Compass 的搜索引擎,创建搜索引擎的目的主要是为了搜索食谱
- 2010 年,发布第二个版本更名为 Elasticsearch,基于 Apache Lucene 开发并开源
- 2012 年,创办 Elasticsearch 公司
- 2015 年,Elasticsearch 公司更名为 Elastic,是专门从事与 Elasticsearch 相关的商业服务,并衍生了 Logstash 和 Kibana 两个项目,填补了在数据采集、数据可视化的空白。于是,ELK 就诞生了
- 2015 年,Elastic 公司将开源项目 Packetbeat 整合到 Elasticsearch 技术栈中,并更名为 Beats,它专门用于数据采集的轻量级组件,可以将网络日志、度量、审计等各种数据作为不同的源头发送到 Logstash 或者 Elasticsearch
- ELK 不再包括 Elastic 公司所有的开源项目,ELK 开始更名为 Elastic Stack,将来还有更多的软件加入其中,包括数据采集、清洗、传输、存储、检索、分析、可视化等
- 2018 年,Elastic 公司在纽交所挂牌上市