我正在做以下事情:
ALTER TABLE ... DROP IF EXISTS PARTITION (col='val1')
hdfs dfs -rm -r path_to_remove
(col='val1')
并在HDFS文件夹下创建avro文件。sqlContext.sql("select count(0) from table1 where col='val1'").show
在MSCK REPAIR TABLE
之前返回0。 是否必须执行修复步骤才能在spark-sql
中再次查看数据?请指教。
答案 0 :(得分:0)
如果它是外部表,是的,您需要修复该表。我不认为您需要使用托管表来执行此操作。
SparkSQL从Hive Metastore中读取信息,并且没有关于该分区的信息,Spark或任何其他使用Metastore的工具都无法计算任何内容