Elasticsearch 入门指南 - 教程

news/2026/1/17 19:52:24/文章来源:https://www.cnblogs.com/tlnshuju/p/19497021

Elasticsearch 入门指南 - 教程

2026-01-17 19:45  tlnshuju  阅读(0)  评论(0)    收藏  举报

Elasticsearch 入门指南

一、什么是 Elasticsearch?

Elasticsearch(简称 ES)是一个开源的分布式搜索引擎,专门用于:

核心优势

二、核心概念图解

1. 基本术语

概念类比说明
索引(Index)数据库数据容器(如:products
文档(Document)表行基本数据单位(JSON格式)
字段(Field)表列文档的属性(如:name, price
分片(Shard)分区数据分割单元(提高并行能力)

2. 与传统数据库对比

关系型数据库
数据库Database
表Table
行Row
列Column
Elasticsearch
索引Index
文档Document
字段Field

三、快速安装(单机版)

  1. 下载 Elasticsearch(需 Java 环境):
https://www.elastic.co/downloads/elasticsearch
  1. 解压并启动:
tar -xzf elasticsearch-8.10.2-linux-x86_64.tar.gz
cd elasticsearch-8.10.2/bin
./elasticsearch
  1. 验证运行:
http://localhost:9200

返回JSON信息表示成功!

四、基础操作入门

1. 创建索引(类似建表)

# 创建商品索引
PUT /products
{
"settings": {
"number_of_shards": 1# 分片数(入门用1个即可)
},
"mappings": {
"properties": {
"name": {"type": "text"},
"price": {"type": "float"},
"category": {"type": "keyword"}
}
}
}

2. 添加文档(插入数据)

# 添加一个商品
POST /products/_doc/1
{
"name": "无线蓝牙耳机",
"price": 299.0,
"category": "电子产品"
}
# 批量添加(推荐)
POST /products/_bulk
{"index":{}}
{"name":"运动水杯","price":89.9,"category":"生活用品"}
{"index":{}}
{"name":"编程书籍","price":59.0,"category":"图书"}

3. 搜索文档

# 简单搜索(查找所有)
GET /products/_search
# 条件搜索(查找价格低于100的商品)
GET /products/_search
{
"query": {
"range": {
"price": {"lte": 100}
}
}
}

五、实战案例:商品搜索系统

场景需求

1. 创建增强版商品索引

PUT /shop_products
{
"mappings": {
"properties": {
"name": {
"type": "text",
"analyzer": "ik_smart"# 中文分词
},
"price": {"type": "float"},
"category": {"type": "keyword"}, # 精确匹配
"stock": {"type": "integer"}
}
}
}

2. 添加测试数据

POST /shop_products/_bulk
{"index":{}}
{"name":"Apple iPhone 14","price":5999,"category":"手机","stock":100}
{"index":{}}
{"name":"华为MateBook笔记本","price":6899,"category":"电脑","stock":50}
{"index":{}}
{"name":"小米蓝牙音箱","price":199,"category":"数码配件","stock":200}
{"index":{}}
{"name":"耐克运动鞋","price":899,"category":"鞋服","stock":80}

3. 实现综合搜索

GET /shop_products/_search
{
"query": {
"bool": {
"must": [
{"match": {"name": "蓝牙"}}# 名称包含"蓝牙"
],
"filter": [
{"range": {"price": {"gte": 100, "lte": 500}}}, # 价格100-500
{"term": {"category": "数码配件"}}# 分类精确匹配
]
}
}
}

4. 搜索结果解析

{
"took": 15,// 耗时15毫秒
"hits": {
"total": {
"value": 1,// 找到1个匹配商品
"relation": "eq"
},
"hits": [
{
"_source": {
"name": "小米蓝牙音箱",
"price": 199,
"category": "数码配件",
"stock": 200
}
}
]
}
}

六、常见使用场景

  1. 网站搜索
GET /articles/_search
{
"query": {"match": {"content": "人工智能"}}
}
  1. 日志分析
# 统计错误日志数量
GET /app-logs/_search
{
"query": {"term": {"level": "ERROR"}},
"size": 0# 不返回具体文档
}
  1. 自动补全
GET /products/_search
{
"suggest": {
"product_suggestion": {
"prefix": "蓝",
"completion": {"field": "name_suggest"}
}
}
}

七、学习路径建议

  1. 掌握基础操作(CRUD+搜索)
  2. 理解分词器(中文用 ik 插件)
  3. 学习组合查询(bool 查询)
  4. 探索聚合分析(统计计算)
  5. 部署集群生产环境

新手提示

  • 从单机版开始学习
  • 使用 Kibana 控制台操作(更直观)
  • 实际项目从简单搜索开始
  • 官方文档是最好的学习资源

Elasticsearch 是现代应用必备的搜索技术,通过本文案例您已掌握基础操作。下一步可以尝试部署实际项目,体验其强大的搜索分析能力!

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:http://www.mzph.cn/news/1174594.shtml

如若内容造成侵权/违法违规/事实不符,请联系多彩编程网进行投诉反馈email:809451989@qq.com,一经查实,立即删除!

相关文章

VMware vSphere 网络+存储 --1

vSphere 网络整体架构: 物理交换机 │vmnic(ESXi 主机物理网卡) │vSwitch / DVS │Port Group │VMkernel(vNIC) │ VM对象 本质vmnic 物理网卡vSwitch 软件交换机DVS(…

MongoDB Schema验证:灵活的数据结构控制方法

MongoDB Schema验证:灵活与约束的动态平衡技术解析 关键词 MongoDB Schema验证、JSON Schema、数据完整性、NoSQL约束、动态数据模型、验证规则优化、跨版本兼容 摘要 MongoDB作为典型的文档型NoSQL数据库,其“无Schema”特性(更准确的表述是…

时间序列分析实战:用 Python 实现股票价格预测与风险评估

在金融市场中,股票价格预测一直是投资者、分析师和学术界关注的焦点。时间序列分析作为统计学的重要分支,为理解和预测股票价格走势提供了科学的理论框架和方法工具。随着Python编程语言的普及和数据科学工具的成熟,越来越多的研究人员和从业…

Agent的能力边界通俗解说和总结

案例1:搭子小滴 https://mp.weixin.qq.com/s/norFlpaY6M_YgJZn_QGIpA 滴滴app,日常出行搭子小滴,这是滴滴上线的Agent。Agent加持,现在打车不用点来点去,只需要一句话,不光能选择油电动力、空气清新和车型…

从容器到 Docker 再到 Kubernetes 的进阶之路介绍 - 指南

pre { white-space: pre !important; word-wrap: normal !important; overflow-x: auto !important; display: block !important; font-family: "Consolas", "Monaco", "Courier New", …

VMware vSphere 网络+存储 -- 1

vSphere 网络整体架构: 物理交换机 │vmnic(ESXi 主机物理网卡) │vSwitch / DVS │Port Group │VMkernel(vNIC)│VM对象 本质vmnic 物理网卡vSwitch 软件交换机DVS(Distributed V…

MySQL 数据备份流程化

背景 在 Linux 机器上用 Docker 部署了 MySQL 数据库,现在需要定期备份数据。备份策略是先在本地备份一份,然后传输到远程服务器。 环境信息: MySQL 容器:mysql-db数据卷路径:/home/docker/work_root/volumes/dev-db_s…

给“拉票”加点WebGL:我做了个能拖拽旋转的3D星图,每一面墙都是我的代码故事(附完整源码) | 博客之星求投票

文章目录 前言一、网页效果预览二、功能和交互式体验三、 技术实现详解1. 技术栈2. 分级渲染策略3. Three.js 3D场景搭建3.1 粒子系统(星空背景)3.2信息墙面(数据展示)3.3 光线效果 4. 数据管理与模态窗口 四、完整代码五、我的拉…

AI | AI4UI(2025.12)| 论文:Beyond Prototyping: Autonomous, Enterprise-Grade Frontend Development

Beyond Prototyping: Autonomous, Enterprise-Grade Frontend Development from Pixel to Production via a Specialized Multi-Agent Framework 超越原型设计:通过专用多智能体框架,实现从像素到生产环境的自主企业级前端开发 论文链接 主要贡献: 结…

金仓数据库KingbaseES IO性能优化指南

在数据库运维的日常工作中,IO性能绝对是影响系统“跑得快不快、稳不稳”的关键因素。按木桶原理来说,IO子系统要是拖后腿,哪怕CPU、内存再强悍也没用。尤其是金仓数据库KingbaseES扛着高并发事务、海量数据查询这类…

ssm695新型药物临床药品治疗方案信息管理系系统vue

目录项目背景技术架构核心功能模块创新点应用价值开发技术源码文档获取/同行可拿货,招校园代理 :文章底部获取博主联系方式!项目背景 SSM695新型药物临床药品治疗方案信息管理系统基于Vue.js前端框架与SpringSpringMVCMyBatis(SSM&#xff0…

VMware vSphere 网络+存储

vSphere 网络整体架构: 物理交换机 │vmnic(ESXi 主机物理网卡) │vSwitch / DVS │Port Group │虚拟机 / VMkernel对象 本质vmnic 物理网卡vSwitch 软件交换机DVS(Distributed Virt…

基于SpringBoot+Vue.is的社区服务平台管理系统(源码+lw+部署文档+讲解等)

课题介绍本课题旨在设计并实现一套基于SpringBootVue.js的社区服务平台管理系统,以解决传统社区管理中服务流程繁琐、居民诉求响应滞后、信息传递不畅、资源调度低效等痛点,助力社区服务数字化、管理精细化、互动便捷化升级。系统采用前后端分离架构&…

交通仿真软件:VISSIM_(14).事故与异常情况模拟

事故与异常情况模拟 在交通仿真软件中,事故与异常情况的模拟是评估交通系统在极端条件下的性能和安全性的关键部分。通过模拟事故和异常情况,可以研究交通流的动态变化、驾驶员的行为反应以及交通管理措施的有效性。本节将详细介绍如何在VISSIM中模拟事故…

ssm687网上购物超市系统vue

目录网上购物超市系统(Vue版)摘要开发技术源码文档获取/同行可拿货,招校园代理 :文章底部获取博主联系方式!网上购物超市系统(Vue版)摘要 该系统基于Vue.js前端框架与SSM(SpringSpringMVCMyBat…

ssm688校园安全管理系统

目录SSM688校园安全管理系统摘要开发技术源码文档获取/同行可拿货,招校园代理 :文章底部获取博主联系方式!SSM688校园安全管理系统摘要 校园安全管理系统基于SSM(SpringSpringMVCMyBatis)框架开发,旨在通过信息化手段…

基于Springboot+Vue的爱琴海购物公园网上商城系统(源码+lw+部署文档+讲解等)

课题介绍本课题旨在设计并实现一套基于SpringBootVue的爱琴海购物公园网上商城系统,以解决传统商场线上线下割裂、品牌商户营销渠道单一、用户购物体验不连贯、运营数据碎片化等痛点,搭建集商品销售、品牌运营、O2O服务、数据管控于一体的新零售服务平台…

全球股市估值与人口结构变化的关系

全球股市估值与人口结构变化的关系 关键词:全球股市估值、人口结构变化、经济增长、消费需求、投资偏好 摘要:本文旨在深入探讨全球股市估值与人口结构变化之间的关系。通过对相关核心概念的阐述、算法原理的分析、数学模型的构建以及实际案例的研究,揭示人口结构变化如何从…

救命神器2026!9大AI论文平台测评:本科生毕业论文救星

救命神器2026!9大AI论文平台测评:本科生毕业论文救星 2026年AI论文平台测评:为何需要这份榜单? 随着人工智能技术的不断进步,AI在学术写作领域的应用越来越广泛。然而,面对市场上琳琅满目的AI论文平台&…

ssm689医药网上药品商城销售管理系统vue

目录SSM689医药网上药品商城销售管理系统Vue摘要开发技术源码文档获取/同行可拿货,招校园代理 :文章底部获取博主联系方式!SSM689医药网上药品商城销售管理系统Vue摘要 该系统基于SSM(SpringSpringMVCMyBatis)框架与Vue.js前端技…