【Elasticsearch】04 ES 索引、文档、REST API

一、文档

1、Elasticsearch 是面向文档的,文档是所有可搜索数据的最小单位

  1. 日志文件中的日志项
  1. 电影的具体信息/ 唱片的详细信息
  1. 播放器里的一首歌 / PDF 文档中的具体内容

2、文档会被序列化成JSON格式,保存在ES中

  1. Json 对象字段组成
  1. 每个字段都有对应的字段类型(字符串/ 数值 / 布尔 / 日期 / 二进制 / 范围类型)

3、每个文档都有一个Unique ID

可以用户指定ID

通过ES自动生成

4、JSON 文档

  1. 包含了一些列的字段。类似数据库表中一条记录

2)JSON 文档、格式灵活、不需要预定义格式

a: 字段的类型可以指定或者通过ES自动推算

b:支持数组 / 支持嵌套

c: CVS file => JSON

5、文档的元数据(用于标注文档的相关信息)

_index: 文档所属的索引名

_type: 文档所属的类型名

_id: 文档唯一ID

_source: 文档的原始JSON 数据

_all: 整合所有字段内容到该字段,已被废除

_version: 文档的版本信息

_score: 相关性打分

6、索引

1)Index 索引是文档的容器,是一类文档的结合

a: index体现了逻辑空间的概念。咩歌索引都有自己的Mapping 定义,用于定义包含的文档的字段名和字段类型

b: Shard 体现了物理空间的概念。索引中的数据分散在Shard上

2)索引的Mapping 与Settings

a: Mapping 定义文档字段的类型

b: Setting 定义不同的数据分布

  1. 所有的不同语意
文档
索引1
索引2
索引3
文档

a:名词 一个ES 集群中,可以创建很多个不同的索引

b:动词 保存意个文档到ES的过程页叫索引(indexing)
ES 中,创建一个倒排索引的过程

c:名词 一个B树索引,一个倒序索引

  1. 与关系型数据库对比
RDBMSES
TableIndex(Type)
RowDocument
ColumnFiled
SchemaMapping
SQLDSL

a: 在7.0 之前一个Index 可以设置多个Types

b:目前Type 已经被废除 Deprecated,7.0开始一个索引只能创建一个Type “_doc”

  1. 传统关系型数据库和ES的区别

ES -Schemaless / 相关性 / 高性能全文检索

RDMS - 事务性 / Join

  1. 一些基本的API

Indices

创建 index

PUT Movies

查看所有index

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

// 查看索引的文档总数
GET kibana_sample_data_ecommerce/_count

// 查看前10条文档,了解文档格式
POST kibana_sample_data_ecommerce/_search{json}

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

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

// 按照文档个数排序
GET /_cat/indices?v&s=docs.counts:desc

// 查看具体的字段
GET /_cat/indices/kibana*?pri&v&h=health,index,pri,rep,docs.count,mt

// How much memory is used per index?
GET /_cat/indices?v&h=i,t&s=tm:desc
  1. REST API 调用 流程图
rest api
rest api
Client Application
Http Request
ES
Http Response
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值