计算hive 1.2.1中已删除分区的静态

计算hive 1.2.1中已删除分区的静态,hive,presto,Hive,Presto,我有一个从分区中删除数据的功能。如果删除了所有数据,那么也删除分区。 以下是我们发现的步骤: 搜索基于日期的分区数据 从分区中删除数据 如果存在执行计算统计,请检查是否存在任何记录。对于列也是如此 如果没有记录,则删除分区并执行计算统计 当我们执行select查询时,它向我显示删除分区的错误。 即使我们调用computestatistics,它仍然显示分区不存在。 我错过什么了吗 我们已经尝试通过一些代码更改来计算统计数据,但它不起作用。以下是我们采取的步骤: ALTER TABLE tra

我有一个从分区中删除数据的功能。如果删除了所有数据,那么也删除分区。 以下是我们发现的步骤:

  • 搜索基于日期的分区数据
  • 从分区中删除数据
  • 如果存在执行计算统计,请检查是否存在任何记录。对于列也是如此
  • 如果没有记录,则删除分区并执行计算统计
当我们执行select查询时,它向我显示删除分区的错误。 即使我们调用computestatistics,它仍然显示分区不存在。 我错过什么了吗

我们已经尝试通过一些代码更改来计算统计数据,但它不起作用。以下是我们采取的步骤:

ALTER TABLE transactions DROP IF EXISTS PARTITION (eventday=" + eventDay + ")
ALTER TABLE transactions ADD IF NOT EXISTS PARTITION (eventday=" + eventDay + ")
如果删除了分区,则下面是接下来的两个步骤:

ALTER TABLE transactions DROP IF EXISTS PARTITION (eventday=" + eventDay + ")
ALTER TABLE transactions ADD IF NOT EXISTS PARTITION (eventday=" + eventDay + ")
每次执行以下步骤:

ANALYZE TABLE transactions PARTITION(eventday=" + eventDay + ") COMPUTE STATISTICS FOR COLUMNS
ANALYZE TABLE transactions PARTITION(eventday=" + eventDay + ") COMPUTE STATISTICS
预期的结果是避免此异常,因为分区不可用 但对于delete分区的select查询,它显示了这个错误

java.sql.SQLException:查询失败(#20190619_060000_00416_bztpj):分区位置不存在:hdfs://XXXX/XX/XX


为什么不简单地删除分区和数据?为什么不简单地删除分区和数据?