新四季網

一種基於大數據模型平臺下的細粒度數據溯源方法與流程

2023-10-08 18:25:09 2


本發明涉及一種數據溯源方法,尤其是一種基於大數據模型平臺下的細粒度數據溯源方法。



背景技術:

近些年隨著計算機和移動網際網路的發展,各種信息呈爆炸式的增長,這些信息基本可以分成兩類,一類是原始的錄入數據,另一類是由這些數據經過若干處理派生出來的數據。但是一般暴露給用戶的往往是結果數據,這些數據對於使用者來說,其處理過程或者說可信度來說是不得而知的,而有時候結果數據和原始數據沒有任何關係,這就使得用戶必須去關心結果數據的來源,因此產生了數據溯源技術。

數據溯源是對數據起源和數據產生過程的描述,這些信息在很多方面發揮著重要的作用,例如調試數據和轉換、審計、評估數據的質量和信任度以及實現對數據的訪問控制等方面。數據溯源可以分為粗粒度溯源和細粒度溯源,在細粒度溯源方面,國內研究相對較少。

傳統的細粒度數據溯源方法主要集中在資料庫領域,其解決方法是通過增加標記欄位來記錄資料庫中每一項的處理傳播過程,而在大數據平臺下,不管是源數據還是結果數據,都存儲在hdfs上,無法直接對每個輸入數據項進行注釋。因此本發明提出一種針對大數據模型平臺的細粒度數據溯源方法。



技術實現要素:

本發明的目的在於克服現有技術的不足,提供一種基於大數據模型平臺的細粒度數據溯源方法,能夠解決在大數據模型平臺下數據溯源過程中的數據依賴區分問題。

本發明的目的是通過以下技術方案來實現的,一種基於大數據模型平臺的細粒度數據溯源方法,包括以下步驟:

s1:模型工作流分析,在hadoop平臺下對oozie引擎所構成的模型工作流的分析,主要分析工作流中的輸入、輸出以及大數據處理框架的數據處理過程;

s2:細粒度溯源定義,以一種遞歸的形式表示工作流的細粒度數據溯源;

s3:溯源信息捕獲,在模型執行過程中,動態地產生並獲取溯源信息;

s4:溯源標記存儲,對捕獲的溯源信息以關聯形式在hdfs上存儲;

s5:溯源追蹤,用來追溯產生結果數據文件中的細粒度數據項的來源輸入數據項。

所述的模型工作流是在hadoop平臺上由控制流節點和動作節點組成的工作流,並由hadoopoozie工作流引擎伺服器解釋執行。

所述的細粒度溯源定義,通過給定一個大數據平臺下的工作流w,並用一個四元組表示為w={i,o,m,p},其中i表示該工作流的輸入集i={i1,i2...in},其中i表示輸入文件中單個輸入項;o表示工作流的輸出集o={o1,o2...on},其中o表示輸出文件中單個輸出項;m表示工作流中的模型集m={m1,m2...mn},其中m表示工作流中任意模型;p表示工作流的細粒度數據溯源操作。

所述溯源信息捕獲,通過對模型處理框架擴展,並加入溯源信息的產生和傳遞功能,使在模型執行過程中產生的溯源信息在工作流處理模型中傳遞。

所述溯源標記存儲,通過使用中間標識來對每個模型的輸入和輸出項之間建立關聯,並將溯源信息的關聯以文件的形式存儲在hdfs上。

所述溯源追蹤,基於溯源存儲文件,並以一種遞歸的方式對任意結果數據項來追蹤產生其的所有相關輸入項,溯源追蹤的粒度基於行級數據項。

所述的模型工作流中的控制節點不對數據產生影響,因此主要分析動作節點如mapreduce、hive、spark等。

所述的細粒度溯源定義包括以下子步驟:

