将spark.sqlDataframe结果写入Parquet文件

fnx2tebb  于 2021-06-25  发布在  Hive
关注(0)|答案(1)|浏览(327)

我启用了以下spark.sql会话:


# creating Spark context and connection

spark = (SparkSession.builder.appName("appName").enableHiveSupport().getOrCreate())

我可以看到以下查询的结果:

spark.sql("select year(plt_date) as Year, month(plt_date) as Mounth, count(build) as B_Count, count(product) as P_Count from first_table full outer join second_table on key1=CONCAT('SS',key_2) group by year(plt_date), month(plt_date)").show()

但是,当我尝试将此查询的结果Dataframe写入hdfs时,出现以下错误:

我能够将此查询的简单版本的结果Dataframe保存到相同的路径。通过添加count()、year()等函数,问题就会出现。
有什么问题?如何将结果保存到hdfs?

nx7onnlm

nx7onnlm1#

由于“(”列中的“year(cast(plt\u date as date))”出现错误:
用于重命名:

data = data.selectExpr("year(CAST(plt_date AS DATE)) as nameofcolumn")

如果可行,请投票
参见:重命名Spark柱

相关问题