<listing id="vjp15"></listing><menuitem id="vjp15"></menuitem><var id="vjp15"></var><cite id="vjp15"></cite>
<var id="vjp15"></var><cite id="vjp15"><video id="vjp15"><menuitem id="vjp15"></menuitem></video></cite>
<cite id="vjp15"></cite>
<var id="vjp15"><strike id="vjp15"><listing id="vjp15"></listing></strike></var>
<var id="vjp15"><strike id="vjp15"><listing id="vjp15"></listing></strike></var>
<menuitem id="vjp15"><strike id="vjp15"></strike></menuitem>
<cite id="vjp15"></cite>
<var id="vjp15"><strike id="vjp15"></strike></var>
<var id="vjp15"></var>
<var id="vjp15"></var>
<var id="vjp15"><video id="vjp15"><thead id="vjp15"></thead></video></var>
<menuitem id="vjp15"></menuitem><cite id="vjp15"><video id="vjp15"></video></cite>
<var id="vjp15"></var><cite id="vjp15"><video id="vjp15"><thead id="vjp15"></thead></video></cite>
<var id="vjp15"></var>
<var id="vjp15"></var>
<menuitem id="vjp15"><span id="vjp15"><thead id="vjp15"></thead></span></menuitem>
<cite id="vjp15"><video id="vjp15"></video></cite>
<menuitem id="vjp15"></menuitem>

數據清洗方法及裝置與流程

