у меня есть '|' огромные текстовые файлы с разделителями, я хочу объединить все текстовые файлы и создать один огромный фрейм данных spark, он будет позже использован для процесса ETL с использованием pyspark.
неэффективный способ
1) Создайте пустой фрейм данных искры, df
2) В al oop прочитайте текстовый файл как спаркфрейм данных df1 и добавьте его в пустой фрейм данных искры df
df = spark.createDataFrame([],schema)
for x in os.listdir(textfiles_dir):
filepath = '{}/{}'.format(textfiles_dir,x)
df1 = spark.read.format("csv") \
.option("header", "true") \
.option("delimiter", "|") \
.option("inferSchema","true") \
.load(filepath)
df = df.union(df1)
Это не эффективный искровой способ.
Может ли кто-нибудь предложить эффективный способ сделать это? Было бы замечательно, если бы вы объяснили его с помощью примера кода.
Спасибо :)