[發(fā)明專利]一種基于事務(wù)合并的并行執(zhí)行方法及設(shè)備在審
| 申請?zhí)枺?/td> | 202111501971.0 | 申請日: | 2021-12-09 |
| 公開(公告)號: | CN114296885A | 公開(公告)日: | 2022-04-08 |
| 發(fā)明(設(shè)計)人: | 孫峰;余院蘭;彭青松;劉啟春 | 申請(專利權(quán))人: | 武漢達(dá)夢數(shù)據(jù)庫股份有限公司 |
| 主分類號: | G06F9/46 | 分類號: | G06F9/46;G06F9/445;G06F16/22;G06F16/242;G06F16/27 |
| 代理公司: | 深圳市六加知識產(chǎn)權(quán)代理有限公司 44372 | 代理人: | 向彬 |
| 地址: | 430000 湖北省武漢市東湖新技術(shù)開*** | 國省代碼: | 湖北;42 |
| 權(quán)利要求書: | 查看更多 | 說明書: | 查看更多 |
| 摘要: | |||
| 搜索關(guān)鍵詞: | 一種 基于 事務(wù) 合并 并行 執(zhí)行 方法 設(shè)備 | ||
1.一種基于事務(wù)合并的并行執(zhí)行方法,其特征在于,包括:
表操作信息建立步驟:獲取當(dāng)前操作涉及的表名,判斷當(dāng)前事務(wù)中是否已經(jīng)存在該表的表操作信息,若不存在,則把當(dāng)前操作的表名和當(dāng)前操作結(jié)合再與當(dāng)前操作的LSN進(jìn)行關(guān)聯(lián)后形成表操作信息存入當(dāng)前事務(wù);
將單事務(wù)合并為多事務(wù)且設(shè)置多事務(wù)的提交LSN、并行LSN以及起始LSN,并將多事務(wù)注冊到執(zhí)行線程鏈表;
單事務(wù)處理步驟:執(zhí)行線程提取多事務(wù)中的下一個單事務(wù)開始執(zhí)行;
通過對提交操作的判斷、表操作信息的沖突檢測、并行LSN的判斷以及起始LSN的判斷來進(jìn)入相對應(yīng)的步驟;
線程提交步驟:判斷當(dāng)前單事務(wù)是否為最后一個單事務(wù),若是則執(zhí)行線程提交操作;若不是則重新進(jìn)入單事務(wù)處理步驟。
2.根據(jù)權(quán)利要求1所述的基于事務(wù)合并的并行執(zhí)行方法,其特征在于,還包括部署準(zhǔn)備步驟:
在源端數(shù)據(jù)庫以及目標(biāo)端數(shù)據(jù)庫均部署數(shù)據(jù)同步服務(wù);
目標(biāo)端數(shù)據(jù)同步服務(wù)啟動后,初始化待執(zhí)行鏈表、執(zhí)行線程、喚醒鏈表以及執(zhí)行線程鏈表;
目標(biāo)端數(shù)據(jù)同步服務(wù)接收到源端操作后,按操作的事務(wù)ID進(jìn)行分類管理,若當(dāng)前操作是提交操作,則將該事務(wù)按提交操作的LSN大小順序存入待執(zhí)行鏈表;若不是提交操作,則進(jìn)入表操作信息建立步驟。
3.根據(jù)權(quán)利要求2所述的基于事務(wù)合并的并行執(zhí)行方法,其特征在于,所述將單事務(wù)合并為多事務(wù)且設(shè)置多事務(wù)的提交LSN、并行LSN以及起始LSN,并將多事務(wù)注冊到執(zhí)行線程鏈表具體包括:
執(zhí)行線程從待執(zhí)行鏈表中按事務(wù)提交LSN的順序摘取N個單事務(wù)合并成一個多事務(wù),并將最后一個單事務(wù)的提交LSN設(shè)置為多事務(wù)的提交LSN,然后根據(jù)多事務(wù)的提交LSN在執(zhí)行線程鏈表中進(jìn)行注冊;
在合并單事務(wù)時,同時合并單事務(wù)中涉及的表操作信息,若多個單事務(wù)存在相同的表操作,則以提交LSN最小的單事務(wù)的表操作信息為準(zhǔn),并將該提交LSN設(shè)置為該表操作信息的并行LSN;
將多事務(wù)中涉及每個表的第一個操作的LSN設(shè)為起始LSN。
4.根據(jù)權(quán)利要求3所述的基于事務(wù)合并的并行執(zhí)行方法,其特征在于,所述通過對提交操作的判斷、表操作信息的沖突檢測、并行LSN的判斷以及起始LSN的判斷來進(jìn)入相對應(yīng)的步驟具體包括:
提交操作判斷步驟:根據(jù)當(dāng)前單事務(wù)的下一個操作的操作類型來選擇進(jìn)入沖突檢測步驟或線程提交步驟;
沖突檢測步驟:根據(jù)是否存在上一個執(zhí)行線程以及在上一個執(zhí)行線程中是否存在對應(yīng)的表操作信息來進(jìn)入提交操作判斷步驟或并行LSN判斷步驟;
并行LSN判斷步驟:根據(jù)當(dāng)前操作的LSN以及表操作信息中的并行LSN的大小來選擇進(jìn)入沖突檢測步驟或起始LSN判斷步驟;
起始LSN判斷步驟:根據(jù)當(dāng)前操作的LSN以及表操作信息中的起始LSN的大小來選擇進(jìn)入沖突檢測步驟或等待喚醒。
5.根據(jù)權(quán)利要求4所述的基于事務(wù)合并的并行執(zhí)行方法,其特征在于,所述提交操作判斷步驟具體包括:
提取當(dāng)前單事務(wù)中下一個操作,判斷操作是否為提交操作;
若是提交操作則進(jìn)入線程提交步驟,若不是則進(jìn)入沖突檢測步驟。
6.根據(jù)權(quán)利要求5所述的基于事務(wù)合并的并行執(zhí)行方法,其特征在于,所述沖突檢測步驟具體包括:
在執(zhí)行線程鏈表中提取上一個執(zhí)行線程,若沒有上一個執(zhí)行線程則執(zhí)行當(dāng)前操作,然后進(jìn)入提交操作判斷步驟;若有,則進(jìn)行下一步?jīng)_突檢測;
通過當(dāng)前操作的表名和操作類型在被檢測執(zhí)行線程中查找對應(yīng)的表操作信息,若沒找到,則重新進(jìn)入沖突檢測步驟;若找到,則進(jìn)入并行LSN判斷步驟。
該專利技術(shù)資料僅供研究查看技術(shù)是否侵權(quán)等信息,商用須獲得專利權(quán)人授權(quán)。該專利全部權(quán)利屬于武漢達(dá)夢數(shù)據(jù)庫股份有限公司,未經(jīng)武漢達(dá)夢數(shù)據(jù)庫股份有限公司許可,擅自商用是侵權(quán)行為。如果您想購買此專利、獲得商業(yè)授權(quán)和技術(shù)合作,請聯(lián)系【客服】
本文鏈接:http://www.szxzyx.cn/pat/books/202111501971.0/1.html,轉(zhuǎn)載請聲明來源鉆瓜專利網(wǎng)。
- 一種事務(wù)處理的方法和裝置
- 分布式事務(wù)處理方法與系統(tǒng)
- 一種融合原生事務(wù)和邏輯事務(wù)的方法
- 用于聚結(jié)內(nèi)存事務(wù)的方法和系統(tǒng)
- 事務(wù)處理方法、事務(wù)參與節(jié)點及事務(wù)協(xié)調(diào)節(jié)點
- 跨進(jìn)程分布式事務(wù)控制方法及相關(guān)系統(tǒng)
- 一種分布式事務(wù)管理方法及系統(tǒng)
- 一種分布式事務(wù)處理的智能監(jiān)控方法及服務(wù)器
- 分布式事務(wù)處理方法及裝置
- 讀寫事務(wù)控制方法、系統(tǒng)、終端設(shè)備及存儲介質(zhì)





