Hive 锁 lock
Hive + zookeeper 可以支持锁功能
锁有两种:共享锁、独占锁,Hive开启并发功能的时候自动开启锁功能
1)查询操作使用共享锁,共享锁是可以多重、并发使用的
2)修改表操作使用独占锁,它会阻止其他的查询、修改操作
3)可以对分区使用锁。
1、修改hive-site.xml,配置如下:
<property>
<name>hive.zookeeper.quorum</name>
<value>zk1,zk2,zk3</value>
</property>
<property>
<name>hive.support.concurrency</name>
<value>true</value>
</property>
2、显式管理独占锁
1)锁表
hive> lock table t1 exclusive;
表被独占锁之后,将不能执行查询操作:
hive> SELECT COUNT(*) FROM people;
conflicting lock present for default@people mode SHARED
FAILED: Error in acquiring locks: locks on the underlying objects
cannot be acquired. retry after some time
2)解除锁
hive> unlock table t1;