You need to enable JavaScript to run this app.
优惠活动
大模型
产品
解决方案
定价
更多

如何在Spark中一次性读取多种类型的文件?

一次Spark操作读取多种文件类型的实现方法

当然可以!Spark的pathGlobFilter参数支持直接传入多个用逗号分隔的通配符模式,完全不用写循环逐个读取再做union操作。

针对你需要读取.txt和.inf文件的场景,直接修改代码即可:

from pyspark.shell import spark

load_folder = '...'

general_df = spark.read.format("text") \
    .option("pathGlobFilter", "*.txt,*.inf") \
    .option("recursiveFileLookup", "true") \
    .load(load_folder)

general_df.show()

补充说明

  • pathGlobFilter接受逗号分隔的多个匹配规则,Spark会自动扫描目标目录(含子目录,因为开了recursiveFileLookup),加载所有符合任一规则的文件
  • 因为你读取的都是文本格式,用format("text")统一处理完全没问题;如果是同时读取不同格式的文件(比如文本和Parquet),这种方法就不适用了,得分别读取后再合并,但你的场景刚好是单一格式多后缀,完美适配这个方案。

内容的提问来源于stack exchange,提问作者MariaMsu

相关产品推荐
方舟 Agent Plan

超全模态模型 × Harness 升级,最新支持 Deepseek-V4.1-Flash、GLM-5.3 系列、Doubao-Seedream-5.0-pro、Kimi-K3 (部分), 限时 9.9 元起

最近更新时间:2026.07.17 01:46:57