文件大于HDFS中的块大小

时间:2018-07-18 17:55:44

标签: apache-spark hadoop hdfs

众所周知,写单个大于HDFS块大小的文件并不是最佳选择,对于许多非常小的文件也是如此。

但是,在spark中执行repartition('myColumn)操作时,它将为每个项目(假设日)创建一个分区,其中包含所有记录(作为单个文件),其大小可能为几GB(假设20GB) ),而HDFS块大小配置为256 MB。

文件太大真的不好吗?读回文件时(假设它是可拆分文件,例如镶木地板或具有gzip或zlib压缩的orc),每个文件都会创建>> 1任务,这是否意味着我不必担心指定{{1} } /文件大小是否大于HDFS块大小?

1 个答案:

答案 0 :(得分:3)

在HDFS中,具有可拆分格式的单个大文件是一件好事。名称节点必须维护较少的文件引用,并且有更多的块来并行处理。

实际上,考虑到它可以安装在便宜的闪存驱动器上,从Hadoop的角度来看,20 GB仍然不是很大