[發明專利]一種實時內存數據庫的對象類型屬性類型鎖的實現方法有效
| 申請號: | 201410536272.3 | 申請日: | 2014-10-11 |
| 公開(公告)號: | CN104252545A | 公開(公告)日: | 2014-12-31 |
| 發明(設計)人: | 戴宏斌;金舒;周金國 | 申請(專利權)人: | 南京國電南自美卓控制系統有限公司 |
| 主分類號: | G06F17/30 | 分類號: | G06F17/30 |
| 代理公司: | 南京縱橫知識產權代理有限公司 32224 | 代理人: | 董建林 |
| 地址: | 210032 江蘇*** | 國省代碼: | 江蘇;32 |
| 權利要求書: | 查看更多 | 說明書: | 查看更多 |
| 摘要: | |||
| 搜索關鍵詞: | 一種 實時 內存 數據庫 對象 類型 屬性 實現 方法 | ||
1.一種實時內存數據庫的對象類型屬性類型鎖的實現方法,其特征在于,包括以下步驟:
1)在實時內存數據庫中設置對象類型屬性類型鎖,即在每一種對象類型中每一種屬性類型上設置一對排它鎖和共享鎖;
2)實時內存數據庫中實時事務開始執行時先構建一個空的鎖集合,用來存放實時事務獲取并持有的鎖;
3)判斷實時事務的下一個實時訪問類型,如果是查詢訪問,則檢查鎖集合中是否存在目標排它鎖,然后轉入步驟4);如果是更新訪問,則檢查鎖集合中是否存在目標排它鎖,然后轉入步驟6);
4)如果存在目標排它鎖,則轉入步驟8);如果不存在目標排它鎖,則檢查鎖集合中是否存在目標共享鎖,然后轉入下一步;
5)如果存在目標共享鎖,則轉入步驟8);如果不存在目標共享鎖,則獲取目標共享鎖并加入鎖集合,然后轉入步驟8);
6)如果存在目標排它鎖,則轉入步驟8);如果不存在目標排它鎖,則檢查鎖集合中是否存在目標共享鎖,然后轉入下一步;
7)如果存在目標共享鎖,則將其升級為對應的目標排它鎖,然后轉入步驟8);如果不存在目標共享鎖,則獲取目標排它鎖并加入鎖集合,然后轉入步驟8);
8)執行實時訪問,并判斷是否正確完成實時訪問,如果是,則轉入步驟9);如果否,則轉入步驟10);
9)判斷是否還有其它實時訪問,如果是,則轉入步驟3),如果否,則轉入步驟11);
10)夭折并回滾實時事務,然后轉入步驟11);
11)釋放鎖集合中全部持有的鎖,實時訪問結束。
2.根據權利要求1所述的一種實時內存數據庫的對象類型屬性類型鎖的實現方法,其特征在于,所述步驟1)中對象類型屬性類型鎖是指實時事務訪問對象的屬性,對對象類型中的屬性類型設置鎖,這種鎖稱為對象類型屬性類型鎖。
3.根據權利要求1所述的一種實時內存數據庫的對象類型屬性類型鎖的實現方法,其特征在于,所述步驟2)中,實時事務由一系列不可分割的實時訪問順序組成;所述實時事務包括更新事務和查詢事務,將包含更新訪問的實時事務定義為更新事務,將僅包含查詢訪問的實時事務定義為查詢事務。
4.根據權利要求3所述的一種實時內存數據庫的對象類型屬性類型鎖的實現方法,其特征在于,所述實時訪問訪問一個對象的一個屬性,稱該對象為目標對象,該屬性為目標屬性,在訪問之前必須獲得目標對象對應的對象類型中目標屬性對應的屬性類型的鎖,稱為目標鎖。
5.根據權利要求1所述的一種實時內存數據庫的對象類型屬性類型鎖的實現方法,其特征在于,所述步驟3)中,所述目標排它鎖是指在對目標對象的目標屬性執行更新訪問前,獲得的目標對象對應的對象類型中目標屬性對應的屬性類型的排它鎖;所述獲得目標排它鎖的情況下對該類對象的該種屬性可執行更新訪問和查詢訪問。
6.根據權利要求1所述的一種實時內存數據庫的對象類型屬性類型鎖的實現方法,其特征在于,所述步驟4)中,所述目標共享鎖是指在對目標對象的目標屬性查詢訪問之前,獲得的目標對象對應的對象類型中目標屬性對應的屬性類型的共享鎖;所述獲得目標共享鎖的情況下對該類對象中的該種屬性僅可執行查詢訪問。
7.根據權利要求5或6所述的一種實時內存數據庫的對象類型屬性類型鎖的實現方法,其特征在于,對于相同的目標對象對應的對象類型中目標屬性對應的屬性類型上的目標排它鎖和目標共享鎖,如果一個實時事務獲得并持有目標排它鎖,在釋放以前,其它并發實時事務既不能獲得目標排它鎖,也不能獲得目標共享鎖;而如果一個實時事務獲得并持有目標共享鎖,那么在釋放以前,其它并發實時事務雖然不能獲得目標排它鎖,但是可以獲得目標共享鎖。
8.根據權利要求3所述的一種實時內存數據庫的對象類型屬性類型鎖的實現方法,其特征在于,所述查詢事務具有低優先級,所述更新事務具有高優先級;所述實時事務獲取鎖時如果因為互斥共享需要等待其它并發實時事務釋放鎖,那么低優先級或者同等優先級的實時事務需要等待高優先級或者同等優先級的實時事務執行完成并釋放鎖,而高優先級的實時事務則使低優先級的實時事務夭折并釋放鎖后重新執行低優先級的實時事務。
9.根據權利要求1所述的一種實時內存數據庫的對象類型屬性類型鎖的實現方法,其特征在于,所述步驟2)中,實時事務執行之前需要進行預分析,所述預分析是指查看每一個實時訪問的類型。
10.根據權利要求8所述的一種實時內存數據庫的對象類型屬性類型鎖的實現方法,其特征在于,所述一個查詢事務因為并發更新事務夭折并重新執行k次后,其優先級升高至更新事務的高優先級。
該專利技術資料僅供研究查看技術是否侵權等信息,商用須獲得專利權人授權。該專利全部權利屬于南京國電南自美卓控制系統有限公司,未經南京國電南自美卓控制系統有限公司許可,擅自商用是侵權行為。如果您想購買此專利、獲得商業授權和技術合作,請聯系【客服】
本文鏈接:http://www.szxzyx.cn/pat/books/201410536272.3/1.html,轉載請聲明來源鉆瓜專利網。





