System.ArgumentOutOfRangeException: 索引和長度必須引用該字符串內的位置。 參數名: length 在 System.String.Substring(Int32 startIndex, Int32 length) 在 zhuanliShow.Bind()
【技術實現步驟摘要】
本專利技術涉及數據處理,尤其涉及一種異構數據源實時數據采集系統。
技術介紹
1、在數據中臺架構中,實時數據采集是保證數據時效性和一致性的關鍵環節。flinkcdc(change?data?capture)作為一種主流的實時數據采集技術,被廣泛應用于從關系型數據庫中捕獲和提取變更數據。其工作原理是通過監測數據庫的事務日志,按照日志記錄的順序實時讀取數據變更。flinkcdc技術目前支持多種主流關系型數據庫,包括但不限于mysql、oracle、postgresql、sql?server和db2。這種基于日志的變更捕獲方法能夠實現低延遲、高一致性的數據同步,為數據集成和實時分析提供了強有力的支持。
2、在現有技術中,flinkcdc的運行嚴重依賴于數據庫日志的開啟,日志記錄過程可能對數據庫性能產生顯著影響,當數據管理員不愿開啟或限制數據庫日志功能時,會直接影響flinkcdc的實施可能性,且隨著數據庫國產化趨勢的加強,flinkcdc對這些新興數據庫的支持有限,無法滿足多樣化的數據源需求。
3、因此,尋找一種既能不依賴數據庫日志進行數據采集,又能夠快速實現實時數據采集的方法,是本領域技術人員亟待解決的技術問題。
技術實現思路
1、有鑒于此,本專利技術提出了一種異構數據源實時數據采集系統,其能夠處理大規模數據流,還能保證數據的一致性和完整性,同時提供了靈活的配置管理和監控能力,極大地提高了數據集成的效率和質量。
2、本專利技術的技術方案是這樣實現的:本
3、數據中臺,其配置為與來源數據庫和去向數據庫進行元數據交互,并創建數據采集任務;
4、分布式流處理引擎,其配置為與數據中臺進行任務和狀態交互,接收數據中臺提交的數據采集任務,執行數據采集任務,并對采集的數據進行數據處理和傳輸。
5、在以上技術方案的基礎上,優選的,所述數據中臺包括數據安全管理模塊、數據質量管理模塊、數據標準管理模塊、主數據管理模塊、數據采集管理模塊和元數據管理模塊。
6、在以上技術方案的基礎上,優選的,所述創建數據采集任務,具體包括:
7、步驟一、從來源數據庫和去向數據庫中采集元數據,并將元數據存儲在數據中臺;
8、步驟二、在數據中臺確定來源數據源和來源表,并確定待同步字段和來源表的主鍵;
9、步驟三、在數據中臺確定去向數據源和目標表,并確定待接收同步數據的字段和目標表的主鍵;
10、步驟四、根據來源表的主鍵和目標表的主鍵建立來源表和目標表的映射關系;
11、步驟五、根據元數據在來源數據庫的操作類型創建日志表,日志表包括修改前所有字段、修改后所有字段、操作類型和操作時間;操作類型包括新增操作、修改操作和刪除操作;
12、步驟六、在來源數據庫中來源表上創建觸發器,觸發器記錄日志表中因操作引起的數據變化;
13、步驟七、構建分布式流處理引擎的source配置和sink配置。
14、在以上技術方案的基礎上,優選的,所述元數據包括表中文名、表英文名、字段中文名、字段英文名、數據類型、是否為空、長度和主鍵。
15、在以上技術方案的基礎上,優選的,步驟四具體包括:
16、根據來源表的主鍵對來源數據庫進行元數據篩選,確定待同步字段,并對待同步字段進行排序;
17、根據目標表的主鍵對來源表的待同步字段進行匹配,確定與目標表中與待同步字段對應的目標字段;
18、根據排序后的待同步字段和目標字段構建來源表和目標表的映射關系。
19、在以上技術方案的基礎上,優選的,步驟六具體包括:
20、在來源數據庫中來源表上創建觸發器;
21、使用觸發器對日志表進行掃描,提取日志表中的日志數據并對日志數據進行格式轉換,得到日志數據隊列;
22、采用生產者-消費者模式從日志數據隊列中讀取數據;
23、使用分布式流處理引擎將讀取的數據實時寫入去向數據庫。
24、在以上技術方案的基礎上,優選的,所述提取日志數據并進行格式轉換,具體包括:
25、觸發器檢測到日志表中未處理的日志條目時,讀取未處理數據;
26、將操作發生變化的日志數據轉換為標準化的rowdata格式;
27、建立初始化隊列,將rowdata格式的日志數據寫入初始化隊列中,得到日志數據隊列。
28、在以上技術方案的基礎上,優選的,所述采用生產者-消費者模式從日志數據隊列中讀取數據,具體包括:
29、在分布式流處理引擎上創建inputformat接口;
30、配置inputformat的消費者客戶端參數;
31、使用nextrecord方法讀取日志數據隊列,并使用消費者客戶端獲取讀取數據。
32、更進一步優選的,所述分布式流處理引擎包括作業管理器、任務管理器、資源管理器和分發器。
33、在以上技術方案的基礎上,優選的,所述執行實時數據采集任務具體包括:
34、步驟一、分發器將實時采集任務移交給作業管理器;
35、步驟二、作業管理器向資源管理器申請處理資源單元,并將實時采集任務分發給任務管理器,資源管理器分配資源給任務管理器;
36、步驟三、任務管理器向作業管理器注冊資源,并開始執行數據采集任務。
37、本專利技術的異構數據源實時數據采集系統相對于現有技術具有以下有益效果:
38、(1)通過結合數據中臺和分布式流處理引擎,實現了異構數據源之間的高效、可靠、實時數據同步,不僅能夠處理大規模數據流,還能保證數據的一致性和完整性,同時提供了靈活的配置管理和監控能力,極大地提高了數據集成的效率和質量;
39、(2)通過自動采集和管理元數據,并基于元數據建立源表和目標表之間的精確映射關系,不僅減少了人為錯誤,還提高了數據同步的準確性和效率,更好地適應復雜的異構數據環境,并能快速響應數據結構的變化;
40、(3)通過在源數據庫中創建觸發器和日志表,能夠實時捕獲數據的變更,并將這些變更轉換為標準化的格式,確保了數據變更的完整性和順序性,為實時數據同步提供了可靠的基礎,能夠及時反映源數據的最新狀態;
41、(4)利用分布式流處理引擎的分布式特性和組件化設計,能夠高效地管理和調度數據采集任務,動態分配計算資源,實現了數據處理的高吞吐量和低延遲,不僅提高了可擴展性和容錯能力,還能夠根據實際負載情況自動調整資源分配,確保了在大規模數據處理場景下的穩定性和效率。
本文檔來自技高網...【技術保護點】
1.一種異構數據源實時數據采集系統,其特征在于,包括:
2.如權利要求1所述的一種異構數據源實時數據采集系統,其特征在于,所述數據中臺包括數據安全管理模塊、數據質量管理模塊、數據標準管理模塊、主數據管理模塊、數據采集管理模塊和元數據管理模塊。
3.如權利要求1所述的一種異構數據源實時數據采集系統,其特征在于,所述創建數據采集任務,具體包括:
4.如權利要求3所述的一種異構數據源實時數據采集系統,其特征在于,所述元數據包括表中文名、表英文名、字段中文名、字段英文名、數據類型、是否為空、長度和主鍵。
5.如權利要求4所述的一種異構數據源實時數據采集系統,其特征在于,步驟四具體包括:
6.如權利要求5所述的一種異構數據源實時數據采集系統,其特征在于,步驟六具體包括:
7.如權利要求6所述的一種異構數據源實時數據采集系統,其特征在于,所述提取日志數據并進行格式轉換,具體包括:
8.如權利要求7所述的一種異構數據源實時數據采集系統,其特征在于,所述采用生產者-消費者模式從日志數據隊列中讀取數據,具體包括:<
...【技術特征摘要】
1.一種異構數據源實時數據采集系統,其特征在于,包括:
2.如權利要求1所述的一種異構數據源實時數據采集系統,其特征在于,所述數據中臺包括數據安全管理模塊、數據質量管理模塊、數據標準管理模塊、主數據管理模塊、數據采集管理模塊和元數據管理模塊。
3.如權利要求1所述的一種異構數據源實時數據采集系統,其特征在于,所述創建數據采集任務,具體包括:
4.如權利要求3所述的一種異構數據源實時數據采集系統,其特征在于,所述元數據包括表中文名、表英文名、字段中文名、字段英文名、數據類型、是否為空、長度和主鍵。
5.如權利要求4所述的一種異構數據源實時數據采集系統,其特征在于,步驟四具體包...
【專利技術屬性】
技術研發人員:胡琦,嚴鶴,閆喜軍,王俊,楊權,
申請(專利權)人:云啟智慧科技有限公司,
類型:發明
國別省市:
還沒有人留言評論。發表了對其他瀏覽者有用的留言會獲得科技券。