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(副本)
    创建多个分片副本,副本是分片数据的拷贝,当一个节点服务挂掉不可用或者数据丢失,副本的节点依旧可以提供服务,保证高可用性。
相关推荐
Yaml41 小时前
智能化健身房管理:Spring Boot与Vue的创新解决方案
前端·spring boot·后端·mysql·vue·健身房管理
小码编匠2 小时前
一款 C# 编写的神经网络计算图框架
后端·神经网络·c#
AskHarries2 小时前
Java字节码增强库ByteBuddy
java·后端
佳佳_2 小时前
Spring Boot 应用启动时打印配置类信息
spring boot·后端
Elastic 中国社区官方博客3 小时前
如何将数据从 AWS S3 导入到 Elastic Cloud - 第 3 部分:Elastic S3 连接器
大数据·elasticsearch·搜索引擎·云计算·全文检索·可用性测试·aws
掘金-我是哪吒3 小时前
微服务mysql,redis,elasticsearch, kibana,cassandra,mongodb, kafka
redis·mysql·mongodb·elasticsearch·微服务
许野平3 小时前
Rust: 利用 chrono 库实现日期和字符串互相转换
开发语言·后端·rust·字符串·转换·日期·chrono
研究是为了理解4 小时前
Git Bash 常用命令
git·elasticsearch·bash
BiteCode_咬一口代码4 小时前
信息泄露!默认密码的危害,记一次网络安全研究
后端