在配置中理论上是否可以使用并置连接(a-la-netezza)?

时间:2011-08-05 08:20:40

标签: hadoop hive netezza

当你连接分布在同一个密钥上的表并在连接条件中使用这些键列时,netezza中的每个SPU(机器)100%独立于另一个(参见nz-interview)。

在hive中,有bucketed map join,但是表示表到datanode的文件的分配是HDFS的责任,它不是根据hive CLUSTERED BY键完成的!

所以假设我有2个表,CLUSTERED由相同的密钥,并且我通过该密钥加入 - 可以从HDFS获得保证匹配存储桶将位于同一节点上吗?或者它总是必须将小表的匹配桶移动到包含大表桶的datanode?

谢谢,ido

(注意:这是对我上一个问题的更好的措辞:How does hive/hadoop assures that each mapper works on data that is local for it?

1 个答案:

答案 0 :(得分:0)

我认为不可能告诉HDFS存储数据块的位置。
我可以考虑以下技巧,它将用于小型集群 - 将其中一个表的复制因子增加到接近或等于集群中节点数的数量。
因此 - 在连接过程中,所需节点上几乎总是(或始终)存在适当的数据。