目录
Elasticsearch的简介
Elasticsearch 是一款基于Apache Lucene的开源搜索引擎,在现代数据管理和分析领域占据重要地位。它以其高效的全文搜索、实时数据分析能力和灵活的分布式架构著称,能够处理从GB到PB级别的海量数据。Elasticsearch不仅支持复杂的查询和聚合操作,还提供了便捷的RESTful API接口,易于与各种应用集成。作为Elastic Stack的核心组件之一,它与Logstash(用于数据收集和转换)、Kibana(用于数据可视化)紧密协作,为企业提供强大的日志分析、监控和搜索解决方案。凭借其卓越的性能、扩展性和活跃的社区支持,Elasticsearch已成为众多行业中的关键工具,广泛应用于网站搜索、业务分析、安全信息管理等多个领域,帮助企业快速获取洞察,优化决策过程。
Elasticsearch的定位
Elasticsearch是由elastic公司开发的一套搜索引擎技术,它是elastic技术栈中的一部分。完整的技术栈包括:
-
Elasticsearch:用于数据存储、计算和搜索(学习)
-
Logstash/Beats:用于数据收集(目前忽略)
-
Kibana:用于数据可视化(学习)
整套技术栈被称为ELK,经常用来做日志收集、系统监控和状态分析等等。
安装Elasticsearch
注意: 这里我们采用的是elasticsearch的7.12.1版本,由于8以上版本的JavaAPI变化很大,在企业中应用并不广泛,企业中应用较多的还是8以下的版本。
通过下面的Docker命令,即可部署Elasticsearch:
java
docker run -d \
--name es \
-e "ES_JAVA_OPTS=-Xms512m -Xmx512m" \
-e "discovery.type=single-node" \
-v es-data:/usr/share/elasticsearch/data \
-v es-plugins:/usr/share/elasticsearch/plugins \
--privileged \
-p 9200:9200 \
-p 9300:9300 \
elasticsearch:7.12.1
安装完成后,访问9200端口,即可看到响应的Elasticsearch服务的基本信息:

Elasticsearch安装完成
安装Kibana
通过下面的Docker命令,即可部署Kibana:
注意:es替换为你自己的虚拟机地址
java
docker run -d \
--name kibana \
-e ELASTICSEARCH_HOSTS=http:es:9200 \
--network=hm-net \
-p 5601:5601 \
kibana:7.12.1
访问你自己的虚拟机地址,加上端口5601,界面如下:

Kibana安装完成