ElasticSearch 入门教程 —— 基本概念

简介

Elasticsearch is a highly scalable open-source full-text search and analytics engine. It allows you to store, search, and analyze big volumes of data quickly and in near real time.

上面是来自官网对 Elasticsearch 的描述: Elasticsearch 是一个高度可扩展的开源全文搜索和分析引擎。它允许我们快速、近乎实时地存储、搜索和分析大量数据。

所以可以理解为 ES 是一款存储数据的软件,我们将大量的数据存储到 ES 当中,然后利用 ES 强大的检索和分析功能,高效检索和分析我们存在 ES 当中的数据。那么,什么是全文搜索呢?其实很常见,例如在百度当中输入关键字,然后去匹配对应的内容,这就是一种全文搜索,再如,使用关系型数据库 MySQL 当中用 LIKE 去匹配相关的关键字。

应用场景

  • 作为一个应用的全文搜索引擎使用。比如:一个购物网站或者 APP 的商品搜索。
  • 数据分析:我们通常使用 ELK(ES、Logstash、Kibana) 技术栈作为日志收集的工具,收集大量数据并进行分析使用。

概念术语

  • node(节点)
    ES 的一个运行实例,存储了部分文档数据。
  • Cluster(集群)
    多个节点的集合,这些节点将共同拥有完整的数据,并跨节点提供联合搜索和分析功能。使用集群避免单点故障,在一个节点意外宕机的情况下,其他节点亦可对外提供服务。
  • Index(索引)
    具有某些相似特性的文档的集合。
  • Document(文档)
    数据以文档的形式存储在 ES 当中,以 JSON 表示。
  • Shard(分片)
    一个索引可以水平切分为多个分片,每个分片也相当于一个"索引",即:一个分片当中存储一部分文档,多个分片可以分布在集群的不同节点上。这样做的优点是实现大数据的存储和分析,单个节点存储的容量有限,可以将数据存储分布到多个节点当中,可以跨分片并行操作,从而提高性能和吞吐量。
  • Replica(副本)
    创建多个分片副本,副本是分片数据的拷贝,当一个节点服务挂掉不可用或者数据丢失,副本的节点依旧可以提供服务,保证高可用性。
相关推荐
爱上咖啡香15 小时前
我给 Laravel AI 写了个千问驱动,文本、语音、图像、视频全打通
后端
杨文说AI与数字化15 小时前
票种表重构复盘:把填数字改成规则可执行版本
后端
回家路上绕了弯16 小时前
什么是 Agent as a Service?把 AI Agent 变成可调用的服务
后端
金銀銅鐵17 小时前
一个 Java 文件实现《孫子兵法·始計篇》中英对照阅读器
java·后端·ai编程
用户3600555790018 小时前
Kestrel_VLLM - 34 · 批量 M 行:五个块、两种层型,与「退回去」的两个原语
后端
leo在掘金18 小时前
25.5k Star 的 DeepInfer 怎么扛住3万亿参数
后端·架构
Agent世界18 小时前
cookie 判据会撒谎:CDP 登录态保活的五个实测坑
后端·自动化运维
林小帅18 小时前
【笔记】Prisma v7 + SQLite TS2305 及连锁 TS7006 问题
前端·javascript·后端
王中阳Go18 小时前
你那条三跳链路的单跳超时,是按压测的 p95 定的,还是拍出来的?
人工智能·后端·架构
时光不老杰18 小时前
03 Netty 双通道长连接层
后端