В приведенном ниже коде scala используется функция для подсчета количества дней между вводом пользователем даты start
и end
.Затем он выполняет итерацию / чтение файлов aws s3, которые находятся в этом временном диапазоне.
def getS3Data(s3Loc: String): DataFrame = {
println(s"Reading Avro from ${s3Loc}")
val cosimDf = spark.read.format("com.databricks.spark.avro")
.load(s3Loc)
cosimDf
}
val daysCount = Days.daysBetween(start,end).getDays()
(0 until daysCount).map(start.plusDays(_)).foreach{x => {var myDir ="s3://AWS.Bucket/parsed/" + x.toString("yyyyMMdd") +"/"
val myDf = getS3Data(myDir)
}}
У меня проблемы с созданием фрейма данных, который представляет собой набор всех файлов, через которые итерировала вышеупомянутая функция.Я думаю, что возможно использование .collect
или применение вывода к искушаемому может работать, но, похоже, не могу понять, как.
Любая помощь приветствуется.