刚开始学hive,查hiveinsertinto语句和insertoverwrite语句区别的时候百度出来第一条写错了,差点被坑。。。。。
1.insert into是增加数据
2.insert overwrite是删除原有数据然后在新增数据,如果有分区那么只会删除指定分区数据,其他分区数据不受影响
写insert语句的时候都是要将整个表的值overwrite。因为它的存储层是HDFS,插入一个数据要全表扫描,还不如用整个表的替换来的快些。
刚开始学hive,查hiveinsertinto语句和insertoverwrite语句区别的时候百度出来第一条写错了,差点被坑。。。。。
1.insert into是增加数据
2.insert overwrite是删除原有数据然后在新增数据,如果有分区那么只会删除指定分区数据,其他分区数据不受影响
写insert语句的时候都是要将整个表的值overwrite。因为它的存储层是HDFS,插入一个数据要全表扫描,还不如用整个表的替换来的快些。