gpt4 book ai didi

caching - Hadoop分布式缓存的困惑

转载 作者:可可西里 更新时间:2023-11-01 14:13:13 24 4
gpt4 key购买 nike

分布式缓存的实际含义是什么?在分布式缓存中有一个文件意味着它在每个数据节点中都可用,因此不会有该数据的节点间通信,或者这是否意味着该文件在每个节点的内存中?如果没有,我可以通过什么方式在内存中为整个作业创建一个文件?这可以同时用于 map-reduce 和 UDF 吗..

(特别是有一些配置数据,相对较小,我想保留在内存中,因为 UDF 应用于配置单元查询...?)

感谢和问候,德鲁夫·卡普尔。

最佳答案

DistributedCache 是 Map-Reduce 框架提供的一种设施,用于缓存应用程序所需的文件。一旦你为你的工作缓存了一个文件,hadoop 框架将使它在你运行映射/ reduce task 的每个数据节点(在文件系统中,而不是在内存中)上可用。然后您可以在 Mapper 或 Reducer 作业中将缓存文件作为本地文件访问。现在您可以轻松读取缓存文件并在您的代码中填充一些集合(例如 Array、Hashmap 等)。

引用https://hadoop.apache.org/docs/r2.6.1/api/org/apache/hadoop/filecache/DistributedCache.html

如果您还有一些问题,请告诉我。

您可以在 UDF 代码中将缓存文件作为本地文件读取。使用 JAVA API 读取文件后,只需填充任何集合(在内存中)。

引用网址 http://www.lichun.cc/blog/2013/06/use-a-lookup-hashmap-in-hive-script/

-阿希什

关于caching - Hadoop分布式缓存的困惑,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/23751702/

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