文檔序號:11216539閱讀:580來源:國知局
數據清洗方法及裝置與流程
本發明涉及計算機領域,尤其涉及一種數據清洗方法及裝置。
背景技術
:信息技術的飛速發展使得眾多信息系統積累了海量的業務數據,數據分析、數據挖掘和人工智能等技術的逐步成熟使得這些數據轉化為更好服務于業務的知識成為可能。數據分析、數據挖掘需要以數據整合為前提,而數據整合的首要工作是數據清洗,即識別并處理臟數據、保留干凈的數據,以保證數據質量,進而學習出高質量的知識。現有的數據清洗方法多依賴于人工的領域知識、經驗和技能,根據各自對數據的學習、理解,主觀地判別數據情況,再利用excel、文本處理工具、簡易的數據處理工具,或者編寫相應的計算機程序腳本、代碼,對數據進行清洗,以獲得符合要求的數據。然而,現有的數據清洗方法工作量較大,特別是多源異構、非結構化的數據,工作任務尤其繁重;通過人工的方式識別數據情況具有較強的主觀性,清洗方法不夠規范,清洗結果不統一。技術實現要素:本發明旨在至少在一定程度上解決相關技術中的技術問題之一。為此,本發明的第一個目的在于提出一種數據清洗方法,以實現數據的自動清洗,降低數據清洗的工作量和人工參與度,提高方法的復用性,解決現有技術中工作量大、人工參與度和主觀性高、不規范的問題。本發明的第二個目的在于提出一種數據清洗裝置。本發明的第三個目的在于提出另一種數據清洗裝置。本發明的第四個目的在于提出一種計算機程序產品。本發明的第五個目的在于提出一種非臨時性計算機可讀存儲介質。為達上述目的,本發明第一方面實施例提出了一種數據清洗方法,包括:對待清洗的第一數據進行結構化處理,得到結構化的目標數據;所述目標數據中包括需要清洗的數據字段;確定各數據字段對應的屬性以及從屬于各屬性的清洗規則;利用從屬于各屬性的清洗規則形成清洗規則集;基于所述清洗規則集對所述目標數據進行清洗。本發明實施例的數據清洗方法,通過對待清洗的第一數據進行結構化處理得到結構化的目標數據,確定各數據字段對應的屬性以及從屬于各屬性的清洗規則,利用從屬于各屬性的清洗規則形成清洗規則集,基于清洗規則集對目標數據進行清洗。由此,能夠實現數據的自動清洗,降低數據清洗的工作量和人工參與度,提高方法的復用性。為達上述目的,本發明第二方面實施例提出了一種數據清洗裝置,包括:處理模塊,用于對待清洗的第一數據進行結構化處理,得到結構化的目標數據;所述目標數據中包括需要清洗的數據字段;確定模塊,用于確定各數據字段對應的屬性以及從屬于各屬性的清洗規則;第一生成模塊,用于利用從屬于各屬性的清洗規則形成清洗規則集;清洗模塊,用于基于所述清洗規則集對所述目標數據進行清洗。本發明實施例的數據清洗裝置,通過對待清洗的第一數據進行結構化處理得到結構化的目標數據,確定各數據字段對應的屬性以及從屬于各屬性的清洗規則,利用從屬于各屬性的清洗規則形成清洗規則集,基于清洗規則集對目標數據進行清洗。由此,能夠實現數據的自動清洗,降低數據清洗的工作量和人工參與度,提高方法的復用性。為達上述目的,本發明第三方面實施例提出了另一種數據清洗裝置,包括:處理器和存儲器;其中,所述處理器通過讀取所述存儲器中存儲的可執行程序代碼來運行與所述可執行程序代碼對應的程序,以用于實現第一方面實施例所述的數據清洗方法。為達上述目的,本發明第四方面實施例提出了一種計算機程序產品,當所述計算機程序產品中的指令由處理器執行時,執行如第一方面實施例所述的數據清洗方法。為達上述目的,本發明第五方面實施例提出了一種非臨時性計算機可讀存儲介質,其上存儲有計算機程序,當計算機程序被處理器執行時實現如第一方面實施例所述的數據清洗方法。本發明附加的方面和優點將在下面的描述中部分給出,部分將從下面的描述中變得明顯,或通過本發明的實踐了解到。附圖說明本發明上述的和/或附加的方面和優點從下面結合附圖對實施例的描述中將變得明顯和容易理解,其中:圖1為本發明一實施例提出的數據清洗方法的流程示意圖;圖2為本發明另一實施例提出的數據清洗方法的流程示意圖;圖3為本發明又一實施例提出的數據清洗方法的流程示意圖;圖4為本發明一實施例提出的數據清洗裝置的結構示意圖;圖5為本發明另一實施例提出的數據清洗裝置的結構示意圖;圖6為本發明一具體實施例的數據清洗裝置的結構示意圖;圖7為本發明一實施例提出的另一種數據清洗裝置的結構示意圖。具體實施方式下面詳細描述本發明的實施例,所述實施例的示例在附圖中示出,其中自始至終相同或類似的標號表示相同或類似的元件或具有相同或類似功能的元件。下面通過參考附圖描述的實施例是示例性的,旨在用于解釋本發明,而不能理解為對本發明的限制。下面參考附圖描述本發明實施例的數據清洗方法及裝置。現有的數據清洗方法基本上依賴于人工已掌握的知識、經驗和技能,根據自身對數據的理解主觀地判斷數據情況,再利用excel、文本處理工具或者簡易的數據處理工具等,甚至編寫相應的計算機程序腳本、代碼,對數據進行清洗,以期獲得符合要求的數據。可見,現有的數據清洗方法存在如下弊端:1)對參與數據清洗的人員素質要求較高,需其理解數據業務含義、理解清洗的目標方向。由于不同目標、不同場景對“臟數據”的定義不同,導致該方法具有很強的主觀性,不同的人對同一份數據產出的清洗結果不盡相同。2)對于多源異構的數據,需要逐份數據逐一清洗,甚至逐行逐列地清洗,生產效率低。3)數據清洗的規則、經驗得不到有效沉淀和積累,每一次清洗數據都是一個獨立任務,無有效的機制來累積和復用數據清洗的規則、經驗和知識。針對上述問題,本發明實施例提出一種數據清洗方法,能夠實現數據的自動清洗,降低人工參與度,提高適用性。圖1為本發明一實施例提出的數據清洗方法的流程示意圖。如圖1所示,該數據清洗方法包括以下步驟:s11,對待清洗的第一數據進行結構化處理,得到結構化的目標數據。其中,目標數據中包括需要清洗的數據字段,比如重復數據、不完整數據、錯誤數據等。在待清洗的第一數據中,可能同時存在結構化數據和非結構化數據。其中,結構化數據表現為行列數據、可擴展標記語言(extensiblemarkuplanguage,xml)、json等,可以展開用二維表結構來邏輯表達實現;非結構化數據與結構化數據對應,即為不方便用二維邏輯表進行表現的數據,包括所有格式的辦公文檔、文本、圖片、各類報表、圖像和音頻/視頻信息等。對于結構化數據,在對其進行結構化處理時,可以對其進行嚴格的整理,獲得大小為m*n的數據表(m、n均為正整數),并通過自動識別或手動整理的方式整理出數據表的模式即表頭,得到結構化的目標數據。對于非結構化數據,在對其進行結構化處理時,可以預先定義好需要抽取的目標字段,比如姓名、手機號碼、公司名稱、公司組織機構代碼等,再采用相關方法(比如正則表達式、實體識別、光學字符識別(opticalcharacterrecognition,ocr)等)從非結構化數據中提取出對應的數據,得到結構化的目標數據。舉例而言,表1為對第一數據進行結構化處理后得到的結構化的目標數據的示例表。從表1中可以看出,相對于其他姓名而言,編號為110102的姓名字段的屬性多一個字符s,編號為110104的性別字段的屬性為未知,各個編號的生日字段的屬性的表示方式不統一,因此,在如表1所示的目標數據中,需要清洗的數據字段為姓名字段、性別字段和生日字段。表1編號姓名性別生日110102李某某s男19800505110103王某某女1985-09-20110104張某某未知1990年01日31本步驟中,通過對待清洗的第一數據進行結構化處理,能夠保證非結構化數據、結構化數據清洗的一致性。s12,確定各數據字段對應的屬性以及從屬于各屬性的清洗規則。本實施例中,在確定各數據字段對應的屬性以及從屬于各屬性的清洗規則之前,可以預先定義和編寫基礎的數據清洗規則或方法代碼、腳本,以建立清洗規則池,清洗規則池中包含有針對不同屬性的清洗規則,比如去除空白格、刪除錯誤數值、格式轉換等。同時,對于定義和編寫好的基礎的數據清洗規則或方法代碼、腳本,用全局唯一的編碼或者偽代碼來表述,比如清洗規則s1-trim,表示清除數據字段前后的空白字符。表2為部分清洗規則定義示例表。表2建立好清洗規則池之后,即可確定各數據字段對應的屬性以及從屬于各屬性的清洗規則。其中,字段對應的屬性指的是該字段下的數據所表達的業務能夠抽象并映射到的對象屬性,如人的性別、車輛的識別代碼。本實施例中,可以先確定目標數據中各個字段對應的屬性,進而根據屬性之間的差異以及希望獲得的屬性的目標形式,從清洗規則池中確定從屬于各屬性的清洗規則。以表1為例,在如表1所示的目標數據中,包含姓名、性別和生日三個字段,可以分別映射到三個屬性,根據每個字段對應的具體屬性從清洗規則池中選擇合適的清洗規則。s13,利用從屬于各屬性的清洗規則形成清洗規則集。本實施例中,確定了目標數據中各字段對應的屬性及各屬性的清洗規則之后,可以進一步利用從屬于各屬性的清洗規則形成清洗規則集,以形成一組有效的、清洗對應屬性的規則集合。比如,對于中文姓名屬性,清洗規則集的組成可能包含剔除非中文字符(s1)、刪除長度超過20個字符的字段(s3)等。仍以表1為例,對于表1中的姓名、性別和生日三個字段,確定了各字段中從屬于各屬性的清洗規則之后,可以形成如表3所示的清洗規則集。表3屬性標識名稱有效性清洗規則集domain.p1中文姓名是[s1,s3,…,sm]domain.p2性別是[s1,…,sn]domain.p3出生日期是[s1,s2,…,si]在如表3所示的示例表中,屬性標識為預先設置的,用于唯一標識各個字段到屬性的映射。從屬于各個屬性的清洗規則不止一個,且對于不同字段對應的屬性,從屬于各屬性的清洗規則可以相同,也就是說,清洗規則與屬性存在多對多的關系。本步驟中,通過確定從屬于各屬性的清洗規則并形成清洗規則集,使得數據清洗可以字段屬性為單元進行,且清洗規則可以從屬于不同的屬性,因此可以方便地復用到其他數據,具有較強的復用性。s14,基于清洗規則集對目標數據進行清洗。本實施例中,利用從屬于各屬性的清洗規則形成清洗規則集之后,即可基于清洗規則集對目標數據進行清洗。具體地,可以將清洗規則集提交至任務執行單元,由任務執行單元根據每個由唯一編碼標識的清洗規則獲取相應的腳本或偽代碼,自動生成實際可執行的清洗代碼或腳本,進而執行對應的清洗操作對目標數據進行清洗,輸出清洗后的、符合要求的數據。舉例而言,對于如表1所示的目標數據,基于如表3所示的清洗規則集進行清洗之后,可以獲得如表4所示的結果數據。表4編號姓名性別生日110102李某某男1980-05-05110103王某某女1985-09-20110104張某某1990-01-31從表4中可以看出,相較于表1的數據而言,表4中的數據更加規范,表示形式一致。隨著時間的推移,待清洗的數據也隨之增多,若同時清洗大量數據,耗時較長,且容易導致清洗程序故障。為了避免這一問題,在本發明實施例一種可能的實現方式中,基于清洗規則集對目標數據進行清洗可以包括:獲取目標數據的數據量;當數據量超出預設閾值時,按照數據量生成多個數據清洗任務,其中,數據清洗任務中包括需要清洗的數據字段列子集和/或數據字段行子集;從清洗規則集中為每個數據清洗任務配置對應的清洗規則子集;分布式地執行所有的數據清洗任務。其中,在按照數據量生成多個數據清洗任務時,可以在不超過清洗程序的最大處理能力的條件下為每個數據清洗任務隨機分配工作量,也可以為每個數據清洗任務平均分配工作量,本發明對此不作限制。此外,在本發明實施例一種可能的實現方式中,目標數據可能為結構化的數據表,即目標數據為規范的m行*n列的數據表時(m、n為正整數),此時,基于清洗規則集對目標數據進行清洗可以包括:獲取目標數據的數據量;當數據量超出預設閾值時,獲取目標數據的行數和列數;按照行列拆分組合的方式生成多個數據清洗任務,其中,數據清洗任務中包括需要清洗的數據字段列子集和/或數據字段行子集;從清洗規則集中為每個數據清洗任務配置對應的清洗規則子集;分布式地執行所有的數據清洗任務。其中,在按照行列拆分組合的方式生成多個數據清洗任務時,可以在不超過清洗程序最大處理能力的條件下,隨機或平均地為每個數據清洗任務分配所需處理的數量的行數和列數,本發明對此不作限制。需要說明的是,預設閾值可以根據實際情況比如程序的處理能力進行設置,本發明不作具體限定。通過在數據量超過預設閾值時將數據量分割成多個數據清洗任務,并從清洗規則集中為每個數據清洗任務配置對應的清洗規則子集,進而分布式執行所有的數據清洗任務,能夠降低每個清洗程序的工作量,縮短數據清洗時長。本實施例的數據清洗方法,通過對待清洗的第一數據進行結構化處理得到結構化的目標數據,確定各數據字段對應的屬性以及從屬于各屬性的清洗規則,利用從屬于各屬性的清洗規則形成清洗規則集,基于清洗規則集對目標數據進行清洗。由此,能夠實現數據的自動清洗,降低數據清洗的工作量和人工參與度,提高方法的復用性。為了更加清楚地說明確定各字段對應屬性及從屬于各屬性的清洗規則的實現過程,本發明實施例提出了另一種數據清洗方法,圖2為本發明另一實施例提出的數據清洗方法的流程示意圖。如圖2所示,在如圖1所示實施例的基礎上,步驟s12可以包括以下步驟:s21,查詢或者配置字段與屬性之間的第一映射關系,得到各數據字段對應的屬性。具體地,對于曾經清洗過的數據,可以將數據的字段和屬性之間的關系記錄于第一映射關系中,當需要清洗的數據與曾經清洗過的數據的結構類似時,通過直接查詢第一映射關系的方式即可得到各數據字段對應的屬性。當未曾清洗過類似結構的數據時,可以由用戶手動配置字段與屬性之間的第一映射關系。作為一種示例,可以從結構化的目標數據中抽象出每一行數據表述的字段以及每一列數據表征的字段的屬性,利用目標數據的每個字段與屬性建立第一映射關系。第一映射關系可以用數組表示,數組的每一個元素表示一對字段名稱到屬性的映射。比如,對于表1中的數據,第一映射關系可以表示為:[(姓名,domain.p1),(性別,domain.p2),(生日,domain.p3)]。根據預先建立的第一映射關系,可以獲得各字段對應的屬性。s22,根據屬性與清洗規則標識之間的第二映射關系,從清洗規則池中得到從屬于屬性的清洗規則。其中,第二映射關系也是預先設置的,不同的屬性清洗時所需的清洗規基本不同,因而,可以根據不同的屬性設置不同的清洗規則。為便于表述和后續清洗代碼的生成,可以為不同的清洗規則設置唯一的清洗規則標識,進而建立屬性與清洗規則標識之間的第二映射關系。從而,本實施例中,在確定了各字段對應的屬性之后,即可根據第二映射關系,從清洗規則池中確定從屬于各屬性的清洗規則。本實施例的數據清洗方法,通過查詢字段與屬性之間的第一映射關系得到各數據字段對應的屬性,根據屬性與清洗規則標識之間的第二映射關系,從清洗規則池中得到從屬于屬性的清洗規則,能夠提高獲取清洗規則的準確性,進而提高數據清洗精確度。另外,通過建立第一映射關系和第二映射關系,能夠將清洗規則應用于不同的數據中,減少不同數據之間清洗時的重復勞動,并且,相同或相近模式的數據可通過計算相似度決定是否直接復用之前的清洗規則,能夠提高清洗效率。為了能夠將本次數據清洗時使用的清洗規則用于后續的數據清洗中,尤其是便于后續對相同或相近模式的數據進行清洗,進一步提高方法的復用性,可以將本次清洗時的字段和對應的清洗規則進行保存。從而,本發明實施例還提出了一種數據清洗方法,圖3為本發明又一實施例提出的數據清洗方法的流程示意圖。如圖3所示,在如圖1所示實施例的基礎上,步驟s14之后,還可以包括以下步驟:s31,利用目標數據發生清洗的第一數據字段以及第一數據字段清洗時所采用的清洗規則,形成歷史記錄。本實施例中,基于清洗規則集對目標數據進行清洗之后,可以利用目標數據中發生清洗的第一數據字段以及第一數據字段清洗時采用的清洗規則形成歷史記錄。s32,對歷史記錄進行機器學習形成反饋,基于反饋對清洗規則池進行更新。本實施例中,對形成的歷史記錄進行機器學習并形成反饋,基于反饋對清洗規則池進行更新,以在后續數據清洗時可以使用相應的清洗規則,進一步提高后續數據清洗的精確度。本實施例的數據清洗方法,通過利用目標數據發生清洗的第一數據字段以及第一數據字段清洗時所采用的清洗規則形成歷史記錄,對歷史記錄進行機器學習形成反饋,基于反饋對清洗規則池進行更新,能夠為后續的數據清洗提供便利,進一步提高方法的復用性。為了實現上述實施例,本發明還提出一種數據清洗裝置。圖4為本發明一實施例提出的數據清洗裝置的結構示意圖。如圖4所示,該數據清洗裝置40可以包括:處理模塊410、確定模塊420、第一生成模塊430,以及清洗模塊440。其中,處理模塊410,用于對待清洗的第一數據進行結構化處理,得到結構化的目標數據。其中,目標數據中包括需要清洗的數據字段。確定模塊420,用于確定各數據字段對應的屬性以及從屬于各屬性的清洗規則。第一生成模塊430,用于利用從屬于各屬性的清洗規則形成清洗規則集。清洗模塊440,用于基于清洗規則集對目標數據進行清洗。可選地,在本發明實施例一種可能的實現方式中,清洗模塊440具體用于獲取目標數據的數據量;當數據量超出預設閾值時,按照數據量生成多個數據清洗任務,其中,數據清洗任務中包括需要清洗的數據字段列子集和/或數據字段行子集;從清洗規則集中為每個數據清洗任務配置對應的清洗規則子集;分布式執行所有的數據清洗任務。可選地,在本發明實施例一種可能的實現方式中,當目標數據為結構化的數據表,即目標數據為規范的m行*n列的數據表時(m、n為正整數)時,清洗模塊440還用于獲取目標數據的數據量;當數據量超出預設閾值時,獲取目標數據的行數和列數;按照行列拆分組合的方式生成多個數據清洗任務,其中,數據清洗任務中包括需要清洗的數據字段(列)子集和數據行子集;從清洗規則集中為每個數據清洗任務配置對應的清洗規則子集;分布式執行所有的數據清洗任務。通過在數據量超過預設閾值時將數據量分割成多個數據清洗任務,并從清洗規則集中為每個數據清洗任務配置對應的清洗規則子集,進而分布式執行所有的數據清洗任務,能夠降低每個清洗程序的工作量,縮短數據清洗時長。可選地,在本發明實施例一種可能的實現方式中,如圖5所示,在如圖4所示實施例的基礎上,該數據清洗裝置40還可以包括:第二生成模塊450,用于利用目標數據發生清洗的第一數據字段以及第一數據字段清洗時所采用的清洗規則,形成歷史記錄。更新模塊460,用于對歷史記錄進行機器學習形成反饋,基于反饋對清洗規則池進行更新。確定模塊420可以包括:查詢單元421,用于查詢或者配置字段與屬性之間的第一映射關系,得到各數據字段的屬性。獲取單元422,用于根據屬性與清洗規則標識之間的第二映射關系,從清洗規則池中得到從屬于屬性的清洗規則。需要說明的是,前述對數據清洗方法實施例的解釋說明也適用于本實施例的數據清洗裝置,其實現原理類似,此處不再贅述。本實施例的數據清洗裝置,通過對待清洗的第一數據進行結構化處理得到結構化的目標數據,確定各數據字段對應的屬性以及從屬于各屬性的清洗規則,利用從屬于各屬性的清洗規則形成清洗規則集,基于清洗規則集對目標數據進行清洗。由此,能夠實現數據的自動清洗,降低數據清洗的工作量和人工參與度,提高方法的復用性。圖6為本發明一具體實施例的數據清洗裝置的結構示意圖。如圖6所示,該數據清洗裝置包括數據讀取、解析和抽取模塊205,用于從文件201、數據庫202以及云端/網絡數據203中讀取數據,并識別數據模式和抽取目標模式的數據得到結構化的目標數據;屬性清洗規則管理模塊207,用于注冊、管理清洗規則,定義和維護清洗規則與屬性的從屬關系,確定清洗屬性所需的清洗規則;數據模式到屬性的映射配置模塊204,用于配置并存儲待清洗數據中數據字段到屬性的映射,對后續相同、相近模式的數據自動化復用已存儲的映射配置;清洗規則腳本、代碼生成模塊209,用于根據清洗規則集自動生成整體數據的清洗規則腳本、代碼;數據清洗執行模塊212,用于執行具體的清洗操作,獲取到待清洗的一類或多類模式的數據,以數據模式和數據量為考量因子,將原始數據拆分為多個任務,連同對應的清洗腳本、代碼分發到清洗任務單元213,分布式的進行數據清洗,并最終在清洗結果匯總模塊214匯總清洗結果數據,以同時兼容各種量級的數據;復審模塊215,用于收集被清洗的臟數據,復核審查數據清洗結果,并通過人工學習或機器學習的方式從中學習、提煉出清洗經驗形成知識,反饋至屬性清洗規則管理模塊207,以完善屬性清洗裝置。如圖6所示的數據清洗裝置的具體實施過程可以描述為:數據讀取、解析和抽取模塊205從文件201、數據庫202和云端/網絡數據203中獲取待清洗的原始數據,比如企業的員工信息數據,通過數據抽取的方式將原始數據結構化,并使原本結構化的數據保證列寬一致,得到結構化數據210,識別并提取出結構化數據210的數據模式206,比如前述表1所示的數據。數據模式到屬性的映射配置模塊204根據數據模式206及屬性清洗規則管理模塊207中預先建立的清洗規則,生成映射配置208。清洗規則腳本、代碼生成模塊209根據映射配置208自動獲取全部字段對應屬性的清洗規則集,并查詢獲取相應的清洗規則實現代碼或腳本,組裝成整個數據的清洗腳本211。清洗執行模塊212基于清洗腳本211對結構化數據210進行數據清洗。當數據量較小時,清洗執行模塊212可自行完成數據清洗;當數據量較大時,則將數據拆分成多個清洗任務單元213,交由分布式計算平臺執行具體的清洗任務,并最終由清洗結果匯總模塊214匯總每個清洗任務單元的清洗結果,輸出規范的、符合要求的數據,比如前述表4所示的數據。數據清洗完成后,復審模塊215收集發生過變更操作的數據行、列,按需或者定期復審數據,以通過人工和/或機器學習的方式從中學習出更好的經驗、知識216,并反饋至屬性清洗規則管理模塊207。通過配置字段和屬性的映射關系,以及對清洗的數據進行學習獲得經驗、知識并反饋至屬性清洗規則管理模塊,能夠在待清洗的數據模式與歷史出現過的數據模型相同或相近時,自動生成或者推薦相應的映射配置和清洗規則,減少人工的參與度。為了實現上述實施例,本發明還提出另一種數據清洗裝置,圖7為本發明一實施例提出的另一種數據清洗裝置的結構示意圖。如圖7所示,該數據清洗裝置70包括:處理器701和存儲器702。其中,處理器701通過讀取存儲器702中存儲的可執行程序代碼來運行與可執行程序代碼對應的程序,以用于實現如前述實施例所述的數據清洗方法。本實施例的數據清洗裝置,通過對待清洗的第一數據進行結構化處理得到結構化的目標數據,確定各數據字段對應的屬性以及從屬于各屬性的清洗規則,利用從屬于各屬性的清洗規則形成清洗規則集,基于清洗規則集對目標數據進行清洗。由此,能夠實現數據的自動清洗,降低數據清洗的工作量和人工參與度,提高方法的復用性。為了實現上述實施例,本發明還提出一種計算機程序產品,當計算機程序產品中的指令由處理器執行時,執行如前述實施例所述的數據清洗方法。為了實現上述實施例,本發明還提出一種非臨時性計算機可讀存儲介質,其上存儲有計算機程序,當該計算機程序被處理器執行時能夠實現如前述實施例所述的數據清洗方法。在本說明書的描述中,參考術語“一個實施例”、“一些實施例”、“示例”、“具體示例”、或“一些示例”等的描述意指結合該實施例或示例描述的具體特征、結構、材料或者特點包含于本發明的至少一個實施例或示例中。在本說明書中,對上述術語的示意性表述不必須針對的是相同的實施例或示例。而且,描述的具體特征、結構、材料或者特點可以在任一個或多個實施例或示例中以合適的方式結合。此外,在不相互矛盾的情況下,本領域的技術人員可以將本說明書中描述的不同實施例或示例以及不同實施例或示例的特征進行結合和組合。此外,術語“第一”、“第二”僅用于描述目的,而不能理解為指示或暗示相對重要性或者隱含指明所指示的技術特征的數量。由此,限定有“第一”、“第二”的特征可以明示或者隱含地包括至少一個該特征。在本發明的描述中,“多個”的含義是至少兩個,例如兩個,三個等,除非另有明確具體的限定。流程圖中或在此以其他方式描述的任何過程或方法描述可以被理解為,表示包括一個或更多個用于實現定制邏輯功能或過程的步驟的可執行指令的代碼的模塊、片段或部分,并且本發明的優選實施方式的范圍包括另外的實現,其中可以不按所示出或討論的順序,包括根據所涉及的功能按基本同時的方式或按相反的順序,來執行功能,這應被本發明的實施例所屬
技術領域
的技術人員所理解。在流程圖中表示或在此以其他方式描述的邏輯和/或步驟,例如,可以被認為是用于實現邏輯功能的可執行指令的定序列表,可以具體實現在任何計算機可讀介質中,以供指令執行系統、裝置或設備(如基于計算機的系統、包括處理器的系統或其他可以從指令執行系統、裝置或設備取指令并執行指令的系統)使用,或結合這些指令執行系統、裝置或設備而使用。就本說明書而言,"計算機可讀介質"可以是任何可以包含、存儲、通信、傳播或傳輸程序以供指令執行系統、裝置或設備或結合這些指令執行系統、裝置或設備而使用的裝置。計算機可讀介質的更具體的示例(非窮盡性列表)包括以下:具有一個或多個布線的電連接部(電子裝置),便攜式計算機盤盒(磁裝置),隨機存取存儲器(ram),只讀存儲器(rom),可擦除可編輯只讀存儲器(eprom或閃速存儲器),光纖裝置,以及便攜式光盤只讀存儲器(cdrom)。另外,計算機可讀介質甚至可以是可在其上打印所述程序的紙或其他合適的介質,因為可以例如通過對紙或其他介質進行光學掃描,接著進行編輯、解譯或必要時以其他合適方式進行處理來以電子方式獲得所述程序,然后將其存儲在計算機存儲器中。應當理解,本發明的各部分可以用硬件、軟件、固件或它們的組合來實現。在上述實施方式中,多個步驟或方法可以用存儲在存儲器中且由合適的指令執行系統執行的軟件或固件來實現。如,如果用硬件來實現和在另一實施方式中一樣,可用本領域公知的下列技術中的任一項或他們的組合來實現:具有用于對數據信號實現邏輯功能的邏輯門電路的離散邏輯電路,具有合適的組合邏輯門電路的專用集成電路,可編程門陣列(pga),現場可編程門陣列(fpga)等。本
技術領域
的普通技術人員可以理解實現上述實施例方法攜帶的全部或部分步驟是可以通過程序來指令相關的硬件完成,所述的程序可以存儲于一種計算機可讀存儲介質中,該程序在執行時,包括方法實施例的步驟之一或其組合。此外,在本發明各個實施例中的各功能單元可以集成在一個處理模塊中,也可以是各個單元單獨物理存在,也可以兩個或兩個以上單元集成在一個模塊中。上述集成的模塊既可以采用硬件的形式實現,也可以采用軟件功能模塊的形式實現。所述集成的模塊如果以軟件功能模塊的形式實現并作為獨立的產品銷售或使用時,也可以存儲在一個計算機可讀取存儲介質中。上述提到的存儲介質可以是只讀存儲器,磁盤或光盤等。盡管上面已經示出和描述了本發明的實施例,可以理解的是,上述實施例是示例性的,不能理解為對本發明的限制,本領域的普通技術人員在本發明的范圍內可以對上述實施例進行變化、修改、替換和變型。當前第1頁12
當前第1頁1 2 
網友詢問留言 已有0條留言
  • 還沒有人留言評論。精彩留言會獲得點贊!
1
韩国伦理电影