首页 > 解决方案 > 如何从 Spark DataFrame 中的 AWS S3 读取多个文件?

问题描述

我在 S3 存储桶中有一堆具有这种模式的文件

myfile_2018_(0).tab
myfile_2018_(1).tab
myfile_2018_(2).tab
..
myfile_2018_(150).tab

我想通过阅读所有这些文件来创建一个 Spark Dataframe。如何创建此正则表达式模式并读取文件?

这些文件有标题。我正在使用 Scala 来完成这项任务。

标签: scalaapache-sparkapache-spark-sql

解决方案


只需指定一个 glob 模式,如下所示(假设它们在同一个文件夹中):

val input = spark.read.option("header", true).csv("/path/to/data/myfile_2018_([0-9]*).tab")

推荐阅读