我正在使用 spark 1.6.1,并且正在尝试将数据帧保存为 orc 格式。
我面临的问题是save方法很慢,每个executor上50M的orc文件大概需要6分钟。这就是我保存数据框的方式
dt.write.format("orc").mode("append").partitionBy("dt").save(path)
我尝试将 saveAsTable 用于也使用 orc 格式的 hive 表,这似乎快了大约 20% 到 50%,但这种方法有其自身的问题 - 似乎当任务失败时,重试总是会失败文件已经存在。这就是我保存数据框的方式
dt.write.format("orc").mode("append").partitionBy("dt").saveAsTable(tableName)
保存方法这么慢是有原因的吗?难道我做错了什么?