【发布时间】:2014-06-20 09:29:29
【问题描述】:
我期待 SQL 和 HIVE 中的截断行为相同。 但它不同。 我想确认我是否理解错了
1) 在 SQL 中,以下命令删除表并重新创建。如果存在则删除所有分区
mysql> truncate table t1;
2) 在 HIVE 中,以下命令只是从表中删除数据。它不会删除现有的分区。我们需要手动删除它。
hive> truncate table t1;
我发现了另一个问题,如果我们将列添加到分区表并对其进行更改。那么在向表中插入覆盖数据时就会出现问题。找到的解决方法是删除表上的所有现有分区。
这是 HIVE(0.13 版)中的问题吗? 对 HIVE 和 SQL 使用 truncate 的其他区别是什么?
【问题讨论】:
-
这个链接可能对你有帮助stackoverflow.com/questions/15130403/…
标签: mysql sql hadoop truncate hiveql