新四季網

數據同步監控方法及系統與流程

2023-09-20 18:51:20


本發明涉及數據處理領域,尤指一種數據同步監控方法及系統。



背景技術:

現有技術中,在goldengate裡使用了心跳表機質來實現複製延時的監視工作,主要是在配置goldengate時加入一張表,在源端時時差入一條數據,記錄插入時間,當這條數據被複製到目標端時就可以判斷數據延時了多少,用於提醒用戶數據是截到什麼時間點的,或是讓程序用來判斷數據同步延時情況。goldengate軟體是oracle公司推出的數據同步軟體,在數據同步量比較大的時候,目標端單一的複製進程難以高效率的完成數據同步工作,因此會產生數據同步延時情況。業界普遍的優化方法就是增加複製進程,將需要同步的數據表分散到多個複製進程中進行數據同步,進而加快數據總體的同步。

用goldengate軟體同步數據時有如下缺點:不拆分複製進程會導致大量的數據同步延時。拆分出的複製進程數量不夠或者負載均衡配置的不好,會導致在源端同一個事物包的數據,在同步到目標端時,一部分數據已經寫入資料庫,而其餘的部分還不能及時寫入;拆分出足夠多的複製進程可以消除數據同步延時,但其消耗的系統性能會比較大,因為goldengate是作為單獨的軟體運行在作業系統中;並且複製進程的管理上會比較麻煩。

另外,現有的心跳表雖然可以用於監控goldengate數據同步情況,很多時候是出於業務需要,如結算,在某一刻需要進行結算時,只有當數據同步完成時才能進行,就可以加入心跳表來判斷數據同步是否存在延時,如果沒有延時,就代表這一時刻之前的數據已經同步完成了;在goldengate中心跳表的使用致使單個複製進程在複製數據時存在瓶頸,例如在多個複製進程時,如果多個複製進程中都同步心跳數據同步到目標端心跳表,在目標端的心跳表中就會有多個數據同步延時時間的記錄,程序因此無法判斷數據同步延時情況。



技術實現要素:

本發明目的在於解決在使用數據同步心跳表監控數據同步延時,由於goldengate複製進程拆分,而導致無法監控拆分出來的複製進程的數據同步延時情況。

為達上述目的,本發明具體提供一種數據同步監控方法,所述監控方法包含:發送端向接收端發送同步數據;接收端獲取同步數據的延遲時間,當所述延遲時間大於預定閾值時,向所述發送端發出進程拆分指令;發送端根據進程拆分指令,對發送同步數據的進程進行拆分,獲得複數個進程,並通過所述進程共同發送同步數據;接收端接收到的同步數據後,向同步數據中加入標識信息;資料庫根據所述標識信息對同步數據進行延遲處理後存儲。

在上述數據同步監控方法中,優選的,當所述延遲時間大於預定閾值時,向所述發送端發出進程拆分指令還包含:接收端檢測系統負荷情況,並根據所述系統負荷情況向所述發送端發出拆分至少一個進程的進程拆分指令。

在上述數據同步監控方法中,優選的,根據所述系統負荷情況向所述發送端發出拆分至少一個進程的進程拆分指令包含:當系統內存及cpu使用率均低於10%時,接收端向發送端發出拆分至少一個進程的進程拆分指令。

在上述數據同步監控方法中,優選的,所述發送端向接收端發送同步數據還包含:在同步數據中加入心跳表,所述心跳表包含發送端發送同步數據的初始時間。

在上述數據同步監控方法中,優選的,所述接收端獲取同步數據的延遲時間包含;接收端接收到同步數據時,將所述心跳表中的初始時間與當前時間比較,獲得延遲時間。

在上述數據同步監控方法中,優選的,所述標識信息為發送所述同步數據的進程的進程號欄位列。

在上述數據同步監控方法中,優選的,所述接收端接收到的同步數據後,向同步數據中加入標識信息還包含:接收端獲取複數個進程發送的同步數據的延遲時間,當所述延遲時間大於預定閾值時,向所述發送端發出對應進程的進程拆分指令。

