我正在尝试将这些文件从S3复制到Redshift,它们都是Row(column1 = value,column2 = value,...)的格式,这显然会导致问题。如何在正常的csv中写出数据帧?
我这样称呼它:
# final_data.rdd.saveAsTextFile(
# path=r's3n://inst-analytics-staging-us-standard/spark/output',
# compressionCodecClass='org.apache.hadoop.io.compress.GzipCodec'
# )
我也尝试用spark-csv
模块写出来,似乎它忽略了我所做的任何计算,只是将原始的镶木地板文件格式化为csv并将其转储出来。
我这样称呼:
df.write.format('com.databricks.spark.csv').save('results')
答案 0 :(得分:0)
spark-csv方法很好,应该可行。通过查看您在原始DataFrame df.write
上调用df
的代码,这就是为什么它忽略了您的转换。为了正常工作,也许你应该这样做:
final_data = # Do your logic on df and return a new DataFrame
final_data.write.format('com.databricks.spark.csv').save('results')