gpt4 book ai didi

apache-spark - 使用 "saveAsTextFile"时 Spark 生成的文件是什么?

转载 作者:行者123 更新时间:2023-12-01 16:44:31 25 4
gpt4 key购买 nike

当我运行 Spark 作业并使用 https://spark.apache.org/docs/0.9.1/api/core/index.html#org.apache.spark.rdd.RDD 中指定的方法“saveAsTextFile”将输出保存为文本文件时:

enter image description here

这是创建的文件:

enter image description here

.crc 文件是循环冗余校验文件吗? so 用于检查每个生成文件的内容是否正确?

_SUCCESS 文件始终为空,这意味着什么?

上面屏幕截图中没有扩展名的文件包含来自 RDD 的实际数据,但为什么会生成许多文件而不是一个?

最佳答案

这些是由 Spark 在调用 saveAsTextFile() 时调用的底层 Hadoop API 生成的文件。

  • part- 文件:这些是您的输出数据文件。

    在您调用 saveAsTextFile() 的 RDD 中,每个分区都会有一个 part- 文件。这些文件中的每一个都将并行写出,最多达到一定的限制(通常是集群中工作线程的核心数量)。这意味着,假设您的存储层可以处理带宽,那么您写入输出的速度将比全部放入单个文件中的速度快得多。

    您可以检查 RDD 中的分区数量,这应该会告诉您需要多少个 part- 文件,如下所示:

    # PySpark
    # Get the number of partitions of my_rdd.
    my_rdd._jrdd.splits().size()
  • _SUCCESS 文件:空 _SUCCESS 文件的存在仅意味着操作正常完成。

  • .crc 文件:我以前没有见过 .crc 文件,但是,是的,大概它们是对 part- 文件。

关于apache-spark - 使用 "saveAsTextFile"时 Spark 生成的文件是什么?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/23898098/

25 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com