【Elasticsearch 系列】 Elasticsearch 基本概念

前言

本文主要介绍 Elasticsearch 的几个基本概念,包括

  • Index: 索引
    • Type: 分类
    • Document: 文档
  • Node: 节点
    • Shard: 分片

文档

文档特点

  1. Elasticsearch 是面向文档的,文档是 Elasticsearch 中可以搜索数据的最小单位,以下都可以是一个文档:
    • 日志文件中的日志项
    • 一篇博客的具体内容
    • 一部电影的具体信息
    • 一件商品的具体信息
  2. 文档会被序列化为 JSON 格式后,保存到 ES 中去。
  3. 每个文档会有一个 ID ,这个 ID 可以在创建文档的时候自己指定,也可以通过 ES 自动创建。
  4. 一篇文档包含了一系统的字段,类似于数据库的一条记录。
    由于文档最后都会序列化成 JSON 串,所以我们可以不需要事先定义好格式,可以随意的扩展字段和格式。并且支持数据嵌套,灵活性强。而关系型数据库的表需要先定义格式并且修改字段复杂,这也是与关系型数据库的中表记录的区别。
    同时,字段的类型可以通过自定义,也可以通过 ES 自动推算而来。

下面是一条文档记录的内容:

{
    "genre" : [
      "Adventure",
      "Animation",
      "Children",
      "Comedy",
      "Fantasy"
    ],
    "year" : 1995,
    "@version" : "1",
    "id" : "1",
    "title" : "Toy Story"
}

可以看出,其中包含了多种数据类型。

文档元数据

我们利用 kibana 查询一篇文档,返回的数据如下:

{
  "_index" : "movies",
  "_type" : "_doc",
  "_id" : "1",
  "_version" : 1,
  "_seq_no" : 1,
  "_primary_term" : 1,
  "found" : true,
  "_source" : {
    "genre" : [
      "Adventure",
      "Animation",
      "Children",
      "Comedy",
      "Fantasy"
    ],
    "year" : 1995,
    "@version" : "1",
    "id" : "1",
    "title" : "Toy Story"
  }
}

文档元数据是用于标记文档的基本信息。

  • _index: 文档所属的索引
  • _type: 文档的类型
  • _id: 文档的唯一编号
  • _version: 文档的版本
  • _seq_no: 序列号
  • _primary_term: 分片
  • _source: 文档的原始内容

   转载规则


《【Elasticsearch 系列】 Elasticsearch 基本概念》 孤独如梦 采用 知识共享署名 4.0 国际许可协议 进行许可。
 上一篇
zookeeper 集群安装 zookeeper 集群安装
准备这里安装的是可生产用的 zookeeper 集群,非伪分布式集群。提前准备三台服务器。并且都已经安装 jdk 1.8。其 IP 映射如下: 192.168.56.101 worker-01 worker-01.joyxj.
2019-07-11
下一篇 
【dubbo系列】 11-Dubbo 自适应拓展机制 Adaptive 【dubbo系列】 11-Dubbo 自适应拓展机制 Adaptive
原理在 Dubbo 中,很多的拓展都是通过 SPI 机制进行加载的,比如 Protocol 、 Cluster 、 LoadBalance 等。但是有些拓展并不想在框架启动的时候就加载,而是希望在拓展方法调用的时候被调用,根据运行的参数进行
2019-06-27
  目录