当前位置:   article > 正文

[ElasticSearch系列一] ElasticSearch基本概念及特性【明细】_elasticsearch 特性

elasticsearch 特性

前言

Elasticsearch(简称ES)是一个基于 Apache Lucene(TM) 的开源搜索引擎 , 同时也是一个分布式文档数据库.

特性 

  • 分布式实时文件存储,字段及字段数据均可被索引
  • 可以在极短的时间内存储搜索分析大量的数据
  • 可以扩展到上百台服务器,处理PB级结构化非结构化数据

Elasticsearch与数据库的类比

关系型数据库(比如Mysql)非关系型数据库(Elasticsearch)
数据库 (Database)索引 (Index)
表 (Table)类型 (Type)
数据行 (Row)文档 (Document)
数据列 (Column)字段 (Field)
约束 (Schema)映射 (Mapping)

索引 (index)

ES中的索引类似于传统数据库中的数据库,ES中数据存储于索引中,索引是具有类似特性的文档的集合


例如 : 一个商品索引(Folder),里面可能就存放了所有的商品数据 (document)

关系型数据库中的数据库(DataBase),等价于ES中的索引(Index)

类型 (Type)

类型类似于传统库中的,类型是索引内部的逻辑分区,类型就是为那些拥有相同的域文档做的预定义。

 

例如 : 商品分很多种类,每个种类的document的field可能不太一样(日化商品type,电器商品type,生鲜商品type )

一个数据库下面有N张表(Table),等价于1个索引Index下面有N多类型(Type)

 文档 (Document)

文档是Lucene索引和搜索的原子单位(es中最小数据单元),它是包含了一个或多个域的容器,基于JSON格式进行表示。


存入索引库原始的数据。比如每一条商品信息,就是一个文档

 字段 (Field)

文档中的属性


1个Type由多个文档(Document)和多Field组成。 

映射 (Mapping)

Mapping定义索引下的Type的字段处理规则,即索引如何建立、索引类型、是否保存原始索引JSON文档、是否压缩原始JSON文档、是否需要分词处理、如何进行分词处理


对应关系型数据库里的(约束)schema定义了表、每个表的字段,还有表和字段之间的关系

shard(分片),replica(副本) 

分片实现了集群的分布式存储,副本实现分布式处理及冗余功能。

  • shard有两种类型 :  primary(主) 和  replica(副)  
  • Replica shard 为 primary shard的副本,默认为一个,用于冗余数据及提高搜索性能

分片:将索引内部的数据分布式存储于多个节点中(索引数据分割储存),称为分片

副本:副本(Replica shard)是从主分片(primary shard)那里复制过来,为分片或节点失败时提供高可用性,副本允许用户扩展你的搜索量或吞吐量,因为搜索可以在所有副本上并行执行

 


 每个人理解方式不同,大致了解即可!

Thanks!!

声明:本文内容由网友自发贡献,不代表【wpsshop博客】立场,版权归原作者所有,本站不承担相应法律责任。如您发现有侵权的内容,请联系我们。转载请注明出处:https://www.wpsshop.cn/w/繁依Fanyi0/article/detail/827492
推荐阅读
相关标签
  

闽ICP备14008679号