在上述數據同步監控方法中,優選的,所述資料庫根據所述標識信息對同步數據進行延遲處理後存儲包含:資料庫根據所述標識信息獲得與所述標識信息相關進程的延遲時間信息,將所述延遲時間信息中最長的延遲時間作為延遲數據,根據所述延遲數據對所述相關進程發送的同步數據做延遲處理,並將處理後的同步數據合併後存儲。

本發明還提供一種數據同步監控系統,所述系統包含接收端、發送端和資料庫;所述發送端用於發送同步數據,以及根據進程拆分指令,對發送同步數據的進程進行拆分,獲得複數個進程,並通過所述進程共同發送同步數據;所述接收端用於獲取同步數據的延遲時間,當所述延遲時間大於預定閾值時,向所述發送端發出進程拆分指令,以及在接收到的同步數據後,向同步數據中加入標識信息;所述資料庫用於根據所述標識信息對同步數據進行延遲處理後存儲。

在上述數據同步監控系統中,優選的,所述接收端還包含監控模塊,所述監控模塊用於檢測系統負荷情況,並根據所述系統負荷情況向所述發送端發出拆分至少一個進程的進程拆分指令。

通過本發明所提供的數據同步監控方法及系統,將視圖概念引入心跳表中,最終實現goldgente複製進程的拆分優化,不僅降低數據延時情況的發生,還避免了業務程序上的修改,最終使得在業務高峰期時數據同步延時由原來的2小時降為5分鐘以內。

附圖說明

此處所說明的附圖用來提供對本發明的進一步理解,構成本申請的一部分,並不構成對本發明的限定。在附圖中:

圖1為本發明所提供的數據同步監控方法的流程示意圖;

圖2為本發明所提供的數據同步監控系統的結構示意圖。

具體實施方式

為使本發明實施例的目的、技術方案和優點更加清楚明白,下面結合實施例和附圖,對本發明做進一步詳細說明。在此,本發明的示意性實施例及其說明用於解釋本發明,但並不作為對本發明的限定。

請參考圖1所示,本發明具體提供一種數據同步監控方法,所述監控方法包含:發送端向接收端發送同步數據;接收端獲取同步數據的延遲時間,當所述延遲時間大於預定閾值時,向所述發送端發出進程拆分指令;發送端根據進程拆分指令,對發送同步數據的進程進行拆分,獲得複數個進程,並通過所述進程共同發送同步數據;接收端接收到的同步數據後,向同步數據中加入標識信息;資料庫根據所述標識信息對同步數據進行延遲處理後存儲。其中,所述標識信息可為發送所述同步數據的進程的進程號欄位列;當然實際使用時,也可為其他標識號,例如拆分進程a時,新拆分出來的進程則為a1、a2、a3等,如再次對a1拆分的話,則為a11、a12、a13等,本發明在此並不對其做過多限制。

在上述實施例中,當所述延遲時間大於預定閾值時,向所述發送端發出進程拆分指令還包含:接收端檢測系統負荷情況,並根據所述系統負荷情況向所述發送端發出拆分至少一個進程的進程拆分指令;其中系統負荷情況包含系統的內存使用率,cpu使用率等,其目的在於判斷系統性能,以此保證後期拆分進程後不會影響到系統的正常運行,具體的,例如當系統內存及cpu使用率均低於10%時,接收端向發送端發出拆分至少一個進程的進程拆分指令;此時,使用率較低,代表系統較為空閒,此刻可要求發送端拆分至少一個進程,為保證系統安穩運行,在該實施例中,優選的可進一步確認同步數據的延時是由於該進程性能達到瓶頸所致,如是,則對該進程進行拆分優化,當然為系統平穩運行考慮,每次拆分出一個進程即可;鑑於實際情況的不同,本領域相關技術人員也可對上述具體數值酌情調整,本發明在此並不做限制。

