我目前正在PySpark中编写一个程序,该程序涉及使用循环将数据帧写入镶木地板。在每个周期中,会将新数据附加到拼花地板上。实木复合地板存储在S3桶中。
我能够编写实木复合地板,但是当我将实木复合地板加载到数据框并尝试使用
进行读取时df.take(5)
我遇到以下错误消息
An error occurred while calling o461.collectToPython.
: org.apache.spark.SparkException: Job aborted due to stage failure: Task 0 in stage 32.0 failed 4 times, most recent failure: Lost task 0.3 in stage 32.0 (TID 57, ip-10-0-2-219.ec2.internal, executor 5):
java.lang.UnsupportedOperationException: org.apache.parquet.column.values.dictionary.PlainValuesDictionary$PlainBinaryDictionary
...
但是,我可以在数据框上运行以下命令:
df.count()
df.printSchema()
知道为什么会发生此错误吗?