[發(fā)明專利]一種基于交替行鎖和列鎖的數(shù)據(jù)鎖定方法有效
| 申請?zhí)枺?/td> | 201780089716.5 | 申請日: | 2017-04-21 |
| 公開(公告)號: | CN110537174B | 公開(公告)日: | 2022-09-09 |
| 發(fā)明(設(shè)計(jì))人: | 格利揚(yáng)·西瓦庫瑪;安東尼·沃爾斯基;馬赫什·庫馬爾·巴赫熱 | 申請(專利權(quán))人: | 華為技術(shù)有限公司 |
| 主分類號: | G06F16/21 | 分類號: | G06F16/21;G06F16/22 |
| 代理公司: | 廣州三環(huán)專利商標(biāo)代理有限公司 44202 | 代理人: | 熊永強(qiáng);李稷芳 |
| 地址: | 518129 廣東*** | 國省代碼: | 廣東;44 |
| 權(quán)利要求書: | 查看更多 | 說明書: | 查看更多 |
| 摘要: | |||
| 搜索關(guān)鍵詞: | 一種 基于 交替 數(shù)據(jù) 鎖定 方法 | ||
一種用于對數(shù)據(jù)庫執(zhí)行操作的設(shè)備,所述設(shè)備包括:C隊(duì)列,用于存儲多個面向列的操作;R隊(duì)列,用于存儲多個面向行的操作;調(diào)度器,用于根據(jù)所述操作是否面向行,將所述操作分配給所述C隊(duì)列或所述R隊(duì)列;定時(shí)單元,用于在C型時(shí)隙和R型時(shí)隙之間交替;執(zhí)行單元,用于從C型時(shí)隙的所述C隊(duì)列執(zhí)行操作和/或從R型時(shí)隙的所述R隊(duì)列執(zhí)行操作。
技術(shù)領(lǐng)域
本發(fā)明涉及一種對數(shù)據(jù)庫執(zhí)行操作的設(shè)備和一種對數(shù)據(jù)庫執(zhí)行操作的方法。本發(fā)明還涉及一種存儲程序代碼的計(jì)算機(jī)可讀存儲介質(zhì),所述程序代碼包括用于執(zhí)行該方法的指令。
背景技術(shù)
在具有列存儲的數(shù)據(jù)庫中,列中相鄰的值相鄰存儲。相反,在具有行存儲的數(shù)據(jù)庫中,行值相鄰存儲。在分析處理中,列存儲優(yōu)于行存儲,因?yàn)樵S多查詢操作面向列。在列存儲中,我們可以將寫入視為面向列(寫入的列值很少)或面向行(寫入的列值很多,如果不是全部)。
數(shù)據(jù)庫系統(tǒng)中的傳統(tǒng)鎖定機(jī)制基于一維鎖定,涉及行或行組(頁面)上的鎖。這對于面向列的系統(tǒng)是次優(yōu)的,因?yàn)閱涡墟i可以阻止所有并發(fā)分析查詢。
另一方面,通過列鎖,我們可以允許許多并發(fā)列寫入和面向列的查詢并行運(yùn)行,而不會產(chǎn)生沖突相依性。
典型的數(shù)據(jù)庫管理系統(tǒng)使用一維鎖定:
a、聯(lián)機(jī)事務(wù)處理(online transaction processing,簡稱OLTP)系統(tǒng)使用面向行的鎖定;
b、面向列的混合使用系統(tǒng)使用面向行或?qū)ο蟮逆i定;
c、分析系統(tǒng)通過為分析處理創(chuàng)建只讀快照,避免將所有內(nèi)容鎖定在一起。
現(xiàn)有技術(shù)中的一個問題是:無論所述數(shù)據(jù)庫系統(tǒng)實(shí)現(xiàn)方式中選擇何種類型,部分所述處理會受到有限并發(fā)性的影響。
發(fā)明內(nèi)容
本發(fā)明的目的在于提供一種用于對數(shù)據(jù)庫執(zhí)行操作的設(shè)備和一種用于對數(shù)據(jù)庫執(zhí)行操作的方法,其中所述設(shè)備和所述方法克服了現(xiàn)有技術(shù)的上述一個或多個問題。
本發(fā)明第一方面提供了一種用于對數(shù)據(jù)庫執(zhí)行操作的設(shè)備,所述設(shè)備包括:
-C隊(duì)列,用于存儲多個面向列的操作;
-R隊(duì)列,用于存儲多個面向行的操作;
-調(diào)度器,用于根據(jù)所述操作是否面向行,將所述操作分配給所述C隊(duì)列或所述R隊(duì)列;
-定時(shí)單元,用于在C型時(shí)隙和R型時(shí)隙之間交替;
-執(zhí)行單元,用于在C型時(shí)隙內(nèi)從所述C隊(duì)列執(zhí)行操作和/或在R型時(shí)隙內(nèi)從所述R隊(duì)列執(zhí)行操作。
所述第一方面的所述設(shè)備具有可以執(zhí)行面向行和面向列的操作的優(yōu)點(diǎn),但鎖被擊中從而導(dǎo)致延遲的可能性大大降低。這是因?yàn)椋c干擾其它列鎖相比,列鎖干擾行鎖的可能性更高。因此,在單獨(dú)時(shí)隙內(nèi)執(zhí)行面向列的操作(需要列鎖)和面向行的操作(需要行鎖)是有利的。因此,所述第一方面的所述設(shè)備可以顯著增加所述數(shù)據(jù)庫的吞吐量。
例如,所述執(zhí)行單元可以在C型時(shí)隙內(nèi)從所述C隊(duì)列并行執(zhí)行多個(面向列的)操作,在R型時(shí)隙內(nèi)從所述R隊(duì)列并行執(zhí)行多個(面向行的)操作。通常,對于每個操作,所述執(zhí)行單元將在執(zhí)行所述操作之前獲取鎖。例如,當(dāng)從所述C隊(duì)列執(zhí)行操作時(shí),所述執(zhí)行單元將首先獲取相應(yīng)的列鎖,然后從所述C隊(duì)列執(zhí)行所述操作,最后釋放所述列鎖。
當(dāng)所述設(shè)備使用多核處理器時(shí),所述執(zhí)行單元可以在多核處理器的不同核中執(zhí)行并行處理計(jì)算資源中的并發(fā)操作(在每個時(shí)隙中)。這也稱為物理并行性。在一些實(shí)施例中,所述執(zhí)行單元還可以用于使用來自多核處理器的不同處理單元來從所述C隊(duì)列或所述R隊(duì)列處理操作。
然而,即使在單核處理器上也能實(shí)現(xiàn)性能增益,因?yàn)閳?zhí)行并行性可以基于所述單核處理器的計(jì)算線程(邏輯并行性)。
該專利技術(shù)資料僅供研究查看技術(shù)是否侵權(quán)等信息,商用須獲得專利權(quán)人授權(quán)。該專利全部權(quán)利屬于華為技術(shù)有限公司,未經(jīng)華為技術(shù)有限公司許可,擅自商用是侵權(quán)行為。如果您想購買此專利、獲得商業(yè)授權(quán)和技術(shù)合作,請聯(lián)系【客服】
本文鏈接:http://www.szxzyx.cn/pat/books/201780089716.5/2.html,轉(zhuǎn)載請聲明來源鉆瓜專利網(wǎng)。
- 數(shù)據(jù)顯示系統(tǒng)、數(shù)據(jù)中繼設(shè)備、數(shù)據(jù)中繼方法、數(shù)據(jù)系統(tǒng)、接收設(shè)備和數(shù)據(jù)讀取方法
- 數(shù)據(jù)記錄方法、數(shù)據(jù)記錄裝置、數(shù)據(jù)記錄媒體、數(shù)據(jù)重播方法和數(shù)據(jù)重播裝置
- 數(shù)據(jù)發(fā)送方法、數(shù)據(jù)發(fā)送系統(tǒng)、數(shù)據(jù)發(fā)送裝置以及數(shù)據(jù)結(jié)構(gòu)
- 數(shù)據(jù)顯示系統(tǒng)、數(shù)據(jù)中繼設(shè)備、數(shù)據(jù)中繼方法及數(shù)據(jù)系統(tǒng)
- 數(shù)據(jù)嵌入裝置、數(shù)據(jù)嵌入方法、數(shù)據(jù)提取裝置及數(shù)據(jù)提取方法
- 數(shù)據(jù)管理裝置、數(shù)據(jù)編輯裝置、數(shù)據(jù)閱覽裝置、數(shù)據(jù)管理方法、數(shù)據(jù)編輯方法以及數(shù)據(jù)閱覽方法
- 數(shù)據(jù)發(fā)送和數(shù)據(jù)接收設(shè)備、數(shù)據(jù)發(fā)送和數(shù)據(jù)接收方法
- 數(shù)據(jù)發(fā)送裝置、數(shù)據(jù)接收裝置、數(shù)據(jù)收發(fā)系統(tǒng)、數(shù)據(jù)發(fā)送方法、數(shù)據(jù)接收方法和數(shù)據(jù)收發(fā)方法
- 數(shù)據(jù)發(fā)送方法、數(shù)據(jù)再現(xiàn)方法、數(shù)據(jù)發(fā)送裝置及數(shù)據(jù)再現(xiàn)裝置
- 數(shù)據(jù)發(fā)送方法、數(shù)據(jù)再現(xiàn)方法、數(shù)據(jù)發(fā)送裝置及數(shù)據(jù)再現(xiàn)裝置





