[發(fā)明專利]一種基于日志解析同步的事務合并執(zhí)行方法及裝置在審
| 申請?zhí)枺?/td> | 202010470229.7 | 申請日: | 2020-05-28 |
| 公開(公告)號: | CN111930693A | 公開(公告)日: | 2020-11-13 |
| 發(fā)明(設計)人: | 孫峰;付銓;黃海明;余院蘭 | 申請(專利權)人: | 武漢達夢數(shù)據(jù)庫有限公司 |
| 主分類號: | G06F16/17 | 分類號: | G06F16/17;G06F16/27;G06F9/46 |
| 代理公司: | 深圳市六加知識產(chǎn)權代理有限公司 44372 | 代理人: | 向彬 |
| 地址: | 430000 湖北省武漢市東湖新技術開*** | 國省代碼: | 湖北;42 |
| 權利要求書: | 查看更多 | 說明書: | 查看更多 |
| 摘要: | |||
| 搜索關鍵詞: | 一種 基于 日志 解析 同步 事務 合并 執(zhí)行 方法 裝置 | ||
本發(fā)明涉及計算機技術領域,尤其涉及一種基于日志解析同步的事務合并執(zhí)行方法及裝置,其中方法包括:按順序依次從待合并事務鏈表取出事務合并,當取出第i個事務時,利用已合并事務鏈表中的i?1個提交LSN作為分割界限,在操作容器中劃出i?1個操作區(qū)間;從第i個事務中取出操作,通過當前操作的LSN在操作容器中定位到相應區(qū)間,并在相應區(qū)間內(nèi)找到相同操作類型的位置,將當前操作插入;完成事務合并后,從操作容器中按順序提取操作執(zhí)行,相同的操作合并后批量執(zhí)行。本發(fā)明在合并時以先提交事務的提交LSN作為分割界限,將后提交事務的部分操作上移來找到相同的操作,在執(zhí)行的時候可以批量執(zhí)行,提高了事務之間操作的合并率,可有效提升同步性能。
【技術領域】
本發(fā)明涉及計算機技術領域,尤其涉及一種基于日志解析同步的事務合并執(zhí)行方法及裝置。
【背景技術】
傳統(tǒng)的基于數(shù)據(jù)庫自身的主備機制實現(xiàn)數(shù)據(jù)庫數(shù)據(jù)的實時復制,是進行數(shù)據(jù)容災備份、保障數(shù)據(jù)安全的重要解決方案。目前如ORACLE公司的DataGuard、達夢數(shù)據(jù)庫的DM7主備產(chǎn)品等都是實現(xiàn)這種解決方案的成熟商業(yè)化產(chǎn)品。數(shù)據(jù)庫主備機制下,一般備機作為備份節(jié)點,只提供只讀訪問,可以在備機上做一些報表分析、數(shù)據(jù)挖掘等只讀訪問的應用,而不能像主機一樣提供讀寫訪問。另外,數(shù)據(jù)庫主備機制要求備機數(shù)據(jù)庫系統(tǒng)和主機一致,對于異構數(shù)據(jù)庫系統(tǒng)環(huán)境,則不能利用數(shù)據(jù)庫自身的主備機制實現(xiàn)有效的數(shù)據(jù)實時復制。
針對數(shù)據(jù)庫主備機制實現(xiàn)數(shù)據(jù)復制的不足,目前基于軟件的異構數(shù)據(jù)庫復制技術應用廣泛。這種技術在源端捕獲出數(shù)據(jù)庫的增量數(shù)據(jù),然后發(fā)送到目標端,在目標端通過通用的數(shù)據(jù)庫訪問接口將增量數(shù)據(jù)應用到目標數(shù)據(jù)庫,實現(xiàn)數(shù)據(jù)復制。這種技術因為使用到通用數(shù)據(jù)庫接口,因此支持異構數(shù)據(jù)庫系統(tǒng)復制,支持異構操作系統(tǒng)環(huán)境,并且目標端備機數(shù)據(jù)庫系統(tǒng)可讀寫,是一種“雙活”系統(tǒng)。
目前,有多種技術方式實現(xiàn)獲取源端數(shù)據(jù)庫的增量數(shù)據(jù),其中,基于數(shù)據(jù)庫日志捕獲分析的數(shù)據(jù)實時同步技術,因其對源數(shù)據(jù)庫侵入性小、捕獲分析性能高,得到較大發(fā)展及研究。這種技術通過分析源數(shù)據(jù)庫歸檔或聯(lián)機日志,捕獲出數(shù)據(jù)庫的INSERT、UPDATE、DELETE操作日志,然后發(fā)送到目標端;目標端對日志信息進行逆向生成,恢復成SQL語句方式,然后使用數(shù)據(jù)庫通用接口應用到目標數(shù)據(jù)庫,實現(xiàn)數(shù)據(jù)復制。因此,在數(shù)據(jù)庫實時復制過程中,目標端的執(zhí)行效率是影響數(shù)據(jù)同步性能的重要因素。
通常,源端數(shù)據(jù)庫上并發(fā)執(zhí)行的各個事務中可能存在大量小事務,數(shù)據(jù)庫系統(tǒng)都會根據(jù)并發(fā)控制機制去執(zhí)行,把相沖突的事務操作互斥執(zhí)行,并且在日志文件中順序的記錄下各個事務的操作日志;數(shù)據(jù)同步時應該針對小事務采用事務合并執(zhí)行的策略,把源端多次執(zhí)行的操作合并以后批量執(zhí)行,以便提升同步性能。然而,現(xiàn)有的數(shù)據(jù)同步系統(tǒng)往往是以事務為單位進行同步的,在確定事務提交以后才會被分配到執(zhí)行線程執(zhí)行;在這種機制下,事務合并的方法往往采取事務追加的方式進行合并,這種合并策略雖然可以解決部分的應用場景下同步效率的問題,但是在某些特殊的應用場景下事務合并以后事務之間操作合并率并不高,目標端的執(zhí)行效率仍較低,無法有效提升同步性能。因此,在如何保證數(shù)據(jù)復制一致性的前提下來合并事務和事務之間的操作,提高目標端數(shù)據(jù)復制的執(zhí)行效率,就成為業(yè)界亟待解決的重要技術問題。
鑒于此,克服上述現(xiàn)有技術所存在的缺陷是本技術領域亟待解決的問題。
【發(fā)明內(nèi)容】
本發(fā)明需要解決的技術問題是:
現(xiàn)有的數(shù)據(jù)同步系統(tǒng)往往是以事務為單位進行同步,采取簡單的疊加進行事務合并,但事務合并以后事務之間的操作合并率并不高,目標端的執(zhí)行效率仍較低,無法有效提升同步性能;因此,如何在保證數(shù)據(jù)復制一致性的前提下提高事務合并以后事務之間操作的合并率,提高目標端數(shù)據(jù)復制的執(zhí)行效率,成為業(yè)界亟待解決的重要技術問題。
本發(fā)明通過如下技術方案解決上述技術問題:
第一方面,本發(fā)明提供了一種基于日志解析同步的事務合并執(zhí)行方法,包括:
該專利技術資料僅供研究查看技術是否侵權等信息,商用須獲得專利權人授權。該專利全部權利屬于武漢達夢數(shù)據(jù)庫有限公司,未經(jīng)武漢達夢數(shù)據(jù)庫有限公司許可,擅自商用是侵權行為。如果您想購買此專利、獲得商業(yè)授權和技術合作,請聯(lián)系【客服】
本文鏈接:http://www.szxzyx.cn/pat/books/202010470229.7/2.html,轉(zhuǎn)載請聲明來源鉆瓜專利網(wǎng)。