s21:單個模型溯源表示:假設工作流中任何一個模型轉換表示為t,給定一個轉換實例t(i)=o,輸入集為i,單個的輸出元素o∈o,細粒度溯源需要能夠確定出那些貢獻給輸出元素o的輸入子集

s22:工作流溯源表示:工作流溯源是對當前工作流中涉及到所有模型轉換的溯源,並用遞歸方式表示方式根據單個轉換溯源,工作流w的溯源用pw表示,工作流w中的任何單個原始e的溯源表示為pw(e),若e為初始輸入元素,即e∈ik,那麼pw(e)={e},否則假設t作為輸出e的轉換,pt(e)作為e的一級溯源,遞歸表示為

所述的溯源信息捕獲包括以下子步驟:

s31:recordreader擴展:recordreader的封裝器將每次產生的輸出鍵值(ki,vi)和相對應的唯一標識q組合成(ki,)一起傳遞給mapper;

s32:mapper擴展:mapper封裝器將傳來數據(ki,)作為輸入,並對其分解,將輸出鍵值(ki,vi)傳遞給底層的map函數處理,得到新的輸出鍵值(km,vm),mapper封裝器將新輸出鍵值(km,vm)和唯一標識q一起作為結果並封裝為(km,)輸出;

s33:reducer擴展:reducer封裝器收到經mapper封裝器處理後的輸出後,根據相同的新輸出鍵值km進行遍歷,並把所有遍歷後的鍵值傳遞給reducer,同時reducer封裝器將持久化存儲map溯源信息對於每個reducer輸出(ko,vo),reducer封裝器將map溯源信息和reducer輸出組合後傳遞給recordwriter封裝器;

s34:recordwriter擴展:recordwriter封裝器把reducer封裝器處理後的溯源信息作為輸入,並通過recordwriter為每個輸出(ko,vo)生成一個唯一標識p,最後recordwriter封裝器存儲reduce溯源信息

所述的溯源標記存儲包括以下子步驟:

s41:map溯源存儲,對map過程產生的溯源信息進行存儲,通過輸入數據項的文件名和偏移量生成唯一標識q,並根據不同分組生成唯一關聯標識kid,以的形式存儲在map溯源文件中;

s42:reduce溯源存儲,對reduce過程產生的溯源信息進行存儲,通過輸入數據項的文件名和偏移量生成唯一標識p,以的形式存儲在reduce溯源文件中。

所述的溯源追蹤包括以下子步驟:

s51:選擇需要追蹤的數據項並查詢;

s52:根據該數據項確定所屬文件path和偏移量offset,利用backtrace方法進行溯源追蹤;

s53:根據結果文件和溯源文件之間的命名規則,確定要查詢的溯源文件名file,如果當前要查詢的溯源文件是reduce溯源,則轉入s54;如果是map溯源,則轉入s55;否則,表示已經追蹤到源頭,轉入s56;

s54:根據文件名file讀取reduce溯源文件,並採用二分搜索的方式掃描每一行,讀取每行的第一個屬性為pos,並查找和傳入的偏移量數值相等的pos,接著讀取該pos所在行的第二個屬性為provenanceid,並轉入s53遞歸調用backtrace(file,provenanceid);

s55:根據文件名file讀取map溯源文件,採用二分搜索方式,讀取每行數據,並依次將其分割為lineid,fileid,position,然後查找和傳入的偏移量數值相等lineid的行,根據fileid和file查詢輸入的文件名並設置為file,最後轉入s53遞歸調用backtrace(file,position);

s56:執行到該步驟表明已追蹤到源頭,直接輸出文件名和輸入數據項,直到所有的數據項追蹤完畢,執行結束。

本發明的有益效果是:為現有的大數據模型分析平臺提供了一種有效的、正確的數據溯源方法,該方法克服了傳統方法在大數據平臺下不適用的問題,並為溯源文件建立索引,減少io操作,提高了查詢速度。

附圖說明

圖1為一種基於大數據模型平臺的細粒度溯源方法的流程圖;

