專利名稱::基于關系-xml雙模數據庫的xml多粒度鎖的制作方法
技術領域:
:本發明涉及一種基于關系-XML雙模數據庫的XML多粒度鎖。
背景技術:
:關系數據庫數據與XML數據的無縫處理,需要提高針對XML的并發控制效率。這是因為XML數據一般比關系數據大,設計基于關系-XML雙模數據庫的XML多粒度鎖是提高并發控制效率的途徑之一。傳統的數據庫往往是通過把XML轉化為關系來處理的,很少有針對關系-XML雙模數據庫,所以也就沒有XML的并發控制。XML數據庫具有多粒度鎖的功能,又沒有處理關系數據的能力。
發明內容為了解決上述問題,本發明針對關系數據與XML數據的無縫處理,需呀提高針對XML的并發控制效率,設計基于關系-XML雙模數據庫的XML多粒度鎖,通過控制并發控制的粒度提高并發控制效率,同時融合關系模式的并發控制信息,也適應關系-XML雙模數據庫的要求。本發明具體是通過以下技術方案來實現的一種基于關系-XML雙模數據庫的XML多粒度鎖,它是基于關系-XML雙模數據庫,即能無縫處理關系模式與XML模式的數據庫,針對XML的多粒度鎖,包括節點鎖、層級鎖和子樹鎖,可以融合關系模式的并發控制信息;所述的節點鎖、層級鎖和子樹鎖每種粒度的鎖又分讀鎖和寫鎖兩種,并由此而形成鎖表。所述關系模式的并發控制信息可以在表級,行級或者列級鎖定,如果關系模式的并發控制信息為空,則按照XML鎖信息進行并發控制;如XML鎖為寫鎖且關系模式為讀鎖,則降級XML鎖為讀鎖;如XML為讀鎖,則保留關系模式鎖信息,忽略XML鎖操。本發明從基于關系-XML雙模數據庫出發,轉化XML處理的關系數據庫或XML數據庫,這兩種單模數據庫不同的。與XML數據庫的XML多粒度鎖相比,融合關系模式的并發控制信息的多粒度鎖,提高并發控制的效率。具體實施例方式一種基于關系-XML雙模數據庫的XML多粒度鎖,它是基于關系-XML雙模數據庫,即能無縫處理關系模式與XML模式的數據庫,針對XML的多粒度鎖,包括節點鎖、層級鎖和子樹鎖,可以融合關系模式的并發控制信息;所述的節點鎖、層級鎖和子樹鎖每種粒度的鎖又分讀鎖和寫鎖兩種,并由此而形成鎖表。所述關系模式的并發控制信息可以在表級,行級或者列級鎖定,如果關系模式的并發控制信息為空,則按照XML鎖信息進行并發控制;如XML鎖為寫鎖且關系模式為讀鎖,則降級XML鎖為讀鎖;如XML為讀鎖,則保留關系模式鎖信息,忽略XML鎖操。本發明的一個優選實例如下假設接口函數名為xmlquery,輸入參數為記為A和B。A:XML數據列B:XQUERY執行命令假設關系-XML雙模數據庫的表為createtablexmlcustomer(cidbigint,infoXML)。命令為selectxmlquery(info,'replacevalueofnode$new/customerinfo/phonewith"905-477-9011"')fromxmlcustomerwherecid=1000;以上命令的初始情況XML為節點寫鎖,關系模式為行級讀鎖,按照步驟2降級XML鎖為讀鎖,這樣就提高了并發度。另一個命令如下updatexmlcustomersetinfo=xmlquery(info,'replacevalueofnode$new/customerinfo/phone[itype="home"]with"905-477-9011"');以上命令的初始情況XML為節點寫鎖,關系模式為列級寫鎖。如果沒有多粒度的XML鎖則整個XML數據列被鎖住。由于本發明的節點鎖,只鎖住含有home類型電話節點的XML數據,提高了并發度。對比上面兩個例子可以看出,本發明提高了并發控制的效率。權利要求1.一種基于關系-XML雙模數據庫的XML多粒度鎖,其特征在于,它是基于關系-XML雙模數據庫,即能無縫處理關系模式與XML模式的數據庫,針對XML的多粒度鎖,包括節點鎖、層級鎖和子樹鎖,可以融合關系模式的并發控制信息;所述的節點鎖、層級鎖和子樹鎖每種粒度的鎖又分讀鎖和寫鎖兩種,并由此而形成鎖表。2.根據權利要求1所述的基于關系-XML雙模數據庫的XML多粒度鎖,其特征在于,所述關系模式的并發控制信息可以在表級,行級或者列級鎖定,如果關系模式的并發控制信息為空,則按照XML鎖信息進行并發控制;如XML鎖為寫鎖且關系模式為讀鎖,則降級XML鎖為讀鎖;如XML為讀鎖,則保留關系模式鎖信息,忽略XML鎖操。全文摘要本發明公開了一種基于關系-XML雙模數據庫的XML多粒度鎖,它是基于關系-XML雙模數據庫,即能無縫處理關系模式與XML模式的數據庫,針對XML的多粒度鎖,包括節點鎖、層級鎖和子樹鎖,可以融合關系模式的并發控制信息;所述的節點鎖、層級鎖和子樹鎖每種粒度的鎖又分讀鎖和寫鎖兩種,并由此而形成鎖表。本發明從基于關系-XML雙模數據庫出發,轉化XML處理的關系數據庫或XML數據庫,這兩種單模數據庫不同的。與XML數據庫的XML多粒度鎖相比,融合關系模式的并發控制信息的多粒度鎖,提高并發控制的效率。文檔編號G06F17/30GK102385600SQ20101027337公開日2012年3月21日申請日期2010年9月3日優先權日2010年9月3日發明者袁立言申請人:上海實方軟件有限公司