hive事務管理

2021-08-15 04:00:08 字數 905 閱讀 2281

事務包含四要素:

事務可以保證acid原則的操作,解決acid問題的兩大技術點是:

cdh hive中的concurrency預設是開啟的,hive定義了兩種鎖的模式:共享鎖(s)和排它鎖(x),顧名思義,多個共享鎖(s)可以同時獲取,但是排它鎖(x)會阻塞其它所有鎖。

讀請求和select查詢語句使用共享鎖,寫語句使用排它鎖。排它鎖和共享鎖,排它鎖和排它鎖不能並存,共享鎖和共享鎖可以並存。

使用show locks命令在hive中檢視正在使用哪種鎖,我的環境是cdh5.8.5,hive是1.2.0版本,預設開啟了鎖。可以對同一張表使用insert into 和select等語句進行測試。

但是如果要是用update或者delete對資料庫表進行事務操作的話,需要在hive-site.xml中新增以下配置,有的可能配置已經存在

hive.support.concurrency

true

hive.enforce.bucketing

true

hive.exec.dynamic.partition.mode

nonstrict

hive.txn.manager

org.apache.hadoop.hive.ql.lockmgr.dbtxnmanager

hive.compactor.initiator.on

true

hive.compactor.worker.threads

1hive.lock.sleep.between.retries

10如果要在beeline中實現事務操作,還需要配置hive-site.xml的hiveserver2高階**段,配置項同上。

其中,hive.lock.sleep.between.retries項可以使用預設,該項表示乙個操作從另乙個操作拿到鎖的時間間隔,預設是60s

Spring事務管理

spring是ssh中的管理員,負責管理其它框架,協調各個部分的工作。今天一起學習一下spring的事務管理。spring的事務管理分為宣告式跟程式設計式。宣告式就是在spring的配置檔案中進行相關配置 程式設計式就是用註解的方式寫到 裡。下面先說宣告式 spring配置檔案中關於事務配置總是由三...

spring事務管理

一 xml配置事務 二 註解的方式配置事務 bean id txmanaager class org.springframework.orm.hibernate3.hibernatetransactionmanager property name sessionfactory ref session...

Spring AOP 事務管理

首先需要配置乙個 bean 稱之為事務管理器。有datasourcetransactionmanager hibernatetransactionmanager等。然後用tx advice標籤配置事務。tx即是transaction的簡寫。定義事務屬性 傳播 隔離級別 讀寫 超時 異常。最後用 ao...