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)
相关推荐
反向跟单策略1 小时前
期货反向跟单-2025年回顾及2026年展望
大数据·人工智能·学习·数据分析·区块链
康康的AI博客3 小时前
智能情感分析与品牌策略优化:如何通过AI洞察提升企业市场响应力
大数据·数据库·人工智能
亚古数据3 小时前
法国公司的类型:探索法国企业的多样形态
大数据·人工智能·亚古数据·法国公司
金融小师妹4 小时前
3月美联储货币政策决策的动态博弈——基于就业市场数据与通胀预测的AI模型分析
大数据·人工智能·深度学习·机器学习
冯RI375II694874 小时前
办理电池UN38.3认证:如何准备申请材料?
大数据
工具人55554 小时前
EEA是什么?—— 汽车的“神经系统”与“组织结构”
大数据
物联网软硬件开发-轨物科技5 小时前
【技术白皮书】光伏电站数智化技改技术白皮书:从老旧场站到高收益智能资产的演进路径
大数据·运维·服务器
星辰_mya5 小时前
消息队列遇到Producer发送慢
分布式·kafka
2501_946490386 小时前
Hirender MTC时间码技术实操——PH®CLUB激光投影声光电精准同步实现方案
大数据·运维·人工智能·hirender·hecoos
诚思报告YH6 小时前
半导体石英制品市场洞察:2026-2032年复合增长率(CAGR)达9.2%
大数据·人工智能