我在S3存储桶中有一堆具有这种模式的文件
myfile_2018_(0).tab
myfile_2018_(1).tab
myfile_2018_(2).tab
..
myfile_2018_(150).tab
我想通过读取所有这些文件来创建单个Spark Dataframe。如何创建此正则表达式模式并读取文件?
文件具有标题。我正在使用Scala来完成此任务。
答案 0 :(得分:2)
只需按如下所示指定全局模式(这是假设它们位于同一文件夹中):
val input = spark.read.option("header", true).csv("/path/to/data/myfile_2018_([0-9]*).tab")
答案 1 :(得分:0)
input = spark.read.format('com.databricks.spark.csv')。option(“ delimiter”,“ \ 001”)。option(“ header”,“ true”)。option(“ nullValue” ,“ null”).load(“ s3:// bucket-name / path / to / data / myfile_2018_([0-9] *).tab”,schema = in_schema)
in_schema -如果需要,您可以传递自己的模式,否则可以删除此选项。
如果需要该文件夹中存在的所有文件且模式相同,则可以直接从上面的文件夹中读取。
input = spark.read.format('com.databricks.spark.csv')。option(“ delimiter”,“ \ 001”)。option(“ header”,“ true”)。option(“ nullValue” ,“ null”).load(“ s3:// bucket-name / path / to / data /”)