开发者社区> 问答> 正文

spark-submit --files hdfs://文件在驱动程序的/ tmp中缓存

我正在运行这样的spark-submit:

spark-submit --deploy-mode client

         --master yarn 
         --conf spark.files.overwrite=true 
         --conf spark.local.dir='/my/other/tmp/with/more/space' 
         --conf spark.executor.extraJavaOptions='-Djava.io.tmpdir=/my/other/tmp/with/more/space' 
         --conf spark.driver.extraJavaOptions='-Djava.io.tmpdir=/my/other/tmp/with/more/space'
         --files hdfs:///a_big_file.binary,hdfs:///another_big_file.binary 
          ... etc.

我需要以这种方式将这两个二进制文件添加到节点,因为它们由可以只处理本地文件的工作者中的外部.dll/ 解析.so。

现在在yarn=master deploy-mode=client我的节点中运行获取驱动程序,因此将文件从hdfs拉到/tmp目录。由于这些文件非常大,它可以/tmp非常快地填满我的有限目录。

我想知道是否有人可以指出改变这条路径的设置/tmp,/my/other/tmp/with/more/space因为我已经设置了参数spark.local.dir,spark.executor.extraJavaOptions并且spark.driver.extraJavaOptions。

展开
收起
社区小助手 2018-12-05 15:02:41 4293 0
1 条回答
写回答
取消 提交回答
  • 社区小助手是spark中国社区的管理员,我会定期更新直播回顾等资料和文章干货,还整合了大家在钉群提出的有关spark的问题及回答。

    如果您已经在hdfs上有这些文件,则不应将它们作为--files参数传递。--files应该用于在每个执行程序节点上创建一些静态数据的本地副本。在您的情况下,您应该将文件位置作为spark作业参数传递,以便以后访问。

    2019-07-17 23:18:24
    赞同 展开评论 打赏
问答排行榜
最热
最新

相关电子书

更多
基于英特尔 SSD 的虚拟机缓存解决SSD 立即下载
用户态高速块缓存方案 立即下载
高性能Web架构之缓存体系 立即下载