hive锁机制

hive锁

有两种:
共享锁shared(S) 触发后仍可以支持并发执行 todo:为什么要加共享锁?
互斥锁exclusive(X) 只要触发了这种锁,该表或分区不能并发执行作业
hivesql 对应的锁情况
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
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 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
drop table T1 X on T1
注意:
load data [local] inpath ‘’ into table xx partition 也会触发锁,触发的锁同insert
使用hadoop fs -put xx yy 命名上传数据不会触发锁,所以可以用这个命令来代替load data避免锁,但需要先建分区
查看锁的命令:
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;
自定义权限校验
ohive支持多种权限校验的方式,比如NONE,NOSASL, KERBEROS, LDAP, PAM ,CUSTOM等等
oCUSTOM则是自定义权限校验,实现步骤如下:
开发一个类,实现org.apache.hive.service.auth.PasswdAuthenticationProvider接口,并重写Authenticate方法
将自定义的类达成jar包分发到集群的hive/lib目录下
在配置文件中开启自定义权限校验,并配置hive.server2.custom.authentication.clas指向自定义的权限校验类

hive.server2.authentication
CUSTOM


hive.server2.custom.authentication.class
cn.fancychuan.hive.auth.CustomHiveServer2Auth

物化视图Materialized views

传统上,用于加速数据仓库中查询处理的最强大技术之一是对相关摘要或实例化视图进行预计算。
Apache Hive 3.0.0 中引入的初始实现侧重于引入物化视图和基于项目中的那些物化的自动查询重写
参考文档:https://www.docs4dev.com/docs/zh/apache-hive/3.1.1/reference/Materialized_views.html

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值