gpt4 book ai didi

apache - 关于Apache Hive Map方面的加入

转载 作者:行者123 更新时间:2023-12-02 21:11:24 25 4
gpt4 key购买 nike

我知道配置单元映射侧连接使用内存。
我可以使用SSD代替内存吗?
我想通过将尺寸表放在SSD上来进行Mapside联接。
可能吗?

最佳答案

我将通过向您解释Hadoop分布式缓存来尝试回答您的问题:

DistributedCache是​​Map-Reduce框架提供的一种功能,用于缓存应用程序所需的文件(在您的情况下,是要加入的配置单元表)。

DistributedCache假定通过url指定的文件已经存在于文件系统(这是您的SSD或HDD )上的文件系统中,该文件位于url指定的路径处,并且群集中的每台计算机均可访问。

So ironically it is the hadoop frame work who decides whether to put the map file in memory(RAM / YARN) or in SSD/HDD depending on the map file size.



尽管默认情况下,映射联接中使用的表的最大大小(作为小表)为1,000,000,000字节(约1 GB),但是您也可以通过配置单元集属性示例手动增大此大小:

设置hive.auto.convert.join.noconditionaltask = true;

设置hive.auto.convert.join.noconditionaltask.size = 2000000000;

在作业的任何任务在该节点上执行之前,该框架会将必要的文件复制到该从节点上。其效率源于以下事实:每个作业仅复制一次文件,以及缓存未在从属服务器上存档的存档的能力。

您可以在以下链接上找到有关分布式缓存的更多信息:

https://hadoop.apache.org/docs/r2.6.3/api/org/apache/hadoop/filecache/DistributedCache.html

https://hadoop.apache.org/docs/r1.2.1/api/org/apache/hadoop/filecache/DistributedCache.html

关于apache - 关于Apache Hive Map方面的加入,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/40232639/

25 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com