首页 » Web前端 » php父子索引技巧_Elasticsearch索引文档的父子结构应用

php父子索引技巧_Elasticsearch索引文档的父子结构应用

访客 2024-11-30 0

扫一扫用手机浏览

文章目录 [+]

1.普通内部工具;2.嵌套构造;3.父子构造。

以下操作都是通过kibana操作

php父子索引技巧_Elasticsearch索引文档的父子结构应用

1. 创建索引mapping

PUT test01{ "mappings": { "properties": { "cust_num": { "type": "text" }, "parent_child": { "type": "join", "relations": { "parent": "child" } } } }}

阐明:1.提前在mapping中设定了一个field cust_name,type为text;2.parent_child是父子文档关系的名字,可以自定义;3.join 表示这个文档为父子关系;4.relations:表示的是"父名": “子名”,也可以自定义

php父子索引技巧_Elasticsearch索引文档的父子结构应用
(图片来自网络侵删)
2. 插入一条父文档

PUT test01/_doc/01{ "cust_num": "张三", "tag": [1,3,4], "parent_child": { "name": "parent" }}

由于我们在前面创建mapping的时候已经设置了relations,在设置relations的时候指定了父文档的名称为parent,以是我们这一条插入的是父文档。

3. 插入一条子文档

PUT test01/_doc/02?routing=01{ "phone_tag": [2,5], "parent_child": { "name": "child", "parent": "01" }}

阐明:文档id我们指定的为02,首先可以判断父文档和子文档是独立的文档,其次routing 是路由的意思,咱们这里指的是路由到父文档的id是01,这个id和下面的parent是同等的

4. 可办理的问题

1.须要将两条文档关联起来2.查询的时候能查询到两条文档3.单独更新a文档,或者b文档,不影响改变另一个文档的记录。

作者运用处景:同一个客户,要存储手机银行标签和电话银行标签,但是手机银行标签和电话银行标签都须要各自能独立掩护

标签:

相关文章

QQ伪装黑客代码大全技术与风险警示

网络安全问题日益凸显。QQ作为一种流行的社交工具,成为了黑客攻击的主要目标之一。本文将针对QQ伪装黑客代码大全进行深入剖析,揭示其...

Web前端 2025-03-02 阅读1 评论0