Hive学习笔记 --- 锁机制

版权声明:学习交流为主,未经博主同意禁止转载,禁止用于商用。 https://blog.csdn.net/u012965373/article/details/81913021

Hive的锁有两个Lock方式

  • Shared (S)      共享表
  • Exclusive (X)   独享表、排他表

总结起来就是:

  • 1)查询操作使用共享锁,共享锁是可以多重、并发使用的
  • 2)修改表操作使用独占锁,它会阻止其他的查询、修改操作
  • 3)可以对分区使用锁。

以下情况会出发锁,以及它的类型和锁定范围如下:

Hive Command

Locks Acquired

select .. T1 partition P1

S on T1, T1.P1

insert into T2(partition P2) select .. T1 partition P1

S on T2, T1, T1.P1 and X on T2.P2

insert into T2(partition P.Q) select .. T1 partition P1

S on T2, T2.P, T1, T1.P1 and X on T2.P.Q

扫描二维码关注公众号,回复: 3215947 查看本文章

alter table T1 rename T2

X on T1

alter table T1 add cols

X on T1

alter table T1 replace cols

X on T1

alter table T1 change cols

X on T1

alter table T1 concatenate

X on T1

alter table T1 add partition P1

S on T1, X on T1.P1

alter table T1 drop partition P1

S on T1, X on T1.P1

alter table T1 touch partition P1

S on T1, X on T1.P1

alter table T1 set serdeproperties

S on T1

alter table T1 set serializer

S on T1

alter table T1 set file format

S on T1

alter table T1 set tblproperties

X on T1

alter table T1 partition P1 concatenate

X on T1.P1

drop table T1

X on T1

对锁的操作Locks

  show locks;

SHOW LOCKS <TABLE_NAME>;
SHOW LOCKS <TABLE_NAME> extended;
SHOW LOCKS <TABLE_NAME> PARTITION (<PARTITION_DESC>);
SHOW LOCKS <TABLE_NAME> PARTITION (<PARTITION_DESC>) extended;

猜你喜欢

转载自blog.csdn.net/u012965373/article/details/81913021