欢迎您访问程序员文章站本站旨在为大家提供分享程序员计算机编程知识!
您现在的位置是: 首页  >  IT编程

01 elasticsearch 概念理解

程序员文章站 2022-04-30 17:33:00
ElasticSearch 学习笔记 Near Realtime(NRT):近实时,先说实时就是数据创建到查询时间在毫秒级或更少; 和实时不一样的是近实时数据在创建到查询最多需要n秒时间,n秒是索引刷新周期(假如设置n为5秒,若你在2秒的时候插入了一条数据,那么你还需要等3秒才能查询到这条数据,... ......

最近在看一套 es 的教学视频,以下笔记主要来自视频资源

Near Realtime(NRT):近实时,先说实时就是数据创建到查询时间在毫秒级或更少; 和实时不一样的是近实时数据在创建到查询最多需要n秒时间,n秒是索引刷新周期(假如设置n为5秒,若你在2秒的时候插入了一条数据,那么你还需要等3秒才能查询到这条数据, 若你在4秒时插入那么你需要再等1秒即可)。 Ps:因为还没学习到es 的配置不知道n 最小可以设置成多少?值得考虑的是n设置成多少才会对相应的系统更高效?

Cluster:集群, es 是一个分布式的搜索引擎,顾名思义es 可以实现分布式架构包含多个节点,每个节点属于哪个集群是通过一个配置(集群名称,默认是elasticsearch)来决定的

Node: 节点, 集群中的一个节点,节点也有一个名称(默认是随机分配的),节点名称很重要(在执行运维管理操作的时候),默认节点会去加入一个名称为“elasticsearch”的集群

Document:文档, es中的最小数据单元,一个document可以是一条客户数据,一条商品分类数据,一条订单数据,通常用JSON数据结构表示, 例如:一个学生的 document 如下

{
"id": "2018001",
"name": "张三",
"age":"17",
"class": "三年一班",
"sex": "male"
}

 

Field:域值,Document由一系列的Fields组成,每一个Field都有一个名字和值,每个field就是一个数据字段。例如上面document 中 "name":"张三" 就是一个field

Index:索引,包含一堆有相似结构的文档数据,比如可以有一个客户索引,商品分类索引,订单索引,索引有一个名称。一个index包含很多document,一个index就代表了一类类似的或者相同的document。比如说建立一个product index,商品索引,里面可能就存放了所有的商品数据,所有的商品document。

Type:类型,每个索引里都可以有一个或多个type,type是index中的一个逻辑数据分类,一个type下的document,都有相同的field,但是一个索引下可以有分很多种类,每个种类的document的field可能不太一样

Index ->家用电器
  type --> 电视
    document ---> {"产品序号" : "t001", "价格" : "2600.00", "品牌" : "HXXX", "尺寸" : "50英寸" }
    document ---> {"产品序号" : "t002", "价格" : "2300.00", "品牌" : "KXXX", "尺寸" : "49英寸" }
  type --> 空调
    document---> {"产品序号" : "a011", "价格" : "2799.00", "品牌" : "GXXX", "空调匹数" : "1.5P", "制冷量" : "3500W" }
    document---> {"产品序号" : "a021", "价格" : "2600.00", "品牌" : "MXXX","空调匹数" : "2P","制冷量" : "5250W" }

 

shard:主片段(shard 实际是指 primary shard), 单台机器无法存储大量数据,es可以将一个索引中的数据切分为多个shard,分布在多台服务器上存储。有了shard就可以横向扩展,存储更多数据,让搜索和分析等操作分布到多台服务器上去执行,提升吞吐量和性能。每个shard都是一个lucene index。

replica: 副本片段, 任何一个服务器随时可能故障或宕机,此时shard可能就会丢失,因此可以为每个shard创建多个replica副本。replica可以在shard故障时提供备用服务,保证数据不丢失,多个replica还可以提升搜索操作的吞吐量和性能。primary shard(建立索引时一次设置,不能修改,默认5个),replica shard(随时修改数量,默认1个),默认每个索引10个shard,5个primary shard,5个replica shard,最小的高可用配置,是2台服务器。

-----------------------------------------

elasticsearch核心概念 vs. 数据库核心概念

Elasticsearch ---> 数据库
Document ----> 行
Type ----> 表
Index ----> 库

 

学习笔记 - 若转载请于明显处标明出处: