博客
关于我
【Elasticsearch】 es join 多表关联如何设计
阅读量:650 次
发布时间:2019-03-15

本文共 415 字,大约阅读时间需要 1 分钟。

在这里插入图片描述

1.概述

多表关联如何设计?

1.1 为什么会有多表关联

多表关联是被问的最多的问题之一。几乎每周都会被问到。

主要原因:常规基于关系型数据库开发,多多少少都会遇到关联查询。而关系型数据库设计的思维很容易带到 ES 的设计中。

1.2 多表关联如何实现

1.2.1 方案一

方案一:多表关联视图,视图同步 ES

MySQL 宽表导入 ES,使用 ES 查询+检索。

适用场景:基础业务都在 MySQL,存在几十张甚至几百张表,准备同步到 ES,使用 ES 做全文检索。

将数据整合成一个宽表后写到 ES,宽表的实现可以借助关系型数据库的视图实现。

宽表处理在处理一对多、多对多关系时,会有字段冗余问题,如果借助:logstash_input_jdbc,关系型数据库如 MySQL 中的每一个字段都会自动帮你转成 ES 中对应索引下的对应 document 下的某个相同字段下的数据。

1.2.1.1 步骤

步骤 1:提前关联好数据

转载地址:http://cnglz.baihongyu.com/

你可能感兴趣的文章
mysql 修改默认字符集为utf8
查看>>
Mysql 共享锁
查看>>
MySQL 内核深度优化
查看>>
mysql 内连接、自然连接、外连接的区别
查看>>
mysql 写入慢优化
查看>>
mysql 分组统计SQL语句
查看>>
Mysql 分页
查看>>
Mysql 分页语句 Limit原理
查看>>
MySql 创建函数 Error Code : 1418
查看>>
MySQL 创建新用户及授予权限的完整流程
查看>>
mysql 创建表,不能包含关键字values 以及 表id自增问题
查看>>
mysql 删除日志文件详解
查看>>
mysql 判断表字段是否存在,然后修改
查看>>
MySQL 到底能不能放到 Docker 里跑?
查看>>
mysql 前缀索引 命令_11 | Mysql怎么给字符串字段加索引?
查看>>
MySQL 加锁处理分析
查看>>
mysql 协议的退出命令包及解析
查看>>
mysql 参数 innodb_flush_log_at_trx_commit
查看>>
mysql 取表中分组之后最新一条数据 分组最新数据 分组取最新数据 分组数据 获取每个分类的最新数据
查看>>
MySQL 命令和内置函数
查看>>