# 开发架构

# 1.文档和索引

文档(Doucment) Elasticsearch是面向文档的,文档是所有可搜索数据的最小单位。以josn格式保存。

文档结构元数据

  • _index——文档索引名
  • _type——文档所属类型名,7.0只允许一个类型 _doc
  • _id——文档唯一id
  • _source——文档的原始json字段
  • _all——整个字段在7.0被废弃
  • _version——文档的版本信息
  • _score——打分相关性

索引(Index) 相似文档的集合,文档的容器

mapping:定义文档字段类型 setting:定义不同数据分布

# 2.RDBMS和elasticsearch比较

RDBMS elasticsearch
Table Index
Row Doucment
Column Filed
Schema Mapping
SQL DSL

# 3.Index基本查询举例

//查看索引相关信息
GET INDEX

//查看索引文档总数
GET INDEX/_count

//查看文档前10条,了解文档格式
POST INDEX/_search


cat API
查看Indices
GET  /_cat/indices/kibana*?v&s=index

查看状态为绿色的索引
GET  /_cat/indices/kibana*?v&health=green

按文档个数排序
GET  /_cat/indices/kibana*?v&s=docs.count:desc
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19

# 运维部署

# 节点,集群,分片及副本的介绍

# 1.节点

节点本质上是java的一个进程 每个节点都有一个名字

-E  node.name=node1
1

maste-eligible node,master node,Data Node,Coordinating node等节点类型

# 2.分片

主分片,数据分散到所有节点上去 副本,主分片拷贝,解决高可用的问题

分片7.0默认为1, 不可设置过多或少

集群状态: Green-主分片和副分片正常 Yellow-主分片正常,副分片不正常 Red-主分片不正常4

命令

GET _cluster/health
GET _cat/node
GET _cat/shards
1
2
3