hive3新增資料_Hive 3.x 支持 ACID 增删改查

Hive 3 ACID事务

Hive 3通过使用涉及增量文件的写入,读取,插入,创建,删除和更新操作中的技术实现事务性表的原子性和隔离操作,这些操作可以提供查询状态信息并帮助您解决查询问题。

写入和读取操作

Hive 3写入和读取操作改进了事务表的ACID属性和性能。事务表与其他表一样执行。Hive支持所有TPC Benchmark DS(TPC-DS)查询。

Hive 3及更高版本通过简单的写入和插入扩展了原子操作,以支持以下操作:

写入多个分区

在单个SELECT语句中使用多个insert子句

单个语句可以写入多个分区或多个表。如果操作失败,则用户看不到部分写入或插入。即使数据经常变化,操作仍然保持高效,例如每小时百分之一。Hive 3及更高版本不会覆盖整个分区以执行更新或删除操作。

读取语义包括快照隔离。当读取操作开始时,Hive在逻辑上锁定仓库的状态。读操作不受操作期间发生的更改的影响。

仅插入表中的原子性和隔离

当仅插入事务开始时,事务管理器获取事务ID。对于每次写入,事务管理器都会分配写入ID。此ID确定实际写入数据的路径。以下代码显示了仅插入事务表的架构:

CREATE TABLE tm (a int, b int) TBLPROPERTIES

('transactional'='true',

'transactional_properties'='insert_only');

假设发生了三次插入操作,第二次操作失败:

INSERT INTO tm VALUES(1,1);

INSERT INTO tm

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值