编程界的小学生
一、document的id生成方式
1、自动生成
1.1、语法
很简单,就是index/type后面别跟id了,这时候就代表自动生成。
POST index/_doc
{
"field": value
}
1.2、案例
POST test_index/_doc
{
"name": "c++",
"age": 33,
"hobbies": ["xxx", "ooo"]
}
1.3、id规则
自动生成的id长度为20个字符,是base64编码URL安全的,学名叫GUID,GUID在分布式系统并发生成时不可能会发生冲突。
2、手动生成
很简单,之前的crud演示过了,就是手动在_doc后面添加id,比如语法:index/_doc/id
,比如同步MySQL数据到ES,就会采取此种方案,id就是MySQL业务主键id,还能防止重复,也方便查询。
3、两种id应用场景
- 看业务需求(看着像是废话,但是很关键)
- 自动生成可以用于日志收集的时候,手动生成就是db同步的时候的业务主键。
二、document核心元数据
三、_source元数据
四、_search结果元数据
上述三种元数据,一图胜千言
【微信公众号】