在上述實施例中,所述發送端向接收端發送同步數據主要是在同步數據中加入心跳表,所述心跳表包含發送端發送同步數據的初始時間。其後,接收端接收到同步數據時,將所述心跳表中的初始時間與當前時間比較,獲得延遲時間。

在本發明一優選的實施例中,所述接收端接收到的同步數據後,向同步數據中加入標識信息還包含:接收端獲取複數個進程發送的同步數據的延遲時間,當所述延遲時間大於預定閾值時,向所述發送端發出對應進程的進程拆分指令;亦即在拆分後,再次檢測進程發送過來的同步數據的延遲時間,如該延遲時間依然大於預定閾值,如10分鐘的話,在此對超出預定閾值的進程進行拆分;舉例來說,當a的延遲時間超出預定閾值時,對a進行拆分,獲得a1、a2、a3三個進程,在後期再次檢測延遲時間時,發現a2、a3也超出預定閾值,此時進一步對a2、a3進行拆分,獲得a21、a22、a23、a31等,依次類推直到系統負荷超出預定使用率,或上述進程中不再存在延遲時間超出預定閾值的進程時為止,當然在上述過程中,拆分進程時還需對該進程進行檢測,確認上述延遲時間是因為進程性能達到瓶頸時才進行進程拆分,提高數據傳輸效率。

在上述實施例中,所述資料庫根據所述標識信息對同步數據進行延遲處理後存儲包含:資料庫根據所述標識信息獲得與所述標識信息相關進程的延遲時間信息,將所述延遲時間信息中最長的延遲時間作為延遲數據,根據所述延遲數據對所述相關進程發送的同步數據做延遲處理,並將處理後的同步數據合併後存儲。

具體的,在實際工作中當變更d_gg_timestamp和d_gg兩張心跳表的複製模式,首先停止二代資料庫抽取和和投遞進程,停止二代資料庫應用進程,因歸集庫d_gg和d_gg_timestamp重命名會導致goldengate心跳作業代碼失效,導致作業失敗,因此在執行上述操作之前先把歸集庫的心跳作業暫停,歸集庫和查詢庫上創建表d_gg_stat,d_gg_log,歸集庫上為d_gg_stat和d_gg_log增加附加日誌,歸集庫和查詢庫為新建表d_gg_stat初始化數據,歸集庫和查詢庫創建視圖,ogg生成表結構定義文件,刪除d_gg和d_gg_timestamp兩個表的同步配置,去掉所有應用進程中的d_gg和d_gg_timestamp兩個表的複製:maptiger.d_gg,targettiger.d_gg;maptiger.d_gg_timestamp,targettiger.d_gg_timestamp;其後再增加d_gg_stat和d_gg_log兩個表的同步配置,修改歸集庫節點1中10個應用進程的配置文件,增加兩個表的同步配置,進程名稱及增加內容,啟動二代資料庫抽取和和投遞進程,然後進行實施驗證:檢查所有ogg進程運行情況,檢查二代歸集qrdb1-qrdb2-qrdb3內,視圖d_gg_timestamp、d_gg應該有最新的數據;然後,進行進程拆分,進程rett2和查詢庫應用進程recl2;實施操作開始時間點為00:10,需求在3:00前完成,否則會導致歸集庫日結作業失敗;拆分歸集庫節點2應用進程,修改第二組交易庫的應用進程rett2,記錄進程當前的extseqno及rba,修改進程配置文件,初始化歸集庫數據,為三組交易庫的t_lottery和t_lottery_info修改附加日誌,停止extt和putt抽取和投遞進程,刪除並創建附加日誌,修改extt2的配置,增加nocompressdeletes配置,啟動extt2和putt2抽取和投遞進程,為t_lottery_(info)和r_base新增應用進程,為三個新增進程複製源定義文件,新增應用進程rett21,改應用進程啟動位置,啟動rett2及新增的3個應用進程,實施驗證,其都應該返回數據,並且每分鐘會新進一條數據;此時統計各應用進程發送數據的延遲時間,將最長延遲時間作為參考時間,對上述進程發送的數據做延遲處理。

