ElasticSearch介绍
ElasticSearch介绍
ElasticSearch 是一个分布式的RESTful开源全文搜索和分析引擎,使用 Java 开发并使用 Lucene 作为其核心来实现所有索引和搜索的功能, 2010 年首次发布。快速,近实时地存储,搜索和分析大量数据。它通常用作底层引擎、技术,为具有复杂搜索功能和要求的应用程序提供支持。
Elastic Stack介绍
通常 Elastic Stack 称为 ELK Stack(代指 Elasticsearch、Logstash、Kibana),目前 Elastic Stack 包括一系列丰富的轻量型数据采集代理,这些代理统称为 Beats,可用来向 Elasticsearch 发送数据。
Elastic Stack技术栈
1)Logstash
Logstash 是免费且开放的服务器端数据处理管道,能够从多个来源采集数据,转换数据,然后将数据发送到您最喜欢的“存储库”中。
2)Kibana
Kibana 是一个免费且开放的用户界面,能够让您对 Elasticsearch 数据进行可视化,并让您在 Elastic Stack 中进行导航。您可以进行各种操作,从跟踪查询负载,到理解请求如何流经您的整个应用,都能轻松完成。
3)Beats 轻量型数据采集器
Beats 是一个免费且开放的平台,集合了多种单一用途数据采集器。它们从成百上千或成千上万台机器和系统向 Logstash 或 Elasticsearch 发送数据。
-
Auditbeat 审计数据
-
Metricbeat 指标数据
-
Filebeat 日志文件
-
Packetbeat 网络指标数据
-
Heartbeat 运行时间监控
-
Widows beat windows 事件日志

Elasticsearch 对比 Solr
-
Solr 利用 Zookeeper 进行分布式管理,而 Elasticsearch 自身带有分布式协调管理功能;
-
Solr 支持更多格式的数据,HTML、PDF、微软 Office 系列软件格式以及 JSON、XML、CSV 等纯文本格式。而 Elasticsearch 仅支持json文件格式;
-
Solr 在传统的搜索应用中表现好于 Elasticsearch,但在处理实时搜索应用时效率明显低于 Elasticsearch。
-
Solr 是传统搜索应用的有力解决方案,但 Elasticsearch 更适用于新兴的实时搜索应用。
-
Solr 查询io阻塞
应用场景
-
全文检索: 淘宝 京东… 海量数据搜索
-
记录和日志分析:结合Logstash,ElasticSearch 和Kibana 三个组件,可以搭建一套高效的日志收集和分析系统,也就是我们常见的ELK系统。
-
数据可视化:Kibana 是一款功能强大且易于使用的可视化工具,可以结合 ES 对大量数据提供图表选项、地理数据等可视化组件。
端口
- 9200
9200 是ES节点与外部通讯使用的端口。它是http协议的RESTful接口(各种CRUD操作都是走的该端口,如查询:http://localhost:9200/user/_search) - 9300
9300 是ES节点之间通讯使用的端口。它是tcp通讯端口,集群间和TCPclient都使用该端口。(java程序中使用ES时,在配置文件中要配置该端口)

浙公网安备 33010602011771号