您好,登錄后才能下訂單哦!
引言:
元數據采集是元數據產品的核心部分,如何提升采集效率是需要仔細斟酌的事情,既要保持穩定性也要保持跟上主流技術的發展趨勢。元數據產品從最初集中式WEB應用系統到現在流行的分布式、微服務這種系統架構,原有元數據采集效率已不能滿足應用的需求了。
目錄:
1.元數據采集原理
2.分布式采集策略
3.分布式采集策略的應用
1.元數據采集原理
我們要想采集元數據首先得明白,什么是元數據,元數據都存在哪里,為什么采集元數據?
元數據MetaData通俗的解釋是用來描述數據的數據,實際來看,除了業務邏輯直接讀寫處理的那些業務數據,所有其它用來維持整個系統運轉所需的信息/數據都可以叫作元數據。比如數據庫的Schema、Table、Column信息,任務的血緣關系,用戶和腳本/任務的權限映射關系信息等等。
以大數據平臺為例,元數據貫穿大數據平臺數據流動的全過程,主要包括數據源元數據、數據加工處理過程元數據、數據主題庫專題庫元數據、服務層元數據、應用層元數據等。
數據治理關鍵就是收集信息,很明顯,沒有數據就無從分析,也就無法有效的對平臺的數據鏈路進行管理和改進。所以元數據管理平臺很重要的一個功能就是信息的收集,至于收集哪些信息,取決于業務的需求和我們需要解決的目標問題。
如何采集元數據?
元數據采集是指獲取數據生命周期中的元數據,對元數據進行組織,然后將元數據寫入數據庫中的過程。
不同來源的元數據獲取獲取方式也不大相同,在采集方式上有使用包括數據庫直連、接口、日志文件等技術手段,對結構化數據的數據字典、非結構化數據的元數據信息、業務指標、代碼、數據加工過程等元數據信息進行自動化和手動采集,元數據采集完成后,被組織成符合CWM模型的結構,存儲在關系型數據庫中。
2.分布式采集架構
現在人們對元數據管理工具采集的元數據時效性越來越高,我們元數據管理工具會管理很多來源的元數據,配置很多采集任務定時去采集,如何高效的完成采集任務,影響著元數據管理工具存儲的元數據時效性。我們原先采集任務策略是單一采集程序串行執行采集任務,這樣的策略采集效率是很低的,為了提高采集效率,我們就采用多個采集程序并發執行采集任務。
常見的元數據管理工具架構是傳統的集中式WEB應用架構,所有的功能模塊都集中在一個應用程序中。
3.分布式采集架構的應用
我們在某一證券公司做數據治理時,發現該客戶的網絡架構比較復雜,它的網絡架構大概分為三層業務系統層、數據采集層和數據存儲層。http://m.qd8.com.cn/yiyao/xinxi21_3710011.html
業務系統分布業務系統層的不同地域,比如A業務系統在北京,B業務系統在上海,C業務系統在廣州等。我們要想訪問個各個業務系統的數據庫只能通過數據采集層的代理IP去訪問,不同地域的業務系統代理的IP地址網段也是不同的,數據采集層各個網段之間不能連通,數據存儲層是可以和數據采集層的所有網段直接連通的。
我們現在元數據的架構是分為應用程序和采集服務兩部分,應用程序和采集程序是一對一的關系,針對這種網絡情況,我們要對元數據產品的架構做調整。
一、將元數據的應用程序與采集服務改為一對多模式,這樣我們得需要一個采集服務管理模塊,可以對采集服務的信息(IP,端口)進行維護(增刪改),采集的目標數據源與采集程序服務進行映射,一個目標數據源可以配置主備采集服務,主采集服務發生故障后,可以通過備采集服務繼續采集工作。鄭州治療不孕不育哪里好:http://rgsj.zzfkyy120.com/
采集服務管理模塊要考慮易操作性和適用性,如:查看采集服務運行情況、設置默認采集服務等等。
二、元數據采集任務調整為并行執行,現在采集元數據步驟為獲取元數據>入臨時表>與正式表比對,更新元數據ID,得到元數據的變更信息>將元數據和變更信息入正式表。
采集任務調整為并行執行的主要的難點是如何取消臨時表,因為臨時表在元數據存儲數據庫中只有一份,只有等待當前采集任務執行完畢,清空臨時表后,才能執行下一次采集任務。
臨時表的作用是:
更新元數據ID和找出新增、修改和刪除的元數據,采集元數據時,都會給每一個元數據生成隨機的UUID當作元數據ID,與正式表作比對時,如果某一元數據之前已經入庫,需要將該元數據的臨時表里的ID更新成正式表里的ID。
取消臨時表的舉措:
1、我們選擇將元數據編碼+元數據類型+元數據父級路徑這三項數據進行MD5加密生成的字符串作為元數據的ID,這樣元數據的ID也就固定了,不需要和正式表里做比對了。
2、通過元數據ID去正式表里查詢就可得出哪些元數據是新增和刪除的。焦作國醫胃腸醫院怎么樣:http://jiaozuo.laoke.com/neike/251469256x.html/
我們將元數據的所有屬性值進行MD5加密生成的字符串作為元數據的屬性ID,這樣通?過比對元數據的屬性ID就可得知該元數據是否修改了。
這樣我們就可以取消臨時表,在采集服務程序中就可以將元數據和正式表數據作比對,得到變化的元數據,將元數據記錄直接寫入到數據庫中的正式表,元數據采集任務也就可以并行執行了。
我們在數據采集層各個網段都部署采集服務,這樣就實現了高并發元數據采集,這種分布式采集策略優點是:
1、采集元數據效率快
2、可以并行執行采集任務
3、可以適應復雜網絡環境的元數據采集。
免責聲明:本站發布的內容(圖片、視頻和文字)以原創、轉載和分享為主,文章觀點不代表本網站立場,如果涉及侵權請聯系站長郵箱:is@yisu.com進行舉報,并提供相關證據,一經查實,將立刻刪除涉嫌侵權內容。