Spark 之 partitons

Listing leaf files and directories

分析其并行化

org.apache.spark.util.HadoopFSUtils

复制代码
      sc.parallelize(paths, numParallelism)
        .mapPartitions { pathsEachPartition =>
          val hadoopConf = serializableConfiguration.value
          pathsEachPartition.map { path =>
            val leafFiles = listLeafFiles(
              path = path,
              hadoopConf = hadoopConf,
              filter = filter,
              contextOpt = None, // Can't execute parallel scans on workers
              ignoreMissingFiles = ignoreMissingFiles,
              ignoreLocality = ignoreLocality,
              isRootPath = isRootLevel,
              parallelismThreshold = Int.MaxValue,
              parallelismMax = 0)
            (path, leafFiles)
          }
        }.collect()

    // Set the number of parallelism to prevent following file listing from generating many tasks
    // in case of large #defaultParallelism.
    val numParallelism = Math.min(paths.size, parallelismMax)

parallelismMax 最终由以下配置决定。

复制代码
  val PARALLEL_PARTITION_DISCOVERY_PARALLELISM =
    buildConf("spark.sql.sources.parallelPartitionDiscovery.parallelism")
      .doc("The number of parallelism to list a collection of path recursively, Set the " +
        "number to prevent file listing from generating too many tasks.")
      .version("2.1.1")
      .internal()
      .intConf
      .createWithDefault(10000)
相关推荐
期货资管源码2 小时前
外盘期货资管分仓软件源码搭建教程
大数据·源代码管理
Justice Young2 小时前
Hive第四章:HIVE Operators and Functions
大数据·数据仓库·hive·hadoop
百***24373 小时前
GPT-5.2国内调用+API中转+成本管控
大数据·人工智能·深度学习
min1811234563 小时前
金融风控中的实时行为建模
大数据·人工智能
Light603 小时前
智能重构人货场:领码SPARK破解快消行业增长困局的全景解决方案
spark·数字化转型·ai大模型·智能营销·快消行业·供应链优化
zhixingheyi_tian3 小时前
MapReduce 之 Splits
大数据·mapreduce
火星数据-Tina3 小时前
如何构建一个支持多终端同步的体育比分网站?
大数据·前端·数据库·websocket
kekekka3 小时前
实测验证|2026市场部有限预算破局:以178软文网为核心,搭建全域覆盖增长系统
大数据·人工智能
电商API_180079052473 小时前
B站视频列表与详情数据API调用完全指南
大数据·人工智能·爬虫·数据分析
行业探路者4 小时前
二维码制作工具使用指南:如何利用电脑摄像头轻松扫描和生成图片二维码
大数据·人工智能·学习·产品运营·软件工程