Spark SQL dataframe.save с partitionBy создает столбец массива

Я пытаюсь сохранить данные из массива данных Spark SQL в куст. Данные, которые должны быть сохранены, должны быть разделены на один из столбцов в кадре данных. Для этого я написал следующий код.

val conf = new SparkConf().setAppName("Hive partitioning")
conf.set("spark.scheduler.mode", "FAIR")
val sc = new SparkContext(conf)
val hiveContext = new HiveContext(sc)
hiveContext.setConf("hive.exec.dynamic.partition", "true")
hiveContext.setConf("hive.exec.dynamic.partition.mode", "nonstrict")

val df = hiveContext.sql("....   my sql query ....")

df.printSchema()
df.write.mode(SaveMode.Append).partitionBy("<partition column>").saveAsTable("orgs_partitioned")

Фрейм данных сохраняется как таблица с одним столбцом col и типа array<string>, структура такая, как показано ниже (скриншот из Hue).

изображение от оттенка

Любые указатели очень полезны. Благодарю.

0 ответов

Другие вопросы по тегам