elasticsearch设计的理念就是分布式搜索引擎,底层实现还是基于Lucene的,核心思想是在多态机器上启动多个es进程实例,组成一个es集群。一下是es的几个概念:
- 接近实时
- es是一个接近实时的搜索平台,这就意味着,从索引一个文档直到文档能够被搜索到有一个轻微的延迟
- 集群(cluster)
- 一个集群有多个节点(服务器)组成,通过所有的节点一起保存你的全部数据并且通过联合索引和搜索功能的节点的集合,每一个集群有一个唯一的名称标识
- 节点(node)
- 一个节点就是一个单一的服务器,是你的集群的一部分,存储数据,并且参与集群和搜索功能,一个节点可以通过配置特定的名称来加入特定的集群,在一个集群中,你想启动多少个节点就可以启动多少个节点。
- 索引(index)
- 一个索引就是还有某些共有特性的文档的集合,一个索引被一个名称唯一标识,并且这个名称被用于索引通过文档去执行搜索,更新和删除操作。
- 类型(type)
- type 在6.0.0已经不赞成使用 文档(document) 一个文档是一个基本的搜索单元
总结:
es中,存储数据的基本单位就是索引,比如说es中存储了一些订单系统的销售数据,就因该在es中创建一个索引,order—index,所有的销售数据就会都写到这个索引里面去,一个索引就像数据库。而type就相当于每一张表,
一个index里面可以有多个type,而mapping就相当于表的结构定义,定义了什么字段类型等,你往index的一个type里添加一行数据就叫做一个document,每一个document有多个filed,每一个filed就代表这个document的一个字段的值。
ES支持的数据:
long:64位存储
integer:32位存储
short:16位存储
byte:8位存储
double:64位双精度存储
float:32位单精度存储
参考文章
https://www.cnblogs.com/gyli20170901/p/10174309.html