【发布时间】:2019-07-24 14:12:06
【问题描述】:
我正在尝试将 MapR DB 中的数据加载到 Spark DF 中。 然后我只是想将 DF 导出为 CSV 文件。 但是,我得到的错误是:
“com.mapr.db.spark.exceptions.SchemaMappingException:无法解析数据类型 NullType 的值(当前标记:STRING)”
我尝试了几种方法,将列转换为 StringType。 这是其中之一:
df = spark.loadFromMapRDB(db_table).select(
F.col('c_002.v_22').cast(T.StringType()).alias('aaa'),
F.col('c_002.v_23').cast(T.StringType()).alias('bbb')
)
print(df.printSchema())
PrintSchema 的输出:
root
|-- aaa: string (nullable = true)
|-- bbb: string (nullable = true)
“aaa”和“bbb”列中的值可以为空。 然后我尝试将 df 导出为 CSV 文件:
df = df.repartition(10)
df.write.csv(csvFile, compression='gzip', mode='overwrite', sep=',', header='true', quoteAll='true')
【问题讨论】:
标签: python apache-spark pyspark apache-spark-sql