从 Spark 估计要写入 HDFS 的部分文件数
Posted
技术标签:
【中文标题】从 Spark 估计要写入 HDFS 的部分文件数【英文标题】:Estimate the Number of part files to Write in HDFS from Spark 【发布时间】:2019-09-26 18:50:50 【问题描述】:我想在 HDFS 中以 Parquet.snappy 格式编写 Spark Dataframe。目前它正在创建默认的 200 个部分文件,即使表中的记录数较少。
是否有任何可用的公式可以提供大约数量的要写入 HDFS 的部分文件,以便读取速度更快。
理想情况下,零件文件大小应在 50-200 MB 之间。 我知道减少/增加部分文件数量的重新分区和合并功能。我正在寻找数据框需要重新分区的编号。
【问题讨论】:
【参考方案1】:基本上,您将拥有与 Dataframe 中的分区一样多的零件文件。
如果您确定总数据量可以尝试使用coalesce
或repartition
方法。
【讨论】:
以上是关于从 Spark 估计要写入 HDFS 的部分文件数的主要内容,如果未能解决你的问题,请参考以下文章
从 Java 中的 spark 转换函数写入 HDFS 中的文件