要清空表中数据,100w条数据以上的表,开始我们使用delete from t_user进行删除,这样操作太慢了,需要等好长时间,如果数据量更大,那么我们要等的时间无法想象。
可以用以下方法进行删除
假设要删除的原表为source_t
第一步:生成中间表
1 create table source_t_m as select * from source_t where id = '111' --任意指定一条符合条件的数据即可
第二步:修改表名
1 rename source_t to source_t_b; --将源表改为其他名字 rename source_t_m to source_t; --将中间表改名为原表
第三步:执行删除
1 drop table source_t_b; --删除那个被你改为其他名字的表 delete from source_t; --此时表中只有一条数据,删除即可
如对本文有疑问, 点击进行留言回复!!
去 HBase,Kylin on Parquet 性能表现如何?
如何找到Hive提交的SQL相对应的Yarn程序的applicationId
如何在 HBase Shell 命令行正常查看十六进制编码的中文?哈哈~
网友评论