zoukankan      html  css  js  c++  java
  • HIVE锁相关

    hive存在两种锁,共享锁Shared (S)和互斥锁Exclusive (X)

    其中只触发s锁的操作可以并发的执行,只要有一个操作对表或者分区出发了x锁,则该表或者分区不能并发的执行作业。

    -- 加锁
    lock table dws_prem_m_bak_20180630 exclusive ; 
    -- 查看锁
    show locks dws_prem_m_bak_20180630 extended;
    -- 解锁
    unlock table dws_prem_m_bak_20180630 ;
    -- 如果锁表无法操作查询及ddl
    select * from dws_prem_m_bak_20180630; 
    -- 在hue中通过mr执行过程中,点取消,导致锁分区
    -- 通过过spark重跑2018-05-01分区无法插入数据
    -- 插入其它分区可正常插入
    -- 查看分区不存在
    show partitions table_name;
    -- 查看是否锁表
    show locks table_name;
    -- 发现表的2018-05-01分区被锁
    db_name@table_name@day=2018-05-01 Exclusive (X)
    -- 解锁表无效
    unlocks table table_name;
    -- 解锁表分区无效,报错无该分区
    unlocks table table_name partition(day='2018-05-01');
    -- 改表名,再改回来,失败,执行不动
    alter table table_name rename to table_name_bak;
    -- 增加分区,成功
    alter table table_name add partition(day='2018-05-01');
    -- 再次解锁分区,成功
    unlocks table table_name partition(day='2018-05-01');
  • 相关阅读:
    sqli-labs(43)
    sqli-labs(42)
    sqli-labs(41) and 两php函数的讲解
    php的mysql语法
    msf
    域的建立过程
    sqli-labs(40)
    sqli-labs(39)
    sqli-labs(38)
    虚拟化之docker
  • 原文地址:https://www.cnblogs.com/chenzechao/p/9263864.html
Copyright © 2011-2022 走看看