Hadoop Spark作业因hdfs而崩溃,设备上没有剩余空间;“非DFS使用”;
我在一个小数据集(25GB)上运行spark sql作业,结果总是填满磁盘,最终导致执行器崩溃Hadoop Spark作业因hdfs而崩溃,设备上没有剩余空间;“非DFS使用”;,hadoop,apache-spark,hdfs,amazon-emr,Hadoop,Apache Spark,Hdfs,Amazon Emr,我在一个小数据集(25GB)上运行spark sql作业,结果总是填满磁盘,最终导致执行器崩溃 $ hdfs dfs -df -h Filesystem Size Used Available Use% hdfs://x.x.x.x:8020 138.9 G 3.9 G 14.2 G 3% $ hdfs dfs -du -h 2.5 G .sparkStaging 0 archive 477.3 M checkpo
$ hdfs dfs -df -h
Filesystem Size Used Available Use%
hdfs://x.x.x.x:8020 138.9 G 3.9 G 14.2 G 3%
$ hdfs dfs -du -h
2.5 G .sparkStaging
0 archive
477.3 M checkpoint
当这个附加时,我必须离开安全模式<代码>hdfs dfsadmin-安全模式离开
从spark作业本身来看,这显然是一个洗牌或缓存数据帧的问题。然而,你知道为什么df
报告了如此不规则的使用/可用尺寸吗?为什么du
不列出文件
我知道这与我在namenode概述中看到的“非DFS使用”有关。但是为什么spark会占用这么多的“隐藏”空间,以至于让我的工作崩溃呢
Configured Capacity: 74587291648 (69.46 GB)
DFS Used: 476200960 (454.14 MB)
Non DFS Used: 67648394610 (63.00 GB)
DFS Remaining: 6462696078 (6.02 GB)
看起来这是spark的临时文件夹占用了这么多空间。在我的例子中,序列化的数据帧比原始数据大得多,在过滤、连接和处理时会填满磁盘。看起来这是spark的临时文件夹,占用了这么多空间。在我的例子中,序列化的数据帧比原始数据大得多,在过滤、连接和处理时会填满磁盘。