hive/imapala-执行delete子句:`delete from[table]where[condition]`

wfauudbj  于 2021-06-29  发布在  Hive
关注(0)|答案(1)|浏览(277)

通过浏览网页,我了解到impala/hive不支持delete&update子句。我想为这个案子找个解决办法。我尝试使用insert overwrite子句执行,但没有成功:
我有一个分区表,它包含:user\ id,day,month,year(分区在day,month,year上)。
假设每个日期有一行(每个日期由这3个分区列表示),我想删除2016-05-01的行
如果我使用mysql,我会写: DELETE FROM tblname WHERE year = 2016 and month = 5 and day = 1 如何在Hive/ Impala 上执行?
谢谢您!

vwhgwdsa

vwhgwdsa1#

对数据进行分区,使要删除的行(使用窗口函数row\u number)位于一个分区中。然后可以删除分区而不影响表的其余部分。这是一个相当可持续的模型,即使您的数据集变得相当大。
有关分区的详细信息。
www.tutorialspoint.com/hive/hive_partitioning.htm

相关问题