第1课_elasticsearch的介绍和安装
热度🔥:29 免费课程
授课语音
Elasticsearch 介绍与安装
一、什么是 Elasticsearch?
Elasticsearch 是一个基于 Apache Lucene 构建的开源分布式搜索和分析引擎。它具有强大的全文搜索能力,广泛用于日志分析、网站搜索、实时数据分析等应用场景。
特点:
- 分布式架构: Elasticsearch 是分布式的,数据会被自动分割成多个分片并分布到不同的节点上,支持大规模数据的水平扩展。
- 全文搜索: 基于 Lucene 提供强大的全文检索功能,支持模糊搜索、短语匹配等。
- 实时分析: 数据写入之后,几乎可以立即查询。
- JSON 格式: 数据以 JSON 格式存储,便于与各种编程语言进行集成。
二、Elasticsearch 的组成
节点 (Node):
- Elasticsearch 集群由一个或多个节点组成,每个节点都是一个单独的 Elasticsearch 实例。常见的节点类型包括:
- 主节点(Master Node): 负责集群管理,决定数据的分布和分片的分配。
- 数据节点(Data Node): 存储数据,执行数据查询和聚合。
- 协调节点(Coordinating Node): 用于协调查询请求,将请求发送到相应的节点并汇总结果。
- Elasticsearch 集群由一个或多个节点组成,每个节点都是一个单独的 Elasticsearch 实例。常见的节点类型包括:
集群(Cluster):
- 由多个节点组成,负责数据存储和处理。
索引(Index):
- 一个索引包含了一组文档和相关的配置,类似于数据库中的表。
文档(Document):
- 存储在索引中的数据对象,相当于数据库中的一行数据。
分片(Shard)和副本(Replica):
- 分片(Shard): 每个索引会被分为多个分片,每个分片是一个独立的搜索单元。
- 副本(Replica): 用来容错,副本是分片的副本,可以提供冗余存储和负载均衡。
三、Elasticsearch 的应用场景
- 网站搜索引擎: 提供实时搜索和智能推荐。
- 日志分析与监控: 收集和存储日志数据,通过 Kibana 展示和分析。
- 数据分析: 用于大数据分析和实时数据处理。
- 全文搜索: 为应用程序提供强大的搜索引擎能力。
- 商业智能: 在企业内部进行数据查询和商业分析。
四、Elasticsearch 安装
1. 系统要求
- 操作系统: 支持 Linux、Windows 和 macOS。
- Java: Elasticsearch 需要 Java 8 或更高版本的支持,但自带 JDK,因此不需要单独安装。
2. 下载与安装
步骤一: 下载 Elasticsearch
- 访问 Elasticsearch 官方下载页面。
- 选择适合操作系统的版本。
步骤二: 解压并安装
- Linux/macOS:
tar -xzf elasticsearch-<version>.tar.gz cd elasticsearch-<version>
- Windows:
解压
.zip
文件,并进入解压目录。
- Linux/macOS:
步骤三: 启动 Elasticsearch
- Linux/macOS:
./bin/elasticsearch
- Windows:
双击
bin/elasticsearch.bat
启动。
- Linux/macOS:
步骤四: 验证 Elasticsearch 是否启动成功
- 打开浏览器,访问 http://localhost:9200。
- 如果显示类似以下内容,表示启动成功:
{ "name" : "node-1", "cluster_name" : "elasticsearch", "cluster_uuid" : "xxxxx", "version" : { "number" : "8.x.x", "build_flavor" : "default", "build_type" : "tar", "build_hash" : "xxxxx", "build_date" : "2024-xx-xxTxx:xx:xx.000Z", "build_snapshot" : false, "lucene_version" : "x.x", "minimum_wire_compatibility_version" : "x.x", "minimum_index_compatibility_version" : "x.x" }, "tagline" : "You Know, for Search" }
3. 配置 Elasticsearch
- 修改配置文件:
- 配置文件位于
config/elasticsearch.yml
,可以修改集群名称、节点名称、网络设置等。 - 常见配置项:
cluster.name
: 设置集群名称。node.name
: 设置节点名称。network.host
: 设置节点的 IP 地址,默认为localhost
。
- 配置文件位于
4. 安装和配置插件(可选)
- 安装 X-Pack 插件(用于安全和监控等功能):
./bin/elasticsearch-plugin install x-pack
五、常见操作
创建索引
curl -X PUT "localhost:9200/my_index"
索引文档
curl -X POST "localhost:9200/my_index/_doc/1" -H 'Content-Type: application/json' -d' { "title": "Elasticsearch Basics", "content": "Learn Elasticsearch in a few steps" } '
查询文档
curl -X GET "localhost:9200/my_index/_search?q=Elasticsearch"
删除索引
curl -X DELETE "localhost:9200/my_index"
六、总结
- Elasticsearch 是一个强大的分布式搜索引擎,广泛应用于大数据分析、日志管理、实时搜索等领域。
- 安装 Elasticsearch 相对简单,只需要下载解压并启动即可。
- 配置和使用 Elasticsearch 时可以根据需求灵活调整,并且支持各种强大的查询与分析功能。