elasticsearch是一个搜索引擎,附带了数据存储功能。相比关系数据库为关系而生而言,elasticsearch并不删除处理数据之间的关系模型。但仍然提供了对此类需求的有限支持,join和nested数据类型。尽管如此,贯穿整个elasticsearch手册都在强调的一句话是The join field shouldn’t be used like joins in a relation database. In Elasticsearch the key to good performance is to de-normalize your data into documents. 在es中,获取高性能的关键,你应该反规范化你的数据。

本节介绍join数据类型。

join数据类型可以在一个index内部的文档间建立父子关系。例如:

下面的index创建语句,创建了一个dep_staff的index,里面包含了dep(父)和staff(子)的父子关系。

PUT dep_staff
{"mappings": {"properties": {"no":{"type": "keyword"},"dep_name":{"type": "keyword"},"staff_name":{"type": "keyword"},"dep_staff_rltn":{"type": "join","relations":{"dep":"staff"}}}}
}

当然,也可以包括多层父子关系。例如:

PUT dep_staff
{"mappings": {"properties": {"no":{"type": "keyword"},"dep_name":{"type": "keyword"},"staff_name":{"type": "keyword"},"dep_staff_rltn":{"type": "join","relations":{"dep":["sub_dep","organize"],"sub_dep":"staff",

elasticsearch数据类型--join相关推荐

  1. ElasticSearch 数据类型keyword和text的区别

    原文:https://blog.csdn.net/lionel_fengj/article/details/78367570 [ElasticSearch]数据类型keyword和text的区别 在 ...

  2. elasticsearch 数据类型

    参考 aggregate_metric_double:预聚合指标值 字段有4个子字段 min, max, sum, value_count来分别存储double数值,专做聚合使用 metrics: [ ...

  3. [译]ElasticSearch数据类型--string类型已死, 字符串数据永生

    原文链接: https://www.elastic.co/blog/s... Text vs. keyword 随着ElasticSearch 5.0的到来, 同时也迎来了该版本的重大特性之一: 移除 ...

  4. elasticsearch的join查询

    1.概述 官方文档 https://www.elastic.co/guide/en/elasticsearch/reference/current/joining-queries.html 两种类型的 ...

  5. elasticsearch 数据类型_基于 MySQL Binlog 的 Elasticsearch 数据同步实践

    来源;马蜂窝 一.背景 随着马蜂窝的逐渐发展,我们的业务数据越来越多,单纯使用 MySQL 已经不能满足我们的数据查询需求,例如对于商品.订单等数据的多维度检索. 使用 Elasticsearch 存 ...

  6. elasticsearch数据类型--nested

    前面写到了object数据类型,这里来说说nested.按照官方文档的说法,nested是特殊的object类型,弥补了object对象不能单独作为整体进行检索的缺陷.为了达到这个目的,nested在 ...

  7. Elasticsearch:高级数据类型介绍

    在我之前的文章 "Elasticsearch:一些有趣的数据类型",我已经介绍了一下很有趣的数据类型.在今天的文章中,我再进一步介绍一下高级的数据类型,虽然这里的数据类型可能和之前 ...

  8. Elasticsearch 中的一些重要概念: cluster, node, index, document, shards 及 replica

    当我们开始使用 Elasticsearch 时,我们必须理解其中的一些重要的概念.这些概念的理解对于以后我们使用 Elastic Stack 是非常重要的.在今天的这篇文章里,我们先来介绍一下在 El ...

  9. elasticsearch 搭配 canal 字段更新和后续兼容查询设计(四)

    前言 之前的几篇elasticsearch和canal的搭配文章,基本把一个项目算是搭起来了.这个架构总算是支撑到项目的第一版上线了.在投入生产环境之后,必然会面对一系列的bug修复.需求变动.版本迭 ...

最新文章

  1. CryEngine最新版发布,支持Vulkan API
  2. Spring Boot程序无法加载主类解决方法
  3. Linux学习:shell命令
  4. PostgreSQL 数组类型
  5. Android应用程序签名过程和解析过程分析
  6. NHibernate教程(5)--CRUD操作
  7. MyBatis Criteria使用 OffsetLimitInterceptor.java分页报错
  8. fx-1s可以用c语言,AX-1S 系列微型可编程控制器100兼容三菱FX-1S系列PLC)
  9. oracle学习总结一(基础)
  10. 关于TcpClient,Socket连接超时的几种处理方法
  11. 电脑上的ppt做不了计算机考试,ppt在有的电脑上打不开怎么办
  12. leedcode每日一题:860. 柠檬水找零
  13. jQuery UI Dialog
  14. select * from a,b用法
  15. 如何快速创建活码二维码(动态二维码)
  16. css3自定义字体实现毛体输出沁园春雪以及font属性
  17. linux下面WORD32是什么类型,查看Linux系统是32位还是64位getconf WORD
  18. JRtplib开发笔记(四):JRtplib的VS开发环境搭建以及Demo
  19. pqc的中文全称_QC QA IQC PQC 等英文缩写简称的标准,这些称呼很是混乱。各有各的叫法。有个标准么...
  20. java实现7天未收货则自动收货

热门文章

  1. linux php imagick,linux下 安装 ImageMagick 及其 php imagick扩展
  2. 函数式组件与类组件区别-心智模型
  3. Mac下配置java环境以及idea的使用
  4. 人工智能中一些看不懂的代码和一些函数
  5. 小试牛刀——链表第三篇
  6. 是时候,重新认识一下项目经理了
  7. 第一周:初识java
  8. 【开源一个小工具】一键将网页内容推送到Kindle
  9. matlab生成行向量组,什么叫行向量组与列向量组? 什么是矩阵的维度?
  10. java jpcap 抓包并分析_用Jpcap赶做了一个极其简陋版的TCP抓包程序