請參考圖2所示,本發明還提供一種數據同步監控系統,所述系統包含接收端、發送端和資料庫;所述發送端用於發送同步數據,以及根據進程拆分指令,對發送同步數據的進程進行拆分,獲得複數個進程,並通過所述進程共同發送同步數據;所述接收端用於獲取同步數據的延遲時間,當所述延遲時間大於預定閾值時,向所述發送端發出進程拆分指令,以及在接收到的同步數據後,向同步數據中加入標識信息;所述資料庫用於根據所述標識信息對同步數據進行延遲處理後存儲。

在上述數據同步監控系統中,所述接收端還包含監控模塊,所述監控模塊用於檢測系統負荷情況,並根據所述系統負荷情況向所述發送端發出拆分至少一個進程的進程拆分指令;其中所述監控模塊主要監控系統的內存使用率,cpu使用率等,其目的在於判斷系統性能,以此保證後期拆分進程後不會影響到系統的正常運行,具體的,例如當系統內存及cpu使用率均低於10%時,接收端向發送端發出拆分至少一個進程的進程拆分指令;此時,使用率較低,代表系統較為空閒,此刻可要求發送端拆分至少一個進程,為保證系統安穩運行,在該實施例中,優選的可進一步確認同步數據的延時是由於該進程性能達到瓶頸所致,如是,則對該進程進行拆分優化,當然為系統平穩運行考慮,每次拆分出一個進程即可;鑑於實際情況的不同,本領域相關技術人員也可對上述具體數值酌情調整,本發明在此並不做限制;值得說明的是,在上述實施例中,本發明所提供的數據同步監控方法及系統主要應用於goldgente程序,當然其並不限於goldgente以外的系統使用。

通過本發明所提供的數據同步監控方法及系統,將視圖概念引入心跳表中,最終實現goldgente複製進程的拆分優化,不僅降低數據延時情況的發生,還避免了業務程序上的修改,最終使得在業務高峰期時數據同步延時由原來的2小時降為5分鐘以內。

顯然,本領域的技術人員應該明白,上述的本發明實施例的各模塊或各步驟可以用通用的計算裝置來實現,它們可以集中在單個的計算裝置上,或者分布在多個計算裝置所組成的網絡上,可選地,它們可以用計算裝置可執行的程序代碼來實現,從而,可以將它們存儲在存儲裝置中由計算裝置來執行,並且在某些情況下,可以以不同於此處的順序執行所示出或描述的步驟,或者將它們分別製作成各個集成電路模塊,或者將它們中的多個模塊或步驟製作成單個集成電路模塊來實現。這樣,本發明實施例不限制於任何特定的硬體和軟體結合。

以上所述的具體實施例,對本發明的目的、技術方案和有益效果進行了進一步詳細說明,所應理解的是,以上所述僅為本發明的具體實施例而已,並不用於限定本發明的保護範圍,凡在本發明的精神和原則之內,所做的任何修改、等同替換、改進等,均應包含在本發明的保護範圍之內。

同类文章

一種新型多功能組合攝影箱的製作方法

一種新型多功能組合攝影箱的製作方法【專利摘要】本實用新型公開了一種新型多功能組合攝影箱,包括敞開式箱體和前攝影蓋,在箱體頂部設有移動式光源盒,在箱體底部設有LED脫影板,LED脫影板放置在底板上;移動式光源盒包括上蓋,上蓋內設有光源,上蓋部設有磨沙透光片,磨沙透光片將光源封閉在上蓋內;所述LED脫影

壓縮模式圖樣重疊檢測方法與裝置與流程

