Spark - 从配置单元查询时看不到 avro 数据
Spark - avro data not visible when queried from hive
我正在使用像
这样的 spark avro 创建数据框
dataframe.write.format("com.databricks.spark.avro").save(outputPath)
在我的例子中,输出路径类似于 hdfs 路径 + table_name + partition
table table_name 已经使用 AvroSerDe 在 hive 中创建,其中 LOCATION 设置为 outputPath。
但是,当我从配置单元中为 table_name 执行 select * 时,创建的数据框不可见。可能是什么问题
这里发生的事情是 .save
没有更新 Hive Metastore,因此您的查询中看不到新数据。
您可以尝试使用 dataframe.write().mode(SaveMode.Append).partitionBy("partition").saveAsTable("table_name")
将数据附加到您的 table。
ALTER Table ADD PARTITION 修复了问题
我正在使用像
这样的 spark avro 创建数据框dataframe.write.format("com.databricks.spark.avro").save(outputPath)
在我的例子中,输出路径类似于 hdfs 路径 + table_name + partition
table table_name 已经使用 AvroSerDe 在 hive 中创建,其中 LOCATION 设置为 outputPath。
但是,当我从配置单元中为 table_name 执行 select * 时,创建的数据框不可见。可能是什么问题
这里发生的事情是 .save
没有更新 Hive Metastore,因此您的查询中看不到新数据。
您可以尝试使用 dataframe.write().mode(SaveMode.Append).partitionBy("partition").saveAsTable("table_name")
将数据附加到您的 table。
ALTER Table ADD PARTITION 修复了问题