elasticsearch入门

Elasticsearch(简称ES)是一款高扩展性的开源全文搜索和分析引擎,支持快速实时地存储、搜索和分析大量数据,适用于具备复杂搜索特性和需求的大型应用。

摘要生成于 C知道 ,由 DeepSeek-R1 满血版支持, 前往体验 >

版本:


2.3.4

官网地址

https://www.elastic.co

官方文档

https://www.elastic.co/guide/en/elasticsearch/reference/current/getting-started.html

介绍

Elasticsearch简称ES,是一个高扩展性的开源全文搜索和分析引擎.
它支持快速实时的对大量数据进行存储,搜索,分析.
通常会作为具有复杂搜索特征和需求的大型应用的基础设施.

概念解释

NRT(Near Realtime)(近实时)

近实时.ES是近实时的搜索引擎.从存入数据生成索引直到可以搜索可以做到秒级.

Cluster(集群)

集群.由多个节点保存所有数据,并且所有节点都提供生成索引和搜索的能力,
集群使用唯一的cluster name来定义(默认是elasticsearch),
名字相同的节点意味着组成一个集群.

Node(节点)

每个服务器部署一个ES,为集群中的一个节点.
可以存储数据,并且参与集群的索引生成和搜索服务.
每个节点在集群中有自己的标识,默认是启动时自动生成的一串随机字符,
可以在自定义这个标识,这个标识对于在集群中管理节点具有重要意义.
节点会加入相同cluster name的集群(会自动在网络内查找).
一个集群可以有多个节点.

Index(索引)

一组索引是具有类似特征的文档集合.
一组索引必须定义一个名称(必须是小写)来标示这组索引的用途.
通过索引名称可以对所需文档进行生成,搜索,更新删除等索引操作.
一个集群内可以定义多组索引.

Type(类型)

对于索引,可以定义多种类型,类型是需要在索引内定义的逻辑类型.
通常一个文档类型定义有多个属性,
比如一个博客平台用索引来存储所有数据,
在索引内,可能会定义一个用户数据的类型,一个文章数据的类型,还有评论数据的类型

Document (文档)

文档是生成索引的最基础单元.比如某个用户,某个产品,某个订单.
文档使用json格式描述

Shards & Replicas(分片&副本)

索引可能存储超过了单个节点硬盘容量的大量数据.可能会导致搜索服务的不可用.
为了解决这个问题,es把生成的索引分成多份叫做Shards(分片),
当创建索引的时候,可以定义分片的个数,每个分片可以生成索引到集群中的任意一个节点
分片的重要性,原因有两点:
1.可以纵向扩展的数据量
2.允许多分片数据分发和并行操作,提高性能

副本是为了能够在无论因为什么原因有节点坏掉的时候仍然可用,达到高可用的目的.
ES允许索引的分片存在多个副本.
副本的重要性,原因有两点:
1.当某个节点坏掉的时候,提供高可用的服务

做个总结:每组索引都可以多个分片,某个索引也可以没有副本
如果有副本,每组索引将存在一个主分片(副本分片从主分片复制)和副本分片,
分片和副本的数量可以在每组索引创建的时候定义.
当索引创建后,可以在任何时间动态修改副本数量,但不能修改分片数量

默认情况下,如果集群有至少2个节点的情况下每组索引在Es都会创建5个主要分片和1个副本.
这个时候实际上有5个主分片,5个副本分片(1个副本),共10个分片
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值