Elasticsearch索引文档的父子结构应用

本文涉及的产品
Elasticsearch Serverless通用抵扣包,测试体验金 200元
简介: Elasticsearch索引文档的父子结构应用

前言

由于Elasticsearch没有表和表的join关系,所以设计出来一种可以文档与文档关联起来的方法,其中包括

1.普通内部对象;
2.嵌套结构;
3.父子结构。

==以下操作都是通过kibana操作==

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:表示的是"父名": "子名",也可以自定义

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文档,不影响改变另一个文档的记录。

作者应用场景:同一个客户,要存储手机银行标签和电话银行标签,但是手机银行标签和电话银行标签都需要各自能独立维护
相关实践学习
以电商场景为例搭建AI语义搜索应用
本实验旨在通过阿里云Elasticsearch结合阿里云搜索开发工作台AI模型服务,构建一个高效、精准的语义搜索系统,模拟电商场景,深入理解AI搜索技术原理并掌握其实现过程。
ElasticSearch 最新快速入门教程
本课程由千锋教育提供。全文搜索的需求非常大。而开源的解决办法Elasricsearch(Elastic)就是一个非常好的工具。目前是全文搜索引擎的首选。本系列教程由浅入深讲解了在CentOS7系统下如何搭建ElasticSearch,如何使用Kibana实现各种方式的搜索并详细分析了搜索的原理,最后讲解了在Java应用中如何集成ElasticSearch并实现搜索。  
目录
相关文章
|
自然语言处理 大数据 应用服务中间件
大数据-172 Elasticsearch 索引操作 与 IK 分词器 自定义停用词 Nginx 服务
大数据-172 Elasticsearch 索引操作 与 IK 分词器 自定义停用词 Nginx 服务
258 5
|
存储 分布式计算 大数据
大数据-169 Elasticsearch 索引使用 与 架构概念 增删改查
大数据-169 Elasticsearch 索引使用 与 架构概念 增删改查
205 3
|
11月前
|
人工智能 自然语言处理 搜索推荐
云端问道12期实操教学-构建基于Elasticsearch的企业级AI搜索应用
本文介绍了构建基于Elasticsearch的企业级AI搜索应用,涵盖了从传统关键词匹配到对话式问答的搜索形态演变。阿里云的AI搜索产品依托自研和开源(如Elasticsearch)引擎,提供高性能检索服务,支持千亿级数据毫秒响应。文章重点描述了AI搜索的三个核心关键点:精准结果、语义理解、高性能引擎,并展示了架构升级和典型应用场景,包括智能问答、电商导购、多模态图书及商品搜索等。通过实验部分,详细演示了如何使用阿里云ES搭建AI语义搜索Demo,涵盖模型创建、Pipeline配置、数据写入与检索测试等步骤,同时介绍了相关的计费模式。
339 3
|
11月前
|
人工智能 算法 API
构建基于 Elasticsearch 的企业级 AI 搜索应用
本文介绍了基于Elasticsearch构建企业级AI搜索应用的方案,重点讲解了RAG(检索增强生成)架构的实现。通过阿里云上的Elasticsearch AI搜索平台,简化了知识库文档抽取、文本切片等复杂流程,并结合稠密和稀疏向量的混合搜索技术,提升了召回和排序的准确性。此外,还探讨了Elastic的向量数据库优化措施及推理API的应用,展示了如何在云端高效实现精准的搜索与推理服务。未来将拓展至多模态数据和知识图谱,进一步提升RAG效果。
400 1
|
10月前
|
存储 弹性计算 运维
海量日志接入 Elasticsearch Serverless 应用降本70%以上
本文将探讨在日志场景下,使用阿里云Elasticsearch Serverless相较于基于ECS自建Elasticsearch集群的成本与性能优势,展示如何通过Serverless架构实现高达 70%以上的成本节约。
519 0
|
存储 缓存 监控
优化Elasticsearch 索引设计
优化Elasticsearch 索引设计
246 5
|
存储 SQL 监控
|
自然语言处理 监控 数据可视化
|
运维 监控 安全
|
存储 JSON 关系型数据库
Elasticsearch 索引
【11月更文挑战第3天】
279 4