码迷,mamicode.com
首页 > 其他好文 > 详细

分布式系统如何实现垮库join

时间:2018-04-04 16:18:15      阅读:136      评论:0      收藏:0      [点我收藏+]

标签:ima   scan   分布   shu   .com   div   关系   htm   如何   

========
分布式系统如何实现垮库join:
1.小表做广播 look up join,用索引读取大表。
2.如果两个表都很大:1)先按照join的key读取两个表(比如走索引),再merge;2.按照join的key将数据shuffle到多个节点计算。
3.F1 论文里讲了另一种方法,表之间可以建立层级关系,父子表之间公用相同的 primary key prefix,这样不同的 table 中具有相同 pk 前缀的 row 会存放在相邻的位置, 如果按照这些 key 做 inner join,可以直接顺序 scan。不过这个需要特定的存储模型以及和业务相关的 schema 设计。
========

在hive中

按join的阶段不同,可分为reduce阶段的jion(叫command join),在map阶段jion(叫map join)

https://www.cnblogs.com/yyy-blog/p/7077481.html   这篇博文写得挺好,其中有hivejoin过程的图解。大数据相关技术中基本都有map,shuffle,reduce过程。

hive join的原理和机制

在map阶段,必须做的一步是将数据转换成kw,这一步必不可少。

 

分布式系统如何实现垮库join

标签:ima   scan   分布   shu   .com   div   关系   htm   如何   

原文地址:https://www.cnblogs.com/luckyStone/p/8717480.html

(0)
(0)
   
举报
评论 一句话评论(0
登录后才能评论!
© 2014 mamicode.com 版权所有  联系我们:gaon5@hotmail.com
迷上了代码!