本發明涉及通信領域,特別涉及一種壓縮模式圖樣重疊檢測方法與裝置。背景技術:在寬帶碼分多址(WCDMA,WidebandCodeDivisionMultipleAccess)系統頻分復用(FDD,FrequencyDivisionDuplex)模式下,為了進行異頻硬切換、FDD到時分復用(TDD,Ti

個性化檯曆的製作方法

專利名稱::個性化檯曆的製作方法技術領域::本實用新型涉及一種檯曆,尤其涉及一種既顯示月曆、又能插入照片的個性化檯曆,屬於生活文化藝術用品領域。背景技術::公知的立式檯曆每頁皆由月曆和畫面兩部分構成,這兩部分都是事先印刷好,固定而不能更換的。畫面或為風景,或為模特、明星。功能單一局限性較大。特別是畫

一種實現縮放的視頻解碼方法

專利名稱:一種實現縮放的視頻解碼方法技術領域:本發明涉及視頻信號處理領域,特別是一種實現縮放的視頻解碼方法。背景技術: Mpeg標準是由運動圖像專家組(Moving Picture Expert Group,MPEG)開發的用於視頻和音頻壓縮的一系列演進的標準。按照Mpeg標準,視頻圖像壓縮編碼後包

基於加熱模壓的纖維增強PBT複合材料成型工藝的製作方法

本發明涉及一種基於加熱模壓的纖維增強pbt複合材料成型工藝。背景技術:熱塑性複合材料與傳統熱固性複合材料相比其具有較好的韌性和抗衝擊性能,此外其還具有可回收利用等優點。熱塑性塑料在液態時流動能力差,使得其與纖維結合浸潤困難。環狀對苯二甲酸丁二醇酯(cbt)是一種環狀預聚物,該材料力學性能差不適合做纖

一種pe滾塑儲槽的製作方法

專利名稱:一種pe滾塑儲槽的製作方法技術領域:一種PE滾塑儲槽一、 技術領域 本實用新型涉及一種PE滾塑儲槽,主要用於化工、染料、醫藥、農藥、冶金、稀土、機械、電子、電力、環保、紡織、釀造、釀造、食品、給水、排水等行業儲存液體使用。二、 背景技術 目前,化工液體耐腐蝕貯運設備,普遍使用傳統的玻璃鋼容

釘的製作方法

專利名稱:釘的製作方法技術領域:本實用新型涉及一種釘,尤其涉及一種可提供方便拔除的鐵(鋼)釘。背景技術:考慮到廢木材回收後再加工利用作業的方便性與安全性,根據環保規定,廢木材的回收是必須將釘於廢木材上的鐵(鋼)釘拔除。如圖1、圖2所示,目前用以釘入木材的鐵(鋼)釘10主要是在一釘體11的一端形成一尖

直流氧噴裝置的製作方法

專利名稱:直流氧噴裝置的製作方法技術領域:本實用新型涉及ー種醫療器械,具體地說是ー種直流氧噴裝置。背景技術:臨床上的放療過程極易造成患者的局部皮膚損傷和炎症,被稱為「放射性皮炎」。目前對於放射性皮炎的主要治療措施是塗抹藥膏,而放射性皮炎患者多伴有局部疼痛,對於止痛,多是通過ロ服或靜脈注射進行止痛治療

新型熱網閥門操作手輪的製作方法

專利名稱:新型熱網閥門操作手輪的製作方法技術領域:新型熱網閥門操作手輪技術領域:本實用新型涉及一種新型熱網閥門操作手輪,屬於機械領域。背景技術::閥門作為流體控制裝置應用廣泛,手輪傳動的閥門使用比例佔90%以上。國家標準中提及手輪所起作用為傳動功能,不作為閥門的運輸、起吊裝置,不承受軸向力。現有閥門

用來自動讀取管狀容器所載識別碼的裝置的製作方法

專利名稱:用來自動讀取管狀容器所載識別碼的裝置的製作方法背景技術:1-本發明所屬領域本發明涉及一種用來自動讀取管狀容器所載識別碼的裝置,其中的管狀容器被放在循環於配送鏈上的文檔匣或託架裝置中。本發明特別適用於,然而並非僅僅專用於,對引入自動分析系統的血液樣本試管之類的自動識別。本發明還涉及專為實現讀