gpt4 book ai didi

Spark 中的 Hadoop DistributedCache 功能

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

我正在寻找类似于Spark中Hadoop的分布式缓存的功能。我需要一个相对较小的数据文件(具有一些索引值)存在于所有节点中以便进行一些计算。有什么方法可以在 Spark 中实现这一点吗?

到目前为止,我的解决方法包括将索引文件分发和缩减为正常处理,这在我的应用程序中大约需要 10 秒。之后,我将指示它的文件持久化为广播变量,如下所示:

JavaRDD<String> indexFile = ctx.textFile("s3n://mybucket/input/indexFile.txt",1);
ArrayList<String> localIndex = (ArrayList<String>) indexFile.collect();

final Broadcast<ArrayList<String>> globalIndex = ctx.broadcast(indexVar);

这使程序能够理解变量globalIndex 包含的内容。到目前为止,这个补丁对我来说可能没问题,但我认为这不是最好的解决方案。对于更大的数据集或大量变量,它是否仍然有效?

注意:我使用的是在位于多个 EC2 实例的独立集群上运行的 Spark 1.0.0。

最佳答案

请查看 SparkContext.addFile() 方法。我猜这就是您要找的东西。

关于Spark 中的 Hadoop DistributedCache 功能,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/25625706/

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