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时,在配置文件中要配置该端口)
posted @ 2022-09-09 17:00  Myifb  阅读(64)  评论(0)    收藏  举报