圖2為溯源模型構建第一流程圖;

圖3為溯源模型構建第二流程圖;

圖4為溯源標記存儲關係圖;

圖5為細粒度數據溯源追蹤流程圖。

具體實施方式

下面結合具體實施例進一步詳細描述本發明的技術方案,但本發明的保護範圍不局限於以下所述。

實施例1

如圖1,一種基於大數據模型平臺的細粒度數據溯源方法,包括以下步驟:

s1:模型工作流分析,在hadoop平臺下對oozie引擎所構成的模型工作流的分析,主要分析工作流中的輸入、輸出以及大數據處理框架的數據處理過程;

s2:細粒度溯源定義,以一種遞歸的形式表示工作流的細粒度數據溯源;

s3:溯源信息捕獲,在模型執行過程中,動態地產生並獲取溯源信息;

s4:溯源標記存儲,對捕獲的溯源信息以關聯形式在hdfs上存儲;

s5:溯源追蹤,用來追溯產生結果數據文件中的細粒度數據項的來源輸入數據項。

所述的模型工作流是在hadoop平臺上由控制流節點和動作節點組成的工作流,並由hadoopoozie工作流引擎伺服器解釋執行。

所述的細粒度溯源定義,通過給定一個大數據平臺下的工作流w,並用一個四元組表示為w={i,o,m,p},其中i表示該工作流的輸入集i={i1,i2...in},其中i表示輸入文件中單個輸入項;o表示工作流的輸出集o={o1,o2...on},其中o表示輸出文件中單個輸出項;m表示工作流中的模型集m={m1,m2...mn},其中m表示工作流中任意模型;p表示工作流的細粒度數據溯源操作。

如圖2,3,所述溯源信息捕獲,通過對原生態大數據模型處理框架擴展,並加入溯源信息的產生和傳遞功能,使在模型執行過程中產生的溯源信息在工作流處理模型中傳遞。

如圖4,所述溯源標記存儲,通過使用中間標識來對每個模型的輸入和輸出項之間建立關聯,並將溯源信息的關聯以文件的形式存儲在hdfs上。

如圖5,所述溯源追蹤,基於溯源存儲文件,並以一種遞歸的方式對任意結果數據項來追蹤產生其的所有相關輸入項,溯源追蹤的粒度基於行級數據項。

所述的模型工作流中的控制節點不對數據產生影響,因此主要分析動作節點如mapreduce、hive、spark等。以mapreduce為例,mapreduce框架主要包括兩個階段:

map階段:設map函數為m,輸入數據集為i,對於i中每個元素i,它可以產生0個或者多個輸出元素,即

m(i)=∪i∈im({i})

reduce階段:設reduce函數為r,輸入數據集為i,其中每個元素是一個鍵值對,則r的輸出為針對輸入i中的每個相同鍵的分組產生的0個或者多個元素,假設用k1,k2...kn表示i中不同鍵,gj是由輸入i中所有鍵等於kj的鍵值對組成,即

r(i)=∪j∈[1,n]r({gj})

所述的細粒度溯源定義包括以下子步驟:

s21:單個模型溯源表示:假設工作流中任何一個模型轉換表示為t,給定一個轉換實例t(i)=o,輸入集為i,單個的輸出元素o∈o,細粒度溯源需要能夠確定出那些貢獻給輸出元素o的輸入子集

s22:工作流溯源表示:工作流溯源是對當前工作流中涉及到所有模型轉換的溯源,並用遞歸方式表示方式根據單個轉換溯源,工作流w的溯源用pw表示,工作流w中的任何單個原始e的溯源表示為pw(e),若e為初始輸入元素,即e∈ik,那麼pw(e)={e},否則假設t作為輸出e的轉換,pt(e)作為e的一級溯源,遞歸表示為

所述的溯源信息捕獲包括以下子步驟:

s31:recordreader擴展:recordreader的封裝器將每次產生的輸出鍵值(ki,vi)和相對應的唯一標識q組合成(ki,)一起傳遞給mapper;

s32:mapper擴展:mapper封裝器將傳來數據(ki,)作為輸入,並對其分解,將輸出鍵值(ki,vi)傳遞給底層的map函數處理,得到新的輸出鍵值(km,vm),mapper封裝器將新輸出鍵值(km,vm)和唯一標識q一起作為結果並封裝為(km,)輸出;

s33:reducer擴展:reducer封裝器收到經mapper封裝器處理後的輸出後,根據相同的新輸出鍵值km進行遍歷,並把所有遍歷後的鍵值傳遞給reducer,同時reducer封裝器將持久化存儲map溯源信息對於每個reducer輸出(ko,vo),reducer封裝器將map溯源信息和reducer輸出組合後傳遞給recordwriter封裝器;

s34:recordwriter擴展:recordwriter封裝器把reducer封裝器處理後的溯源信息作為輸入,並通過recordwriter為每個輸出(ko,vo)生成一個唯一標識p,最後recordwriter封裝器存儲reduce溯源信息

所述的溯源標記存儲包括以下子步驟:

s41:map溯源存儲,對map過程產生的溯源信息進行存儲,通過輸入數據項的文件名和偏移量生成唯一標識q,並根據不同分組生成唯一關聯標識kid,以的形式存儲在map溯源文件中;

s42:reduce溯源存儲,對reduce過程產生的溯源信息進行存儲,通過輸入數據項的文件名和偏移量生成唯一標識p,以的形式存儲在reduce溯源文件中。

所述的溯源追蹤包括以下子步驟:

s51:選擇需要追蹤的數據項並查詢;

s52:根據該數據項確定所屬文件path和偏移量offset,利用backtrace方法進行溯源追蹤;

s53:根據結果文件和溯源文件之間的命名規則,確定要查詢的溯源文件名file,如果當前要查詢的溯源文件是reduce溯源,則轉入s54;如果是map溯源,則轉入s55;否則,表示已經追蹤到源頭,轉入s56;

s54:根據文件名file讀取reduce溯源文件,並採用二分搜索的方式掃描每一行,讀取每行的第一個屬性為pos,並查找和傳入的偏移量數值相等的pos,接著讀取該pos所在行的第二個屬性為provenanceid,並轉入s53遞歸調用backtrace(file,provenanceid);

s55:根據文件名file讀取map溯源文件,採用二分搜索方式,讀取每行數據,並依次將其分割為lineid,fileid,position,然後查找和傳入的偏移量數值相等lineid的行,根據fileid和file查詢輸入的文件名並設置為file,最後轉入s53遞歸調用backtrace(file,position);

s56:執行到該步驟表明已追蹤到源頭,直接輸出文件名和輸入數據項,直到所有的數據項追蹤完畢,執行結束。

以上所述僅是本發明的優選實施方式,應當理解本發明並非局限於本文所披露的形式,不應看作是對其他實施例的排除,而可用於各種其他組合、修改和環境,並能夠在本文所述構想範圍內,通過上述教導或相關領域的技術或知識進行改動。而本領域人員所進行的改動和變化不脫離本發明的精神和範圍,則都應在本發明所附權利要求的保護範圍內。

同类文章

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

一種新型多功能組合攝影箱的製作方法【專利摘要】本實用新型公開了一種新型多功能組合攝影箱,包括敞開式箱體和前攝影蓋,在箱體頂部設有移動式光源盒,在箱體底部設有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-本發明所屬領域本發明涉及一種用來自動讀取管狀容器所載識別碼的裝置,其中的管狀容器被放在循環於配送鏈上的文檔匣或託架裝置中。本發明特別適用於,然而並非僅僅專用於,對引入自動分析系統的血液樣本試管之類的自動識別。本發明還涉及專為實現讀