System.ArgumentOutOfRangeException: 索引和長度必須引用該字符串內的位置。 參數名: length 在 System.String.Substring(Int32 startIndex, Int32 length) 在 zhuanliShow.Bind() 亚洲精品无码人妻无码,亚洲V无码一区二区三区四区观看 亚洲爆乳精品无码一区二区三区 亚洲爆乳无码一区二区三区 ,国产热の有码热の无码视频
  • 
    <ul id="o6k0g"></ul>
    <ul id="o6k0g"></ul>

    基于回退回滾影響來設定操作依懶的方法、裝置及系統制造方法及圖紙

    技術編號:44390722 閱讀:2 留言:0更新日期:2025-02-25 10:06
    本發明專利技術涉及一種基于回退回滾影響來設定操作依懶的方法、裝置及系統。其方法部分主要包括:目標端數據同步服務啟動后初始化一個哈希表R,并創建兩個文件用來存儲哈希表R中的KEY;目標端數據同步服務接收到源端的DML操作后,提取操作中表ID以及其主鍵或是索引或是自定義選擇列作為KEY,再提取該操作中的事務ID作為TRXID,將KEY和TRXID組合成一條記錄保存到當前文件中,若該記錄為當前文件的第一條記錄,則將該操作對應的日志LSN作為當前文件的起始LSN;根據KEY、TRXID以及起始LSN確定操作的沖突TRXID以及沖突LSN;接收到回滾或部分回滾操作時,將被回滾掉的操作中保存的沖突TRXID寫回哈希表R中。本發明專利技術可以有效增加操作執行的并發度,達到提升同步性能的目的。

    【技術實現步驟摘要】

    本專利技術涉及數據庫,特別是涉及一種基于回退回滾影響來設定操作依懶的方法、裝置及系統


    技術介紹

    1、在基于日志解析架構的數據庫實時同步系統(支持異構)中,源端數據同步服務負責捕獲源端數據庫的操作日志,并解析日志還原得到相應的數據庫操作,然后發送到目標端數據同步服務,目標端數據同步服務負責把這些操作在目標端數據庫中執行,從而完成數據同步的過程。

    2、目標端數據同步服務在目標端數據庫上同步操作時,往往需要按照事務的提交順序來執行。因為在上個事務未同步完成時,下一個事務的操作在未明確和前面事務是否存在沖突的情況下,就不能和之前的事務操作并發的執行入庫,只能等待當前操作前面所有的事務提交完成以后才能開始執行,這極大的影響了事務操作入庫的并發度。目前采用的有效方法為通過判斷操作所在的日志lsn和之前提交的事務提交操作的lsn大小來決定是否能并行執行,如果當前執行事務操作的lsn小于當前正在執行其它某個事務的提交操作lsn,那這個操作就可以和該事務并發的執行,這種以事務提交順序來并行執行的方式雖然對性能有提升,但是檢測沖突的粒度較大,不夠細膩,導致并行度不高,性能提升幅度較小。

    3、有鑒于此,如何克服現有技術所存在的缺陷,如何提高目標端數據同步服務并行執行的力度從而提升數據同步的性能,就成為業界亟待解決的重要技術問題。


    技術實現思路

    1、針對現有技術中的缺陷或改進需求:如何提高目標端數據同步服務并行執行的力度從而提升數據同步的性能。本專利技術認為若能確定事務操作之間的依賴關系,在同步操作時能明確需要等待哪些事務,就可以最大化的提升同步的并行度。基于此,本專利技術提供一種基于回退回滾影響來設定操作依懶的方法、裝置及系統,該方法的目標端數據同步服務在接收同步事務操作時,是按源端數據庫日志的生成順序來接收的,那么接收到的每個操作的順序便是它們檢測是否存在沖突的基礎,本專利技術實施例就是基于操作接收的順序,提取接收到的每個操作上的主鍵或是索引或是自定義選擇列作為key,尋找這個key在設定的范圍之內是否和之前接收到的其它事務的操作存在相同的key,如果是,這個操作的執行需要等待它沖突的事務提交以后方能開始執行;否則就可以和先于自己提交的事務一起并發執行,最大限度的提高事務執行的并行度,從而有效的提升同步的性能。

    2、本專利技術采用如下技術方案:

    3、第一方面,本專利技術提供了一種基于回退回滾影響來設定操作依懶的方法,包括:

    4、目標端數據同步服務啟動后初始化一個哈希表r,并創建兩個文件用來存儲哈希表r中的key;

    5、目標端數據同步服務接收到源端的dml操作后,提取操作中表id以及其主鍵或是索引或是自定義選擇列作為key,再提取該操作中的事務id作為trxid,將key和trxid組合成一條記錄保存到當前文件中,若該記錄為當前文件的第一條記錄,則將該操作對應的日志lsn作為當前文件的起始lsn;

    6、根據key、trxid以及起始lsn確定操作的沖突trxid以及沖突lsn;

    7、目標端數據同步服務接收到回滾或部分回滾操作時,將被回滾掉的操作中保存的沖突trxid寫回哈希表r中。

    8、在一些實施例中,所述目標端數據同步服務啟動后初始化一個哈希表r,并創建兩個文件用來存儲哈希表r中的key具體包括:所述目標端數據同步服務啟動后初始化一個哈希表r,并初始化哈希表r的哈希項中的記錄地址為空,用來存儲和定位接收到的操作;所述目標端數據同步服務創建兩個文件用來存儲哈希表r中的key,每個文件的文件名按創建的順序遞增命名,且將這兩個文件添加到緩存文件鏈表中。

    9、在一些實施例中,所述根據key、trxid以及起始lsn確定操作的沖突trxid以及沖突lsn具體包括:

    10、利用當前操作的key構造檢測記錄x,將檢測記錄x合并到哈希表r中;

    11、在合并的過程中進行沖突檢測判斷,若有沖突的key,則返回沖突key對應的trxid值;否則返回0作為對應的trxid,表示無沖突;

    12、將沖突檢測判斷得到的trxid設為沖突trxid,將當前哈希表r對應的緩存文件鏈表中第一個文件的起始lsn寫入當前操作中,設為沖突lsn。

    13、在一些實施例中,所述沖突檢測判斷具體包括:

    14、對當前檢測記錄x的key求哈希值,通過哈希值定位到哈希項;判斷哈希項中記錄地址是否為空,若是,將哈希項中記錄地址設置到當前檢測記錄x的下一個地址空間,用該檢測記錄x的地址回填到哈希項中,用0作為沖突trxid進行返回,表示未檢測到沖突;若不是,進行下一步沖突檢測判斷;

    15、判斷哈希項中記錄的地址中的文件id是否小于緩存文件鏈表中第一個文件的id值,若是,表明這個記錄y已經超出了檢查范圍,將哈希項中記錄地址設置到當前檢測記錄x的下一個地址空間,用該檢測記錄x的地址回填到哈希項中,用0作為沖突trxid進行返回,表示未檢測到沖突;若不是,進行下一步沖突檢測判斷;

    16、根據哈希項中記錄的地址從文件中加載出其對應的記錄y,判斷記錄y的key是否和當前檢測記錄x的key相等且記錄y的trxid和當前操作的trxid不相等,若是,則表示操作存在沖突,將記錄y從該哈希項的記錄鏈表中移除以縮短哈希項中鏈表長度,將哈希項中記錄地址設置到當前檢測記錄x的下一個地址空間,將當前檢測記錄x的地址回填到哈希項中,并用記錄y中存儲的trxid作為沖突trxid進行返回;若不是,進行下一步沖突檢測判斷;

    17、依次遍歷記錄y的下一個記錄并進行沖突檢測判斷,直到記錄鏈表結束。

    18、在一些實施例中,所述緩存文件鏈表包括兩個文件,當第一個文件寫滿時就切換到第二個文件,當第二個文件寫滿時,先淘汰掉緩存文件鏈表中的第一個文件,然后用文件id遞增后創建一個新的文件加入到緩存文件鏈表中。

    19、在一些實施例中,所述目標端數據同步服務接收到回滾或部分回滾操作時,將被回滾掉的操作中保存的沖突trxid寫回哈希表r中具體包括:

    20、通過回滾或部分回滾操作的事務id定位到需要回滾操作的事務,提取回滾操作中事務涉及的所有行或部分回滾操作中需要回滾的行數;

    21、從事務操作鏈表的尾部向前提取回滾的操作,提取操作中保存的key值、沖突trxid和沖突lsn;

    22、根據操作的沖突lsn和第一個文件的起始lsn進行對比,若小于起始lsn,則終止該回滾操作對哈希表r的回寫;否則,根據操作的key在哈希表r中查找相同key的沖突操作記錄,若未找到,終止該回滾操作對哈希表r的回寫;否則,將沖突trxid回寫到哈希表r的記錄中,繼續提取上一個待回滾的操作進行相同的回寫,直到回滾到指定的行數。

    23、在一些實施例中,當系統故障重啟后,按緩存的文件id的大小,將文件初始化到目標端數據同步服務的緩存文件鏈表中。

    24、第二方面,本專利技術還提供了一種基于回退回滾影響來本文檔來自技高網...

    【技術保護點】

    1.一種基于回退回滾影響來設定操作依懶的方法,其特征在于,包括:

    2.根據權利要求1所述的基于回退回滾影響來設定操作依懶的方法,其特征在于,所述目標端數據同步服務啟動后初始化一個哈希表R,并創建兩個文件用來存儲哈希表R中的KEY具體包括:所述目標端數據同步服務啟動后初始化一個哈希表R,并初始化哈希表R的哈希項中的記錄地址為空,用來存儲和定位接收到的操作;所述目標端數據同步服務創建兩個文件用來存儲哈希表R中的KEY,每個文件的文件名按創建的順序遞增命名,且將這兩個文件添加到緩存文件鏈表中。

    3.根據權利要求1所述的基于回退回滾影響來設定操作依懶的方法,其特征在于,所述根據KEY、TRXID以及起始LSN確定操作的沖突TRXID以及沖突LSN具體包括:

    4.根據權利要求3所述的基于回退回滾影響來設定操作依懶的方法,其特征在于,所述沖突檢測判斷具體包括:

    5.根據權利要求2所述的基于回退回滾影響來設定操作依懶的方法,其特征在于,所述緩存文件鏈表包括兩個文件,當第一個文件寫滿時就切換到第二個文件,當第二個文件寫滿時,先淘汰掉緩存文件鏈表中的第一個文件,然后用文件ID遞增后創建一個新的文件加入到緩存文件鏈表中。

    6.根據權利要求1-5任一所述的基于回退回滾影響來設定操作依懶的方法,其特征在于,所述目標端數據同步服務接收到回滾或部分回滾操作時,將被回滾掉的操作中保存的沖突TRXID寫回哈希表R中具體包括:

    7.根據權利要求1-5任一所述的基于回退回滾影響來設定操作依懶的方法,其特征在于,當系統故障重啟后,按緩存的文件ID的大小,將文件初始化到目標端數據同步服務的緩存文件鏈表中。

    8.一種基于回退回滾影響來設定操作依懶的裝置,其特征在于,所述裝置包括:至少一個處理器;以及,與所述至少一個處理器通信連接的存儲器;其中,所述存儲器存儲有可被所述至少一個處理器執行的指令,所述指令被所述處理器執行,用于執行權利要求1-7任一所述的基于回退回滾影響來設定操作依懶的方法。

    9.一種基于回退回滾影響來設定操作依懶的系統,應用如權利要求1-7任一所述的基于回退回滾影響來設定操作依懶的方法,其特征在于,所述系統包括哈希表及文件創建模塊、KEY獲取模塊、沖突TRXID及沖突LSN獲取模塊以及回滾操作模塊,其中:

    10.一種非易失性計算機存儲介質,其特征在于,所述計算機存儲介質存儲有計算機可執行指令,該計算機可執行指令被一個或多個處理器執行,用于完成如權利要求1-7任一所述的基于回退回滾影響來設定操作依懶的方法。

    ...

    【技術特征摘要】

    1.一種基于回退回滾影響來設定操作依懶的方法,其特征在于,包括:

    2.根據權利要求1所述的基于回退回滾影響來設定操作依懶的方法,其特征在于,所述目標端數據同步服務啟動后初始化一個哈希表r,并創建兩個文件用來存儲哈希表r中的key具體包括:所述目標端數據同步服務啟動后初始化一個哈希表r,并初始化哈希表r的哈希項中的記錄地址為空,用來存儲和定位接收到的操作;所述目標端數據同步服務創建兩個文件用來存儲哈希表r中的key,每個文件的文件名按創建的順序遞增命名,且將這兩個文件添加到緩存文件鏈表中。

    3.根據權利要求1所述的基于回退回滾影響來設定操作依懶的方法,其特征在于,所述根據key、trxid以及起始lsn確定操作的沖突trxid以及沖突lsn具體包括:

    4.根據權利要求3所述的基于回退回滾影響來設定操作依懶的方法,其特征在于,所述沖突檢測判斷具體包括:

    5.根據權利要求2所述的基于回退回滾影響來設定操作依懶的方法,其特征在于,所述緩存文件鏈表包括兩個文件,當第一個文件寫滿時就切換到第二個文件,當第二個文件寫滿時,先淘汰掉緩存文件鏈表中的第一個文件,然后用文件id遞增后創建一個新的文件加入到緩存文件鏈表中。

    6.根據權利要求1-5任一所述的基...

    【專利技術屬性】
    技術研發人員:孫峰陳江輝彭青松余院蘭
    申請(專利權)人:武漢達夢數據庫股份有限公司
    類型:發明
    國別省市:

    網友詢問留言 已有0條評論
    • 還沒有人留言評論。發表了對其他瀏覽者有用的留言會獲得科技券。

    1
    主站蜘蛛池模板: 亚洲国产精品无码观看久久| 亚洲AV无码乱码在线观看牲色| 国产精品无码日韩欧| 国产午夜无码专区喷水| 无码专区中文字幕无码| 无码任你躁久久久久久老妇| aⅴ一区二区三区无卡无码| 日日摸日日碰夜夜爽无码| 亚洲日韩av无码中文| 亚洲Av无码乱码在线播放| 亚洲爆乳无码精品AAA片蜜桃| 免费一区二区无码视频在线播放| 国产亚洲?V无码?V男人的天堂 | 无码日韩人妻精品久久| 亚洲中文字幕无码一久久区| 精品久久久久久无码中文野结衣 | 免费无码专区毛片高潮喷水| 亚洲av午夜精品无码专区| 人妻中文无码久热丝袜| 精品无码成人网站久久久久久| 色欲A∨无码蜜臀AV免费播| 亚洲Av无码乱码在线znlu| 无码国产精品久久一区免费| 无码中文字幕av免费放dvd| 人妻丰满熟妇aⅴ无码| 人妻无码一区二区三区| 免费无遮挡无码视频网站| 中文字幕无码播放免费| 无码精品国产一区二区三区免费 | 日木av无码专区亚洲av毛片| 中文国产成人精品久久亚洲精品AⅤ无码精品 | 亚洲不卡无码av中文字幕| 无码一区二区三区中文字幕| 永久免费AV无码国产网站| 精品人妻无码区二区三区| 人妻丰满熟妇岳AV无码区HD| 亚洲AV无码国产在丝袜线观看| 中文字幕精品无码一区二区| 亚洲乱亚洲乱少妇无码| 久久久91人妻无码精品蜜桃HD| yy111111少妇无码影院|