【问题标题】:spark sql data bigger than node memory when coalesce(1)合并时火花大于节点内存的sql数据(1)
【发布时间】:2019-09-13 20:08:38
【问题描述】:

我正在开发 spark 1.6.1

我有一个分布式数据框,它肯定比我集群中的任何节点都大。

如果我把所有都带入一个节点会发生什么?

df.coalesce(1)

工作会失败吗?

谢谢

【问题讨论】:

  • 简短回答:是的。
  • 要添加到 eliasah 的答案,它将失败并出现 OutOfMemory 异常。有很多方法可以规避coalesce 的需要。您想通过将所有数据提供给驱动程序来实现什么目标?

标签: apache-spark apache-spark-sql coalesce


【解决方案1】:

它肯定会失败,因为数据不适合内存。 如果要返回单个文件作为输出,可以稍后使用 HDFS getMerge 合并 HDFS 文件。

您可以使用实用程序将下面提到的 git 项目中的多个文件合并为一个文件 https://github.com/gopal-tiwari/hdfs-file-merge

【讨论】:

    猜你喜欢
    • 2018-01-10
    • 1970-01-01
    • 2018-11-30
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    相关资源
    最近更新 更多