0
点赞
收藏
分享

微信扫一扫

Hive—进阶—Hive中的锁(15)

小云晓云 2022-02-26 阅读 64

Hive中的锁

Hive 锁机制是为了让 Hive 支持并发读写而设计的 ,另外要解决并发读写的情况下”脏读“ (Read uncommited)的问题。脏读的问题本身通过实现了原子的 reader/writer 已经得到解决(https://issues.apache.org/jira/browse/HIVE-829)和锁机制并不绑定。

关闭锁机制

可以通过设置 hive.support.concurrency=fasle 来解决锁的问题

关闭锁机制会造成下面影响:

  • 并发读写同一份数据时,读操作可能会随机失败
  • 并发写操作的结果在随机出现,后完成的任务覆盖之前完成任务的结果
  • SHOW LOCKS, UNLOCK TABLE 会报错

案例

前面遇到过一次因为Hive中表被锁住了,导致定时任务一直失败。这两天又出现了表被锁,原因是连接hiveserver2过于频繁,mysql连接被打满,引发的连锁反应,导致我们的小时任务一直失败,下午重点注意到这个问题,才解决好。

在执行insert intoinsert overwrite任务时,中途手动将程序停掉,会出现卡死情况(无法提交MapReduce),只能执行查询操作,而<

举报

相关推荐

0 条评论