1、主要讲解如下三个类别
(1)_index元数据
(2)_type元数据
(3)_id元数据
2、逐个讲解
(数据准备)
PUT /test_index/test_type/1
{
"test_content" : "test test"
}
GET /test_index/test_type/1
返回结果
{
"_index": "test_index",
"_type": "test_type",
"_id": "1",
"_version": 1,
"found": true,
"_source": {
"test_content": "test test"
}
}
(1)_index元数据
1.代表一个document存放在哪个index中
2.类似的数据存放在一个索引,非类似的数据放不同的索引,比如:product index(包含了所有的商品),sales index(包含了所有的商品销售数据),inventory index(包含了所有库存相关的数据)。如果你把比如product,sales,human,resource(employee),全都放在一个大的index里面,比如说company index,
不合适的。
Paste_Image.png
3.index中包含了很多类似的document,比如:document的fields很大一部分是相同的,你说你放了3个document,每个document的fields都完全不同,这就不是类似了,就不太适合放到一个index里面了。
4.索引名称必须是小写的,不能用下划线开头,不能包含逗号。
(2)_type元数据
1.代表document属于index中的哪个type
2.一个索引通常会划分为多个type,逻辑上对index中有些许不同的几类数据进行分类:因为一批相同的数据,可能有很多相同的fields,但是还是可能会有一些轻微的不同,可能会有少数fields是不一样的,举个例子,就比如说,商品,可能划分为电子商品,生鲜商品,日化商品,等等。
3.type名称可以使大写或者小写,但是同时不能用下划线开头,不能包含逗号。
(3)_id元数据
1.代表document的唯一标识,与index和type一起,可以唯一的标识和定位一个document
2.我们可以手动指定document的id,也可以不指定,有es为我们自动创建一个id。
若有兴趣,欢迎来加入群,【Java初学者学习交流群】:458430385,此群有Java开发人员、UI设计人员和前端工程师。有问必答,共同探讨学习,一起进步!
欢迎关注我的微信公众号【Java码农社区】,会定时推送各种干货:
qrcode_for_gh_577b64e73701_258.jpg















网友评论