[發(fā)明專(zhuān)利]一種數(shù)據(jù)庫(kù)系統(tǒng)的鎖操作方法及設(shè)備在審
| 申請(qǐng)?zhí)枺?/td> | 201310222370.5 | 申請(qǐng)日: | 2013-06-06 |
| 公開(kāi)(公告)號(hào): | CN103336789A | 公開(kāi)(公告)日: | 2013-10-02 |
| 發(fā)明(設(shè)計(jì))人: | 聶愿愿;劉輝軍;王傳廷 | 申請(qǐng)(專(zhuān)利權(quán))人: | 華為技術(shù)有限公司 |
| 主分類(lèi)號(hào): | G06F17/30 | 分類(lèi)號(hào): | G06F17/30 |
| 代理公司: | 廣州三環(huán)專(zhuān)利代理有限公司 44202 | 代理人: | 郝傳鑫;熊永強(qiáng) |
| 地址: | 518129 廣東*** | 國(guó)省代碼: | 廣東;44 |
| 權(quán)利要求書(shū): | 查看更多 | 說(shuō)明書(shū): | 查看更多 |
| 摘要: | |||
| 搜索關(guān)鍵詞: | 一種 數(shù)據(jù)庫(kù) 系統(tǒng) 操作方法 設(shè)備 | ||
1.一種數(shù)據(jù)庫(kù)系統(tǒng)的鎖操作方法,其特征在于,包括:
第一處理節(jié)點(diǎn)獲取目標(biāo)鎖的鎖操作數(shù),所述鎖操作數(shù)用于記錄所述目標(biāo)鎖當(dāng)前在所述數(shù)據(jù)庫(kù)系統(tǒng)中各個(gè)處理節(jié)點(diǎn)上的狀態(tài),且所述目標(biāo)鎖當(dāng)前在所述數(shù)據(jù)庫(kù)系統(tǒng)中每個(gè)處理節(jié)點(diǎn)上的狀態(tài)使用所述鎖操作數(shù)中的一個(gè)或者多個(gè)數(shù)據(jù)位表示;
所述第一處理節(jié)點(diǎn)使用所述目標(biāo)鎖對(duì)目標(biāo)數(shù)據(jù)對(duì)象進(jìn)行加鎖操作,并將所述鎖操作數(shù)中用于表示所述目標(biāo)鎖在所述第一處理節(jié)點(diǎn)上的狀態(tài)的數(shù)據(jù)位的值更新為用于表示所述目標(biāo)鎖在所述第一處理節(jié)點(diǎn)上為加鎖狀態(tài)的值;
所述第一處理節(jié)點(diǎn)根據(jù)所述鎖操作數(shù)確認(rèn)所述加鎖操作是否成功。
2.如權(quán)利要求1所述的方法,其特征在于,所述將所述鎖操作數(shù)中用于表示所述目標(biāo)鎖在所述第一處理節(jié)點(diǎn)上的狀態(tài)的數(shù)據(jù)位的值更新為用于表示所述目標(biāo)鎖在所述第一處理節(jié)點(diǎn)上為加鎖狀態(tài)的值,包括:
獲取使用所述目標(biāo)鎖對(duì)所述目標(biāo)數(shù)據(jù)對(duì)象進(jìn)行加鎖操作的時(shí)刻所述鎖操作數(shù)的原有值;
將所述原有值中用于表示所述目標(biāo)鎖在所述第一處理節(jié)點(diǎn)上的狀態(tài)的數(shù)據(jù)位的值更新為用于表示所述目標(biāo)鎖在所述第一處理節(jié)點(diǎn)上為加鎖狀態(tài)的值;
所述第一處理節(jié)點(diǎn)根據(jù)所述鎖操作數(shù)確認(rèn)所述加鎖操作是否成功,包括:
當(dāng)所述原有值滿(mǎn)足加鎖操作成功的條件時(shí),所述第一處理節(jié)點(diǎn)確認(rèn)所述加鎖操作成功;否則,確定所述加鎖操作失敗。
3.如權(quán)利要求2所述的方法,其特征在于,所述第一處理節(jié)點(diǎn)使用所述目標(biāo)鎖對(duì)所述目標(biāo)數(shù)據(jù)對(duì)象進(jìn)行加鎖操作包括:
所述第一處理節(jié)點(diǎn)使用所述目標(biāo)鎖對(duì)所述目標(biāo)數(shù)據(jù)對(duì)象進(jìn)行加共享鎖的操作;
所述將所述原有值中用于表示所述目標(biāo)鎖在所述第一處理節(jié)點(diǎn)上的狀態(tài)的數(shù)據(jù)位的值更新為用于表示所述目標(biāo)鎖在所述第一處理節(jié)點(diǎn)上為加鎖狀態(tài)的值,包括:
將所述原有值中用于表示所述目標(biāo)鎖在所述第一處理節(jié)點(diǎn)上的狀態(tài)的數(shù)據(jù)位的值加上預(yù)先設(shè)定的第一值,得到所述鎖操作數(shù)的更新值;所述更新值中用于表示所述目標(biāo)鎖在所述第一處理節(jié)點(diǎn)上的狀態(tài)的數(shù)據(jù)位的值為表示所述目標(biāo)鎖在所述第一處理節(jié)點(diǎn)上為共享鎖狀態(tài)的值;
所述當(dāng)所述原有值滿(mǎn)足加鎖操作成功的條件時(shí),所述第一處理節(jié)點(diǎn)確認(rèn)所述加鎖操作成功,否則,確定所述加鎖操作失敗包括:
所述第一處理節(jié)點(diǎn)判斷所述原有值所記錄的所述目標(biāo)鎖在所述數(shù)據(jù)庫(kù)系統(tǒng)中各個(gè)處理節(jié)點(diǎn)上的狀態(tài)是否均為允許加共享鎖狀態(tài);若是,則確認(rèn)所述加共享鎖操作成功;若否,則確認(rèn)所述加共享鎖操作失敗;
其中,所述允許加共享鎖狀態(tài)為未鎖定狀態(tài)和共享鎖狀態(tài)中的任一狀態(tài)。
4.如權(quán)利要求2所述的方法,其特征在于,所述第一處理節(jié)點(diǎn)使用所述目標(biāo)鎖對(duì)所述目標(biāo)數(shù)據(jù)對(duì)象進(jìn)行加鎖操作包括:
所述第一處理節(jié)點(diǎn)使用所述目標(biāo)鎖對(duì)所述目標(biāo)數(shù)據(jù)對(duì)象進(jìn)行加排它鎖的操作;
所述將所述原有值中用于表示所述目標(biāo)鎖在所述第一處理節(jié)點(diǎn)上的狀態(tài)的數(shù)據(jù)位的值更新為用于表示所述目標(biāo)鎖在所述第一處理節(jié)點(diǎn)上為加鎖狀態(tài)的值,包括:
將所述原有值中用于表示所述目標(biāo)鎖在所述第一處理節(jié)點(diǎn)上的狀態(tài)的數(shù)據(jù)位的值加上預(yù)先設(shè)定的第二值,得到所述鎖操作數(shù)的更新值;所述更新值中用于表示所述目標(biāo)鎖在所述第一處理節(jié)點(diǎn)上的狀態(tài)的數(shù)據(jù)位的值為表示所述目標(biāo)鎖在所述第一處理節(jié)點(diǎn)上為排他鎖狀態(tài)的值;
當(dāng)所述原有值滿(mǎn)足加鎖操作成功的條件時(shí),所述第一處理節(jié)點(diǎn)確認(rèn)所述加鎖操作成功,否則,確定所述加鎖操作失敗包括:
所述第一處理節(jié)點(diǎn)判斷所述原有值所記錄的所述目標(biāo)鎖在所述數(shù)據(jù)庫(kù)系統(tǒng)中各個(gè)處理節(jié)點(diǎn)上的狀態(tài)是否均為允許加共享鎖狀態(tài);若是,則確認(rèn)所述加排它鎖操作成功,否則,確定所述加排它鎖操作失敗;或者
所述第一處理節(jié)點(diǎn)判斷所述原有值所記錄的所述目標(biāo)鎖在所述第一處理節(jié)點(diǎn)上的狀態(tài)是否為共享鎖狀態(tài),且在其它處理節(jié)點(diǎn)上的狀態(tài)是否均為未鎖定狀態(tài),若是,則確認(rèn)所述加排它鎖操作成功,否則,確定所述加排它鎖操作失敗;所述其它處理節(jié)點(diǎn)為所述數(shù)據(jù)庫(kù)系統(tǒng)中除所述第一處理節(jié)點(diǎn)之外的所有處理節(jié)點(diǎn);
其中,所述允許加共享鎖狀態(tài)為未鎖定狀態(tài)和共享鎖狀態(tài)中的任一狀態(tài)。
5.如權(quán)利要求3或4所述的方法,其特征在于,所述方法還包括:
當(dāng)所述第一處理節(jié)點(diǎn)確定所述加鎖操作失敗時(shí),將所述更新值中用于表示所述目標(biāo)鎖在所述第一處理節(jié)點(diǎn)上的狀態(tài)的數(shù)據(jù)位的值更新為用于表示所述目標(biāo)鎖在所述第一處理節(jié)點(diǎn)上為排隊(duì)等待狀態(tài)的值。
該專(zhuān)利技術(shù)資料僅供研究查看技術(shù)是否侵權(quán)等信息,商用須獲得專(zhuān)利權(quán)人授權(quán)。該專(zhuān)利全部權(quán)利屬于華為技術(shù)有限公司,未經(jīng)華為技術(shù)有限公司許可,擅自商用是侵權(quán)行為。如果您想購(gòu)買(mǎi)此專(zhuān)利、獲得商業(yè)授權(quán)和技術(shù)合作,請(qǐng)聯(lián)系【客服】
本文鏈接:http://www.szxzyx.cn/pat/books/201310222370.5/1.html,轉(zhuǎn)載請(qǐng)聲明來(lái)源鉆瓜專(zhuān)利網(wǎng)。
- 同類(lèi)專(zhuān)利
- 專(zhuān)利分類(lèi)
G06F 電數(shù)字?jǐn)?shù)據(jù)處理
G06F17-00 特別適用于特定功能的數(shù)字計(jì)算設(shè)備或數(shù)據(jù)處理設(shè)備或數(shù)據(jù)處理方法
G06F17-10 .復(fù)雜數(shù)學(xué)運(yùn)算的
G06F17-20 .處理自然語(yǔ)言數(shù)據(jù)的
G06F17-30 .信息檢索;及其數(shù)據(jù)庫(kù)結(jié)構(gòu)
G06F17-40 .數(shù)據(jù)的獲取和記錄
G06F17-50 .計(jì)算機(jī)輔助設(shè)計(jì)
- 數(shù)據(jù)庫(kù)
- 數(shù)據(jù)庫(kù)管理系統(tǒng)及數(shù)據(jù)庫(kù)
- 數(shù)據(jù)庫(kù)構(gòu)筑裝置、數(shù)據(jù)庫(kù)檢索裝置、數(shù)據(jù)庫(kù)裝置、數(shù)據(jù)庫(kù)構(gòu)筑方法、以及數(shù)據(jù)庫(kù)檢索方法
- 數(shù)據(jù)庫(kù)和數(shù)據(jù)庫(kù)處理方法
- 數(shù)據(jù)庫(kù)系統(tǒng)、數(shù)據(jù)庫(kù)更新方法、數(shù)據(jù)庫(kù)以及數(shù)據(jù)庫(kù)更新程序
- 容器數(shù)據(jù)庫(kù)
- 數(shù)據(jù)庫(kù)同步方法及數(shù)據(jù)庫(kù)
- 一種MongoDB數(shù)據(jù)庫(kù)對(duì)象復(fù)制延遲監(jiān)控方法和裝置
- 數(shù)據(jù)分布式存儲(chǔ)方法、裝置、電子設(shè)備及存儲(chǔ)介質(zhì)
- 數(shù)據(jù)庫(kù)語(yǔ)句執(zhí)行方法及裝置
- 傳感設(shè)備、檢索設(shè)備和中繼設(shè)備
- 簽名設(shè)備、檢驗(yàn)設(shè)備、驗(yàn)證設(shè)備、加密設(shè)備及解密設(shè)備
- 色彩調(diào)整設(shè)備、顯示設(shè)備、打印設(shè)備、圖像處理設(shè)備
- 驅(qū)動(dòng)設(shè)備、定影設(shè)備和成像設(shè)備
- 發(fā)送設(shè)備、中繼設(shè)備和接收設(shè)備
- 定點(diǎn)設(shè)備、接口設(shè)備和顯示設(shè)備
- 傳輸設(shè)備、DP源設(shè)備、接收設(shè)備以及DP接受設(shè)備
- 設(shè)備綁定方法、設(shè)備、終端設(shè)備以及網(wǎng)絡(luò)側(cè)設(shè)備
- 設(shè)備、主設(shè)備及從設(shè)備
- 設(shè)備向設(shè)備轉(zhuǎn)發(fā)





