中文字幕无码日韩视频无码三区

主從數據庫間數據同步延時檢測的方法

文檔序號:9826197閱讀:1725來源:國知局
主從數據庫間數據同步延時檢測的方法
【技術領域】
[0001]本發明涉及延時檢測的方法,更具體地,涉及主從數據庫間數據同步延時檢測的方法。
【背景技術】
[0002]目前,隨著計算機和網絡應用的日益廣泛以及不同領域的業務種類的日益豐富,實時并準確地確定主從數據庫之間的數據同步延時變得越來越重要。
[0003]在現有的技術方案中,典型地以如下方式計算主從數據庫之間的數據同步延時:主數據庫周期性地將主數據庫日志(其記錄已在主數據庫上實施的每個操作)中新產生的日志傳送到從數據庫,從數據庫隨之基于所接收到的新產生的日志更新從數據庫日志,即根據更新的日志實施與已在主數據庫上實施的每個操作相同的操作以實現數據同步,并將從數據庫日志更新完成時間與其更新部分所指示的數據庫操作執行完成時間之間的時間差T2計算為主從數據庫間數據同步延時。
[0004]然而,上述現有的技術方案存在如下問題:(1)由于計算出的數據同步延時沒有包含“將主數據庫日志中新產生的日志傳送到從數據庫”的操作所用的時間Tl (即主從數據庫之間傳送相關日志所導致的時間延遲),故計算出的數據同步延時T2總是比實際時間延遲(Tl + T2)小,而且當主數據庫中的日志不能及時傳輸到從數據庫中時(如網絡傳輸異常),Tl的值將變大,T2的值將由于無新日志傳入反而變小(甚至為O),此時T2的值將比實際時間延遲值嚴重偏小,進而導致運維人員對主從數據庫數據同步狀態的錯誤判斷;
(2)由于T2的取值單位通常為秒,故數據精確度不能滿足對延遲精度控制要求較高的場入口 ο
[0005]因此,存在如下需求:提供具有高的準確性和精度的主從數據庫間數據同步延時檢測的方法。

【發明內容】

[0006]為了解決上述現有技術方案所存在的問題,本發明提出了具有高的準確性和精度的主從數據庫間數據同步延時檢測的方法。
[0007]本發明的目的是通過以下技術方案實現的:
一種主從數據庫間數據同步延時檢測的方法,所述主從數據庫間數據同步延時檢測的方法包括下列步驟:
(Al)將所執行的每個針對主數據庫中的數據的操作的信息記錄在主數據庫日志中,其中,針對主數據庫中的數據的操作包括周期性地針對檢測數據表執行的輔助操作,該輔助操作的信息被用作檢測點,并且該輔助操作執行完成的時間Tl被記錄;
(A2)周期性地將主數據庫日志中新產生的日志記錄傳送至從數據庫;
(A3)所述從數據庫基于接收到的主數據庫日志中新產生的日志記錄更新從數據庫日志并記錄每個新產生的日志信息的更新時間,并且隨之針對從數據庫中的數據依次執行更新后的從數據庫日志中的新產生的日志記錄所指示的操作;
(A4)以預定頻率通過輪詢的方式周期性地檢測從數據庫以依次確定更新后的從數據庫日志中的新產生的與所述輔助操作相關的記錄指示的操作是否已被完成,其中當發現與所述輔助操作相關的記錄指示的操作已被完成時記錄當前時間T2作為該輔助操作的完成時間;
(A5)基于最新獲得的與同一檢測點相關聯的時間Tl和T2,計算當前主從數據庫間數據同步延時D=T2-T1。
[0008]在上面所公開的方案中,優選地,所述檢測數據表僅用于輔助確定主從數據庫間數據同步延時,其不包括實際有效數據。
[0009]在上面所公開的方案中,優選地,所述主數據庫日志和所述從數據庫日志以不區分數據庫/表的順序的方式實施記錄操作。
[0010]在上面所公開的方案中,優選地,所述主從數據庫間數據同步延時D的精度是毫秒級或微秒級。
[0011]在上面所公開的方案中,優選地,所述步驟(Al)進一步包括:主數據庫在執行針對檢測數據表的輔助操作之前向從數據庫發送指示預期輔助操作執行時間的通知,所述預期輔助操作執行時間是距當前時間預定距離的未來時間。
[0012]在上面所公開的方案中,優選地,所述步驟(Al)進一步包括:僅在所述預期輔助操作執行時間之前收到來自從數據庫針對所述通知的成功應答的情況下才實際執行本次針對所述檢測數據表的輔助操作,否則,等待下一次輔助操作。
[0013]在上面所公開的方案中,優選地,所述主數據庫和所述從數據庫的系統時間一致。
[0014]在上面所公開的方案中,優選地,所述時間Tl和所述時間T2的時間精度是毫秒級或微秒級。
[0015]在上面所公開的方案中,優選地,所述步驟(A4)中的輪詢的頻次是每秒100次本發明所公開的主從數據庫間數據同步延時檢測的方法具有下列優點:由于計算的同步延時是針對主數據庫的輔助操作執行成功的時間至從數據庫中對應的數據被更新結束的時間之間的差,故具有較高的準確性和小的誤差,并且同步延時的精度可以獲得顯著地提高,從而能夠適應對延遲精度控制要求較高的場合。
【附圖說明】
[0016]結合附圖,本發明的技術特征以及優點將會被本領域技術人員更好地理解,其中:
圖1是根據本發明的實施例的主從數據庫間數據同步延時檢測的方法的流程圖。
【具體實施方式】
[0017]圖1是根據本發明的實施例的主從數據庫間數據同步延時檢測的方法的流程圖。如圖1所示,本發明所公開的主從數據庫間數據同步延時檢測的方法包括下列步驟:(Al)將所執行的每個針對主數據庫中的數據的操作(例如更新、刪除、插入等等)的信息記錄在主數據庫日志中,其中,針對主數據庫中的數據的操作包括周期性地針對檢測數據表執行的輔助操作,該輔助操作的信息被用作檢測點,并且該輔助操作執行完成的時間Tl被記錄;(A2)周期性地將主數據庫日志中新產生的日志記錄傳送至從數據庫;(A3)所述從數據庫基于接收到的主數據庫日志中新產生的日志記錄更新從數據庫日志并記錄每個新產生的日志信息的更新時間,并且隨之針對從數據庫中的數據依次執行更新后的從數據庫日志中的新產生的日志記錄所指示的操作;(A4)以預定頻率通過輪詢的方式周期性地檢測從數據庫以依次確定更新后的從數據庫日志中的新產生的與所述輔助操作相關的記錄指示的操作是否已被完成,其中當發現與所述輔助操作相關的記錄指示的操作已被完成時記錄當前時間T2作為該輔助操作
當前第1頁1 2 
網友詢問留言 已有0條留言
  • 還沒有人留言評論。精彩留言會獲得點贊!
1