本發(fā)明的領(lǐng)域是數(shù)據(jù)代理、數(shù)據(jù)共享和訪問控制,并且具體地是隱私控制。
技術(shù)背景
以下描述包括可用于理解本發(fā)明的信息。并不承認(rèn)本文提供的任何信息都是現(xiàn)有技術(shù),或與目前要求保護(hù)的本發(fā)明有關(guān),或并不承認(rèn)明確地或隱含地引用的任何公布是現(xiàn)有技術(shù)。
今天,我們正生活在大數(shù)據(jù)時代,其中自2010年以來世界上90%的數(shù)據(jù)已經(jīng)存在。許多大數(shù)據(jù)應(yīng)用程序通過數(shù)據(jù)提供商與分析提供商之間的協(xié)作來開發(fā)。例如,ibm報告說當(dāng)分析住院患者數(shù)據(jù)時,死亡率降低。同樣,名為shoppycat的服務(wù)基于用戶朋友的愛好和興趣向社交網(wǎng)絡(luò)用戶推薦零售產(chǎn)品。所有這些實例都需要在數(shù)據(jù)提供商與數(shù)據(jù)消費者應(yīng)用程序之間進(jìn)行集成。為了促進(jìn)數(shù)據(jù)提供商與數(shù)據(jù)消費者之間的生態(tài)系統(tǒng),需要大型數(shù)據(jù)提供商開發(fā)用于使得能夠訪問其數(shù)據(jù)的安全機(jī)制。
研究人員試圖解決大數(shù)據(jù)的隱私保護(hù)問題。因此,存在許多用于數(shù)據(jù)匿名化的技術(shù)。由于非結(jié)構(gòu)化或半結(jié)構(gòu)化的大量數(shù)據(jù),所以在大數(shù)據(jù)背景下符合性變得更加復(fù)雜。此外,數(shù)據(jù)所有者可能不具有關(guān)于存儲在其服務(wù)器上的數(shù)據(jù)的敏感性的足夠知識。同樣,大數(shù)據(jù)可以具有大體積和高速度,并且因為典型的分析需求不需要所有數(shù)據(jù),這意味著對所有現(xiàn)有數(shù)據(jù)進(jìn)行結(jié)構(gòu)化和匿名化可能導(dǎo)致低效的資源使用。
為了從大數(shù)據(jù)提取價值,數(shù)據(jù)提供商通常在許多數(shù)據(jù)消費者之間共享數(shù)據(jù)。這樣,數(shù)據(jù)共享成為大數(shù)據(jù)平臺的重要特征。然而,隱私是阻礙組織實施數(shù)據(jù)共享解決方案的障礙。同樣,數(shù)據(jù)所有者傳統(tǒng)上負(fù)責(zé)在向第三方釋放數(shù)據(jù)之前準(zhǔn)備數(shù)據(jù)。為了釋放而準(zhǔn)備數(shù)據(jù)是復(fù)雜的任務(wù)并且可能成為另一個障礙。本文中的所有公布都以引用的方式并入本文,所述引用的程度就如同已明確且個別地指示將各個別公布或?qū)@暾堃砸玫姆绞讲⑷氡疚囊话?。在并入的參考文獻(xiàn)中術(shù)語的定義或使用與本文中提供的這個術(shù)語的定義不一致或相矛盾時,以本文中提供的這個術(shù)語的定義為準(zhǔn)并且參考文獻(xiàn)中的這個術(shù)語的定義不再適用。
在一些實施方案中,用于描述和要求本發(fā)明的某些實施方案的表示成分、特性(諸如濃度、反應(yīng)條件等)的量的數(shù)值在一些情況下應(yīng)理解為被術(shù)語“約”修飾。因此,在一些實施方案中,在書面描述和權(quán)利要求書中闡述的數(shù)值參數(shù)是可以隨特定的實施方案設(shè)法獲得的希望特性而變化的近似值。在一些實施方案中,應(yīng)根據(jù)報道的有效數(shù)字的數(shù)目并且通過應(yīng)用一般的舍入技術(shù)來解釋數(shù)值參數(shù)。雖然闡述本發(fā)明的一些實施方案的廣泛的范圍的數(shù)值范圍和參數(shù)是近似值,但是在特定的實例中闡述的數(shù)值盡可能精確地被報告。在本發(fā)明的一些實施方案中提供的數(shù)值可含有由在它們的相應(yīng)試驗測量中見到的標(biāo)準(zhǔn)偏差必然產(chǎn)生的某些誤差。
除非上下文另有明確指示,如在本文的描述和隨后的整個權(quán)利要求中所使用的“一個(a)”、“一種(an)”和“所述”的含義包含復(fù)數(shù)個參照對象。此外,除非上下文另有明確指示,如本文的描述中所使用的“在……中”的含義包含“在……中”和“在……上”。
本文中列舉的數(shù)值范圍僅僅希望作為單獨提及落入范圍中的每個獨立數(shù)值的簡寫方法。除非本文另外指明,否則每個單獨數(shù)值均并入在本說明書中,如同本文單獨列舉每個單獨數(shù)值一樣??砂慈魏芜m合的順序來執(zhí)行本文所述的全部方法,除非本文另外指明或上下文明顯矛盾。使用相對于本文中的某些實施方案提供的任何和所有實例或示例性語言(例如,“諸如”)的目的僅僅是希望更好地闡明本發(fā)明而不對另外要求的本發(fā)明施加限制。說明書中的任何語言都不應(yīng)解讀為指示任何未要求保護(hù)的要素是實施本發(fā)明所必需的。
本文公開的本發(fā)明的替代要素或?qū)嵤┓桨傅姆纸M不應(yīng)解讀為是限制性的。每個組的成員可單獨地提及并要求保護(hù),或以與所述組的其他成員或本文中出現(xiàn)的其他要素的任何組合形式提及并要求保護(hù)。出于便利性和/或可專利性的原因,一組的一個或多個成員可包括在一個組中或從一個組中刪掉。當(dāng)出現(xiàn)任何此類包括或刪除時,本說明書在本文中應(yīng)被認(rèn)為包含所修改的組,因此滿足所附權(quán)利要求書中使用的所有馬庫什(markush)組的書面說明。
因此,仍然需要一種系統(tǒng),其允許對大數(shù)據(jù)進(jìn)行受控訪問,允許根據(jù)需要轉(zhuǎn)換數(shù)據(jù)并且減輕數(shù)據(jù)共享的一些障礙。
附圖說明
通過以下優(yōu)選實施方案的詳細(xì)描述連同附圖,本發(fā)明主題的各種目的、特征、方面和優(yōu)點將變得更加明顯,在附圖中類似的數(shù)字代表類似的部件。
圖1是根據(jù)本說明書的實例的用于數(shù)據(jù)的受控共享的系統(tǒng)的框圖;
圖2是根據(jù)圖1的本說明書的示例性方法的操作中的系統(tǒng)的時序圖;并且
圖3是根據(jù)本說明書的實例的數(shù)據(jù)提供商側(cè)和數(shù)據(jù)消費者側(cè)運行時功能的流程圖。
具體實施方式
貫穿以下討論,將關(guān)于服務(wù)器、服務(wù)、接口、引擎、模塊、客戶端、對等體、門戶、平臺或由計算裝置形成的其他系統(tǒng)進(jìn)行多次參考。應(yīng)當(dāng)理解,此類術(shù)語的使用被認(rèn)為表示具有至少一個處理器(例如,asic、fpga、dsp、x86、arm、coldfire、gpu、多核處理器等)的一個或多個計算裝置,所述至少一個處理器被配置來執(zhí)行存儲在計算機(jī)可讀有形非暫時性介質(zhì)(例如,硬盤驅(qū)動器、固態(tài)驅(qū)動器、ram、閃存、rom等)上的軟件指令。例如,服務(wù)器可包括一個或多個計算機(jī),所述一個或多個計算機(jī)以滿足所描述的角色、職責(zé)或功能的方式操作為web服務(wù)器、數(shù)據(jù)庫服務(wù)器或其他類型的計算機(jī)服務(wù)器。應(yīng)當(dāng)進(jìn)一步理解,所公開的算法、過程、方法或其他類型的指令集可體現(xiàn)為包括非暫時性有形計算機(jī)可讀介質(zhì)的計算機(jī)程序產(chǎn)品,所述非暫時性有形計算機(jī)可讀介質(zhì)存儲致使處理器執(zhí)行所公開步驟的指令。各種服務(wù)器、系統(tǒng)、數(shù)據(jù)庫或接口可使用標(biāo)準(zhǔn)化協(xié)議或算法來交換數(shù)據(jù),所述標(biāo)準(zhǔn)化協(xié)議或算法可能基于http、https、aes、公共-私人密鑰交換、web服務(wù)apis、已知的金融查詢協(xié)議或其他電子信息交換方法??稍诜纸M交換網(wǎng)絡(luò)、互聯(lián)網(wǎng)、lan、wan、vpn或其他類型的分組交換網(wǎng)絡(luò)上進(jìn)行數(shù)據(jù)交換。
應(yīng)當(dāng)理解,本發(fā)明主題的系統(tǒng)和方法提供各種技術(shù)效果,包括提供數(shù)據(jù)訪問和分析功能,而不需要復(fù)制、鏡像處理或傳輸大型數(shù)據(jù)源以供客戶端使用。
以下討論提供本發(fā)明主題的許多示例性實施方案。盡管每個實施方案表示發(fā)明元素的單個組合,但是本發(fā)明主題被認(rèn)為包括所公開元素的所有可能組合。因此,如果一個實施方案包括元素a、b和c,并且第二實施方案包括元素b和d,那么即使沒有明確公開,本發(fā)明主題也被認(rèn)為包括a、b、c或d的其他剩余組合。
如本文所使用的并且除非上下文另有規(guī)定,術(shù)語“耦合到”旨在包括直接耦合(其中彼此耦合的兩個元件彼此接觸)和間接耦合(其中至少一個附加元件位于兩個元件之間)。因此,同義地使用術(shù)語“耦合到”和“與……耦合”。
如應(yīng)用于受控數(shù)據(jù)共享的本發(fā)明主題的各方面在本發(fā)明人的論文“towardanecosystemforprecisionsharingofsegmentedbigdata”、“enablingaenhanceddata-as-a-serviceecosystem”和“aruntimesharingmechanismforbigdataplatforms”中、以及在美國專利公開號us2015-0288669a1中進(jìn)行描述,以上所有以引用的方式整體并入本文。
術(shù)語“大數(shù)據(jù)”通常用于描述具有相對大尺寸和復(fù)雜度的數(shù)據(jù)集合,以使得在給定計算能力(例如,可用的數(shù)據(jù)庫管理工具和處理能力)的情況下,難以在合理時間內(nèi)分析并處理數(shù)據(jù)。因此,取決于處理實體處理數(shù)據(jù)的能力,術(shù)語“大數(shù)據(jù)”可指以千兆字節(jié)、太字節(jié)、千兆兆字節(jié)、百億億字節(jié)或更大字節(jié)來測量的數(shù)據(jù)集合。如本文所使用的并且除非上下文另有規(guī)定,術(shù)語“大數(shù)據(jù)”旨在是指存儲在一個或多個存儲位置中的數(shù)據(jù)集合,并且可包括具有任何大小的數(shù)據(jù)集合。因此,除非上下文另有規(guī)定,否則本文中術(shù)語“大數(shù)據(jù)”的使用并不旨在將本發(fā)明主題的適用性限制于:特定數(shù)據(jù)大小范圍、數(shù)據(jù)大小最小值、數(shù)據(jù)大小最大值、或特定量數(shù)據(jù)復(fù)雜性、或者可擴(kuò)展成數(shù)字?jǐn)?shù)據(jù)、文本數(shù)據(jù)、圖像數(shù)據(jù)、音頻數(shù)據(jù)、視頻數(shù)據(jù)等的數(shù)據(jù)類型。
本發(fā)明主題可使用任何合適的數(shù)據(jù)庫或其他數(shù)據(jù)集合管理技術(shù)來實現(xiàn)。例如,本發(fā)明主題可在諸如一般基于hadoop的技術(shù)、mapreduce、hbase、pig、hive、storm、spark等的平臺上實現(xiàn)。
在本說明書中,提供用于受控數(shù)據(jù)共享的方法和系統(tǒng)。根據(jù)公開技術(shù)的在不同數(shù)據(jù)消費者之間的數(shù)據(jù)共享可免除數(shù)據(jù)提供商對數(shù)據(jù)進(jìn)行轉(zhuǎn)換或匿名化的任務(wù)。根據(jù)一個實例,數(shù)據(jù)提供商限定一個或多個數(shù)據(jù)隱私策略并且允許訪問到一名或多名數(shù)據(jù)消費者(也稱為“最終用戶”或“分析者”)的數(shù)據(jù)。每個數(shù)據(jù)消費者提交包括至少兩個階段的分析任務(wù)(作業(yè)):數(shù)據(jù)匿名化和數(shù)據(jù)挖掘。在一個實例中,作業(yè)在靠近實際數(shù)據(jù)源的數(shù)據(jù)提供商的基礎(chǔ)設(shè)施上進(jìn)行,從而減少了網(wǎng)絡(luò)瓶頸,同時在數(shù)據(jù)提供商的前提下允許保持?jǐn)?shù)據(jù)。數(shù)據(jù)提供商驗證數(shù)據(jù)被根據(jù)隱私策略轉(zhuǎn)換或匿名化。在驗證后,允許數(shù)據(jù)消費者對數(shù)據(jù)挖掘階段結(jié)果進(jìn)行訪問??赏ㄟ^使用允許在靈活、安全的環(huán)境中發(fā)現(xiàn)和共享的web服務(wù)來將數(shù)據(jù)提供商和數(shù)據(jù)消費者的生態(tài)系統(tǒng)松散耦合。
圖1提供本說明書的示例性生態(tài)系統(tǒng)100的概況。生態(tài)系統(tǒng)100包括一個或多個電子裝置108(在圖1中示出單個電子裝置108-a)(例如,用戶或數(shù)據(jù)分析員通過其訪問系統(tǒng))、數(shù)據(jù)提供商服務(wù)器102、以及一個或多個數(shù)據(jù)消費者服務(wù)器104(再次,圖1中示出單個數(shù)據(jù)消費者服務(wù)器104-a)。在其他實例中,生態(tài)系統(tǒng)100還可包括在電子裝置108、數(shù)據(jù)消費者服務(wù)器104與數(shù)據(jù)提供商服務(wù)器102之間的一個或多個轉(zhuǎn)售商(未示出)。
在各實施方案中,生態(tài)系統(tǒng)100可包括多于一個數(shù)據(jù)提供商服務(wù)器102,所述數(shù)據(jù)提供商服務(wù)器102可通信地連接到任何數(shù)據(jù)消費者服務(wù)器104和/或電子裝置108。因此,電子裝置108的用戶接口可通過數(shù)據(jù)消費者服務(wù)器104訪問由數(shù)據(jù)提供商服務(wù)器102提供的數(shù)據(jù)。
生態(tài)系統(tǒng)100的每個部件(即電子裝置108、數(shù)據(jù)提供商服務(wù)器102、數(shù)據(jù)消費者服務(wù)器104等)可通過一個或多個數(shù)據(jù)交換網(wǎng)絡(luò)(例如,互聯(lián)網(wǎng)、蜂窩網(wǎng)、以太網(wǎng)、lan、wan、vpn、有線、無線、近程、遠(yuǎn)程等)彼此通信耦合。
數(shù)據(jù)提供商服務(wù)器102可包括被編程來執(zhí)行數(shù)據(jù)提供商的功能的一個或多個計算裝置,所述功能包括從數(shù)據(jù)消費者服務(wù)器104(例如,通過電子裝置108)接收數(shù)據(jù)挖掘請求,以及使結(jié)果返回對應(yīng)的數(shù)據(jù)消費者服務(wù)器104和/或電子裝置108。因此,數(shù)據(jù)提供商服務(wù)器102可包括:至少一個處理器;存儲計算機(jī)可讀指令的至少一個非暫時性計算機(jī)可讀存儲介質(zhì)(例如,ram、rom、閃存驅(qū)動器、固態(tài)存儲器、硬盤驅(qū)動器、光學(xué)介質(zhì)等),所述計算機(jī)可讀指令致使處理器執(zhí)行本發(fā)明主題的功能和過程;以及通信接口,所述通信接口使得數(shù)據(jù)提供商服務(wù)器102能夠執(zhí)行與電子裝置108和/或數(shù)據(jù)消費者服務(wù)器104的數(shù)據(jù)交換。數(shù)據(jù)提供商服務(wù)器102用來執(zhí)行其功能的計算機(jī)可讀指令可以是數(shù)據(jù)庫管理系統(tǒng)指令,所述數(shù)據(jù)庫管理系統(tǒng)指令允許數(shù)據(jù)提供商服務(wù)器102訪問、檢索所請求的信息并且向授權(quán)方呈現(xiàn)所請求的信息、訪問控制功能等。數(shù)據(jù)提供商服務(wù)器102可包括輸入/輸出接口(例如,鍵盤、鼠標(biāo)、觸摸屏、顯示器、聲音輸出裝置、麥克風(fēng)、傳感器等),所述輸入/輸出接口允許管理員或其他授權(quán)用戶將信息輸入到數(shù)據(jù)提供商102裝置并且從數(shù)據(jù)提供商102裝置接收輸出。用作數(shù)據(jù)提供商服務(wù)器102的合適計算裝置的實例可包括服務(wù)器計算機(jī)、臺式計算機(jī)、膝上型計算機(jī)、平板電腦、平板手機(jī)、智能電話等。
數(shù)據(jù)提供商服務(wù)器102可包括電子裝置108和數(shù)據(jù)消費者服務(wù)器104可訪問的數(shù)據(jù)庫(例如,數(shù)據(jù)集合)。數(shù)據(jù)集合可存儲在以上描述的至少一個非暫時性計算機(jī)可讀存儲介質(zhì)中,或者存儲在數(shù)據(jù)提供商服務(wù)器102的處理器可訪問的單獨的非暫時性計算機(jī)可讀介質(zhì)中。在各實施方案中,數(shù)據(jù)提供商服務(wù)器102可與數(shù)據(jù)集合本身分開(例如,由不同的管理實體進(jìn)行管理)。在這些情況下,數(shù)據(jù)提供商服務(wù)器102可存儲數(shù)據(jù)集合副本,可從源數(shù)據(jù)集合以足夠的頻率更新所述數(shù)據(jù)副本以便被認(rèn)為是“當(dāng)前的”(例如,通過定期安排,通過來自源數(shù)據(jù)集合的“推送”更新等)。因此,操作數(shù)據(jù)提供商服務(wù)器102的實體或管理員可以被認(rèn)為是負(fù)責(zé)接受和進(jìn)行查詢作業(yè)的實體,而不管數(shù)據(jù)的實際所有權(quán)。
數(shù)據(jù)提供商服務(wù)器102的管理員或其他成員可評估其數(shù)據(jù)(例如,大數(shù)據(jù)),并且決定所述數(shù)據(jù)的哪些部分在某種程度上可訪問。例如,所述確定可關(guān)于將要在組織外部、在組織內(nèi)部的各種商業(yè)單元中等可用的數(shù)據(jù)部分。所述部分的大小和范圍可完全事先確定,或者可基于由數(shù)據(jù)消費者服務(wù)器104(例如,通過電子裝置108)提供的信息在運行時確定。物理數(shù)據(jù)的這些邏輯分區(qū)在本文中稱為數(shù)據(jù)源。建立數(shù)據(jù)的受限子集以用于訪問有助于數(shù)據(jù)提供商服務(wù)器102的數(shù)據(jù)訪問控制、分段和轉(zhuǎn)換/抽象化。
為了使數(shù)據(jù)(通過電子裝置108)對于用戶和數(shù)據(jù)消費者服務(wù)器104是可用的,數(shù)據(jù)提供商服務(wù)器102限定其數(shù)據(jù)源和訪問向量。數(shù)據(jù)提供商服務(wù)器102還可通過web服務(wù)api來提供關(guān)于所有可用數(shù)據(jù)源的信息(例如,提供什么數(shù)據(jù)、哪個“提供商接口”、輸入數(shù)據(jù)的格式和數(shù)據(jù)類型、數(shù)據(jù)的近似大小、成本定義等)。通過此api能夠進(jìn)行用戶與數(shù)據(jù)源的交互。在各實施方案中,可將web服務(wù)指定為是跨所有提供商標(biāo)準(zhǔn)化的,從而允許容易集成。
通過電子裝置108訪問的用戶接口可實現(xiàn)規(guī)定的“提供商接口”,并且根據(jù)一個實例,將它們的編譯代碼連同任何所需參數(shù)一起提交給提供商的web服務(wù)。在其他實例中,交互式用戶接口可在一個實例中使用布爾邏輯來通過用戶輸入填充數(shù)據(jù)字段,以使得能夠存儲、檢索和輸入作業(yè)或請求。數(shù)據(jù)分析員可通過用戶接口監(jiān)視其作業(yè)狀態(tài)或者通過同一個web服務(wù)來檢索結(jié)果。用戶接口可運行其自身客戶端以用于與web服務(wù)通信,或者使用通過軟件即服務(wù)(saas)配送模型提供的客戶端,在所述軟件即服務(wù)(saas)配送模型中通過面向客戶端的用戶接口來提交并監(jiān)視作業(yè),其中在幕后處理實際通信。
電子裝置108的用戶接口可包括一個或多個計算裝置,所述一個或多個計算裝置使得用戶或數(shù)據(jù)分析員能夠通過創(chuàng)建和提交查詢作業(yè)來訪問來自數(shù)據(jù)消費者服務(wù)器104和/或數(shù)據(jù)提供商服務(wù)器102的數(shù)據(jù)。電子裝置108可包括:至少一個處理器;至少一個非暫時性計算機(jī)可讀存儲介質(zhì)(例如,ram、rom、閃存驅(qū)動器、固態(tài)存儲器、硬盤驅(qū)動器、光學(xué)介質(zhì)等),所述非暫時性計算機(jī)可讀存儲介質(zhì)存儲致使處理器執(zhí)行本發(fā)明主題的功能和過程的計算機(jī)可讀指令;以及通信接口,所述通信接口使得電子裝置108能夠執(zhí)行與數(shù)據(jù)提供商服務(wù)器102和數(shù)據(jù)消費者服務(wù)器104的數(shù)據(jù)交換。電子裝置108還包括輸入/輸出接口(例如,鍵盤、鼠標(biāo)、觸摸屏、顯示器、聲音輸出裝置、麥克風(fēng)、傳感器等),所述輸入/輸出接口允許用戶/數(shù)據(jù)分析員通過電子裝置108將信息輸入到系統(tǒng)100中并且從系統(tǒng)100接收輸出。用作電子裝置108的合適計算裝置的實例可包括服務(wù)器、臺式計算機(jī)、膝上型計算機(jī)、平板電腦、平板手機(jī)、智能手機(jī)、智能手表或其他可穿戴設(shè)備、“瘦”客戶端、“胖”客戶端等。
為了訪問或從數(shù)據(jù)提供商服務(wù)器102獲得數(shù)據(jù),電子裝置108可創(chuàng)建查詢作業(yè)并且將其(取決于生態(tài)系統(tǒng)100的布局,直接地或通過數(shù)據(jù)消費者服務(wù)器104)提交給數(shù)據(jù)提供商102。
仍參考圖1,將理解的是,大數(shù)據(jù)系統(tǒng)100(生態(tài)系統(tǒng))對數(shù)據(jù)分析工作負(fù)荷實施隱私策略。系統(tǒng)包括圖1所示的負(fù)責(zé)提供大數(shù)據(jù)平臺和數(shù)據(jù)的數(shù)據(jù)提供商服務(wù)器102。一個或多個數(shù)據(jù)消費者服務(wù)器104開發(fā)數(shù)據(jù)挖掘請求,并將其提交給數(shù)據(jù)提供商服務(wù)器102。由數(shù)據(jù)消費者服務(wù)器104執(zhí)行的典型大數(shù)據(jù)分析過程包括數(shù)據(jù)準(zhǔn)備階段。數(shù)據(jù)準(zhǔn)備階段的一個目標(biāo)是為數(shù)據(jù)挖掘請求準(zhǔn)備數(shù)據(jù)。在此階段期間,對輸入數(shù)據(jù)進(jìn)行預(yù)處理以便提取元組(例如,其中原始數(shù)據(jù)是未結(jié)構(gòu)化的),以減少噪聲并處理缺失值(數(shù)據(jù)凈化),隨后移除不相關(guān)或冗余屬性(相關(guān)性分析),并且最后對數(shù)據(jù)進(jìn)行概括或標(biāo)準(zhǔn)化(數(shù)據(jù)轉(zhuǎn)換)。
根據(jù)本說明書的實例,數(shù)據(jù)準(zhǔn)備階段被擴(kuò)展成包括轉(zhuǎn)換(匿名化)步驟。在此步驟中,數(shù)據(jù)消費者服務(wù)器104提供針對分析工作負(fù)荷定制的匿名化。
為了防止數(shù)據(jù)外泄和強(qiáng)制執(zhí)行隱私,數(shù)據(jù)提供商服務(wù)器102可監(jiān)視數(shù)據(jù)消費者服務(wù)器104是否符合其隱私策略。數(shù)據(jù)提供商服務(wù)器102監(jiān)視匿名化過程。數(shù)據(jù)消費者服務(wù)器104以特定領(lǐng)域語言(dsl)提供作為單獨過程/作業(yè)的準(zhǔn)備功能或過程。dsl有助于降低隱私合規(guī)驗證過程的復(fù)雜性。當(dāng)數(shù)據(jù)消費者服務(wù)器104使用dsl來限定數(shù)據(jù)準(zhǔn)備功能時,它還指定提取的事實的模式。換言之,對于每個屬性,數(shù)據(jù)消費者服務(wù)器104將指定其語義,諸如城市、姓名、sin等。模式定義可類似于關(guān)系數(shù)據(jù)庫模式,并且被限定用于數(shù)據(jù)凈化階段的輸出??稍跊]有實際進(jìn)行作業(yè)的情況下通過執(zhí)行靜態(tài)分析來針對符合性檢查以dsl表達(dá)的數(shù)據(jù)準(zhǔn)備作業(yè)。在靜態(tài)分析未檢測到外泄的情況下,數(shù)據(jù)提供商服務(wù)器102隨后可對實際數(shù)據(jù)進(jìn)行dsl轉(zhuǎn)換,以檢測其是否致使違反隱私策略。數(shù)據(jù)提供商服務(wù)器102還負(fù)責(zé)驗證模式與強(qiáng)調(diào)(underline)數(shù)據(jù)相符合。下面參照預(yù)處理器模塊112討論dsl的關(guān)鍵特性。
為了降低自動私有策略驗證過程無法捕獲私人信息泄露的風(fēng)險,數(shù)據(jù)準(zhǔn)備功能可首先在包含所有先前識別的私有信息的數(shù)據(jù)子集(測試數(shù)據(jù)集)上運行。在測試數(shù)據(jù)集上檢測到故障的情況下,可拒絕數(shù)據(jù)挖掘請求或者可部署進(jìn)一步的錯誤處理技術(shù)。
由于隱私合規(guī)的驗證可與數(shù)據(jù)挖掘請求的執(zhí)行并行完成,并且因為大數(shù)據(jù)作業(yè)通常運行很長時間,所以驗證過程未必在整個過程中引入顯著延遲。
此外,數(shù)據(jù)挖掘作業(yè)通常需要混合來自不同源的數(shù)據(jù)。在這種情況下,需要創(chuàng)建若干數(shù)據(jù)準(zhǔn)備作業(yè)。數(shù)據(jù)提供商服務(wù)器102可順序地驗證每個數(shù)據(jù)準(zhǔn)備過程。這種策略可使數(shù)據(jù)集免受鏈接攻擊,即使其增加了復(fù)雜性。
數(shù)據(jù)提供商服務(wù)器102的主要部件包括:restapi110、預(yù)處理器模塊112、驗證器模塊114、作業(yè)控制器模塊116、包括一個或多個數(shù)據(jù)庫120-a、120-b等的大數(shù)據(jù)平臺118、數(shù)據(jù)上下文策略模塊122和數(shù)據(jù)共享服務(wù)模塊124。
restapi110是允許數(shù)據(jù)消費者服務(wù)器104將分析作業(yè)與對應(yīng)的數(shù)據(jù)準(zhǔn)備作業(yè)一起提交的“restful”api。數(shù)據(jù)消費者服務(wù)器104可使用restapi110來跟蹤作業(yè)進(jìn)度并且獲取數(shù)據(jù)挖掘請求的結(jié)果。在一個實例中,restapi110是大數(shù)據(jù)平臺118的唯一接入點。
預(yù)處理器模塊112負(fù)責(zé)使用以dsl語言程序或其他合適程序定義的轉(zhuǎn)換來將原始數(shù)據(jù)轉(zhuǎn)換為匿名化數(shù)據(jù)??稍隍炞C器模塊114(以下更詳細(xì)討論)使用靜態(tài)分析驗證dsl并且增加轉(zhuǎn)換以包括補(bǔ)充信息之后,調(diào)用預(yù)處理器模塊112。在轉(zhuǎn)換過程期間,預(yù)處理器模塊112將所產(chǎn)生的數(shù)據(jù)集(包括補(bǔ)充數(shù)據(jù))發(fā)送到驗證器模塊114,并且隨后發(fā)送到數(shù)據(jù)挖掘請求。
預(yù)處理器模塊112是數(shù)據(jù)解析器和過濾部件。預(yù)處理器模塊112的輸入是非結(jié)構(gòu)化數(shù)據(jù)流和使用dsl指定的轉(zhuǎn)換。輸出是元組流。當(dāng)一次通過的數(shù)據(jù)足以實現(xiàn)隱私保護(hù)時,那么預(yù)處理器模塊112可遵循流式傳輸范例。當(dāng)使用流式傳輸時,典型的數(shù)據(jù)流是讀取一個輸入記錄,對其進(jìn)行解析,對其進(jìn)行轉(zhuǎn)換,并且并行地向驗證者模塊114發(fā)送所有中間記錄和最終記錄。在此過程不足以滿足隱私目標(biāo)的情況下,可能需要第二傳遞數(shù)據(jù)。
預(yù)處理器模塊112滿足數(shù)據(jù)消費者服務(wù)器104的數(shù)據(jù)準(zhǔn)備需求的能力取決于dsl的靈活性和表達(dá)性。同時,為了使驗證器模塊114有效地評估給定數(shù)據(jù)轉(zhuǎn)換的正確性并且限制可能攻擊的向量(諸如加密數(shù)據(jù)或通過網(wǎng)絡(luò)發(fā)送數(shù)據(jù)),語言應(yīng)該是簡單和受限的。根據(jù)本說明書的一個實例,已識別針對dsl語言的以下要求:1)指定轉(zhuǎn)換的每個階段(諸如數(shù)據(jù)解析、匿名化等)的開始和結(jié)束的能力;2)指定提取的元組的模式以及指定將如何對元組進(jìn)行匿名化的能力;3)以程序化方式指定驗證器模塊114所需的附加信息的能力;以及4)包括用于簡化匿名化過程的高級抽象化。dsl語言作為用于限定模式的混合聲明樣式,以及用于指定如何從非結(jié)構(gòu)化數(shù)據(jù)提取信息和從非結(jié)構(gòu)化數(shù)據(jù)提取什么信息的程序樣式。
驗證器模塊114執(zhí)行dsl程序的靜態(tài)分析,以驗證dsl轉(zhuǎn)換產(chǎn)生與數(shù)據(jù)上下文策略相符的數(shù)據(jù)集。取決于基礎(chǔ)策略,驗證器模塊114可修改dsl程序來附加額外轉(zhuǎn)換以遵守策略。驗證器模塊114還負(fù)責(zé)驗證dsl正確地限定從輸入數(shù)據(jù)集提取的事實。驗證器模塊114以流式傳輸和成批數(shù)據(jù)處理樣式運行,并且可與數(shù)據(jù)挖掘請求并行運行。
作業(yè)控制器模塊116負(fù)責(zé)協(xié)調(diào)數(shù)據(jù)提供商服務(wù)器102的不同部件。作業(yè)控制器模塊116還負(fù)責(zé)監(jiān)視作業(yè)執(zhí)行、安排預(yù)處理器模塊112上的數(shù)據(jù)處理任務(wù)的執(zhí)行、以及在完成數(shù)據(jù)準(zhǔn)備過程時安排驗證任務(wù)。作業(yè)控制器模塊116還將來自預(yù)處理器模塊112的輸出數(shù)據(jù)饋送到對應(yīng)的數(shù)據(jù)挖掘請求。此外,作業(yè)控制器模塊116負(fù)責(zé)安排測試數(shù)據(jù)集上的數(shù)據(jù)準(zhǔn)備處理,以用于驗證隱私策略。為了實現(xiàn)這一點,以下更詳細(xì)地描述的,作業(yè)控制器模塊116可具有與數(shù)據(jù)共享服務(wù)模塊124的套綁集成。
大數(shù)據(jù)平臺118提供對存儲數(shù)據(jù)的訪問和對分布式處理的訪問。例如,hadoop生態(tài)系統(tǒng)是大數(shù)據(jù)平臺的流行實例。
數(shù)據(jù)上下文策略模塊122是一種服務(wù),所述服務(wù)管理關(guān)于特定數(shù)據(jù)類型(例如,sin、姓名、地址、年齡等)的隱私和訪問策略,并且可專用于數(shù)據(jù)提供商的屬性或群組設(shè)置。例如,訪問策略可能需要數(shù)據(jù)消費者僅可訪問城市和電影?;蛘撸瑪?shù)據(jù)挖掘請求應(yīng)當(dāng)符合10-匿名。在一個實例中,xcaml4是用于定義此類數(shù)據(jù)上下文策略的靈活方法。數(shù)據(jù)提供商服務(wù)器102可被配置來要求使用數(shù)據(jù)共享設(shè)施的附加訪問控制策略。許多數(shù)據(jù)共享策略包含在本說明書的范圍內(nèi)。
數(shù)據(jù)共享服務(wù)模塊124負(fù)責(zé)啟用對共享什么數(shù)據(jù)的細(xì)粒度控制。數(shù)據(jù)共享服務(wù)模塊124使得分析任務(wù)能夠在共同位于或靠近數(shù)據(jù)提供商服務(wù)器102的基礎(chǔ)設(shè)施上進(jìn)行。數(shù)據(jù)共享服務(wù)模塊124還提供用于授權(quán)和認(rèn)證數(shù)據(jù)消費者服務(wù)器104的服務(wù)。用于分段數(shù)據(jù)的精確共享的工具是數(shù)據(jù)共享服務(wù)模塊124的一個實例(在于2014年4月7日提交的美國臨時申請?zhí)?1/976,206中公開,所述專利申請通過引用以其整體并入本文)。
數(shù)據(jù)提供商服務(wù)器102自動存儲所有提交的dsl轉(zhuǎn)換以用于將來審核。此外,由于dsl轉(zhuǎn)換包含關(guān)于數(shù)據(jù)消費者服務(wù)器104所需的提取數(shù)據(jù)的類型的信息的事實,所以批準(zhǔn)的dsl轉(zhuǎn)換可用于構(gòu)造并改進(jìn)測試數(shù)據(jù)集。以下進(jìn)一步詳細(xì)討論構(gòu)造測試數(shù)據(jù)集。
為了防止對敏感數(shù)據(jù)的未授權(quán)訪問,可部署安全保護(hù)來防止第三方代碼(諸如數(shù)據(jù)挖掘作業(yè)或數(shù)據(jù)準(zhǔn)備過程)由數(shù)據(jù)提供商服務(wù)器102使用例如網(wǎng)絡(luò)通信信道來接收。
驗證器模塊114負(fù)責(zé)驗證dsl和數(shù)據(jù)集兩者與數(shù)據(jù)提供商服務(wù)器102策略的符合性。根據(jù)本說明書的一個實例,數(shù)據(jù)提供商服務(wù)器102具有用于解決違反策略的兩種方式。第一種方式是在發(fā)現(xiàn)第一次違反時取消作業(yè)。由于大量數(shù)據(jù)并且因為并非所有策略都需要取消,所以這種方法可能并非在所有情況下都是實用的。在某些情況下,用于過濾違反策略的數(shù)據(jù)的替代性方法可能是更實用的。本發(fā)明的系統(tǒng)可適應(yīng)針對一般策略違反的兩種方法。
驗證器模塊114包括一個或多個獨立部件,諸如dsl驗證器和增強(qiáng)器、模式驗證器和匿名化驗證器。
dsl驗證器和增強(qiáng)器是試圖發(fā)現(xiàn)不符合數(shù)據(jù)提供商策略的靜態(tài)分析器。此外,此部件負(fù)責(zé)修改轉(zhuǎn)換腳本以便包括用于允許驗證隱私策略的其他信息和步驟。
模式驗證器驗證數(shù)據(jù)符合每個轉(zhuǎn)換步驟(諸如解析、過濾、泛化)上的模式。模式驗證器可以是驗證器模塊114的一部分或預(yù)處理器模塊112的一部分(在這種情境下,在數(shù)據(jù)清理步驟之后立即發(fā)生驗證)。當(dāng)模式驗證器模塊包括在預(yù)處理器模塊112中時,網(wǎng)絡(luò)流量減少。這還允許過濾不符合模式的數(shù)據(jù)字段。由于模式驗證器檢查實際數(shù)據(jù)是否符合特定要求的數(shù)據(jù)類型,所以數(shù)據(jù)提供商服務(wù)器102可以開發(fā)用于驗證這一點的規(guī)則。可使用開源數(shù)據(jù)庫(諸如wordnet、freebase等)來開發(fā)許多驗證規(guī)則。由于模式驗證器可能需要用于數(shù)據(jù)與模式之間的驗證的大量時間,為了避免延遲,模式驗證器可以在預(yù)處理器模塊112外部運行。
匿名化驗證器可以被部署為單獨過程或者預(yù)處理器模塊112的最終步驟的一部分。匿名化驗證器執(zhí)行以下動作:1)確保來自數(shù)據(jù)準(zhǔn)備過程的數(shù)據(jù)解析步驟(從非結(jié)構(gòu)化數(shù)據(jù)/半結(jié)構(gòu)化數(shù)據(jù)提取元組)未修改原始數(shù)據(jù)。這種測試減輕某種重新映射/編碼攻擊,其中私人數(shù)據(jù)可使用非私人數(shù)據(jù)來編碼;2)驗證所構(gòu)造的數(shù)據(jù)集是否滿足數(shù)據(jù)提供商的隱私策略。這種測試取決于所需的匿名化方法。例如,在k-匿名的情況下,測試驗證包含在匿名化數(shù)據(jù)集中的用于每個人的元組無法與其元組也出現(xiàn)在匿名化數(shù)據(jù)集中的至少k-1個個體區(qū)分開。當(dāng)數(shù)據(jù)挖掘請求消耗來自不同數(shù)據(jù)源的數(shù)據(jù)時,那么驗證器模塊114可以基于從不同源提取的信息的構(gòu)成來驗證匿名化。因此,此生態(tài)系統(tǒng)可以與其他類似的生態(tài)系統(tǒng)聯(lián)合使用。
用于防止私人信息泄漏的附加任選步驟是評估測試數(shù)據(jù)集上的數(shù)據(jù)準(zhǔn)備過程。在這種評估期間,驗證器模塊114可以檢查私人信息的任何部分是否出現(xiàn)在構(gòu)造的元組的元素中。根據(jù)一個實例,數(shù)據(jù)消費者服務(wù)器104有義務(wù)指定將要提取的所有個人信息。為了驗證這一點并且確保轉(zhuǎn)換過程是正確的,系統(tǒng)100可以在作為原始數(shù)據(jù)集的子集的測試數(shù)據(jù)集上運行數(shù)據(jù)準(zhǔn)備過程連同驗證過程。對于每個測試數(shù)據(jù)集,存在包括關(guān)于個人識別字段和已知屬性及其類型的信息的元數(shù)據(jù)。當(dāng)驗證器模塊114具有在預(yù)處理之后構(gòu)造的元數(shù)據(jù)和數(shù)據(jù)集時,所述驗證器模塊114可以更好地驗證匿名化以及數(shù)據(jù)消費者服務(wù)器104是否正確地指定可識別信息和模式與數(shù)據(jù)集之間的相關(guān)性。
應(yīng)當(dāng)理解,所公開的實例引入靈活性和數(shù)據(jù)挖掘效率。轉(zhuǎn)換或匿名化步驟可以是分散的,以使得數(shù)據(jù)消費者(最終用戶或分析員)僅需要具有關(guān)于期望數(shù)據(jù)結(jié)構(gòu)的足夠信息,并且知道如何對數(shù)據(jù)集進(jìn)行匿名化并仍獲得有意義的結(jié)果。數(shù)據(jù)生產(chǎn)者驗證由數(shù)據(jù)消費者提出的預(yù)處理和匿名化是否符合隱私策略或其他策略。
所公開的技術(shù)還可避免在授予對數(shù)據(jù)消費者的訪問之前構(gòu)造特別的、匿名化的數(shù)據(jù)集。因為不需要生成存儲密集或過期的數(shù)據(jù)集,所以這可以改善存儲利用率,并且可以簡化匿名化數(shù)據(jù)集的維護(hù)(諸如與更新數(shù)據(jù)的同步化以及未使用數(shù)據(jù)的匿名化數(shù)據(jù)集的構(gòu)造)。所公開的技術(shù)還可以提供在運行時或按需創(chuàng)建匿名化數(shù)據(jù)集,并且僅用于數(shù)據(jù)消費者針對特定分析任務(wù)所需的數(shù)據(jù)。
根據(jù)所公開的實例,數(shù)據(jù)提供商將包括匿名化功能的數(shù)據(jù)預(yù)處理委派給數(shù)據(jù)消費者。數(shù)據(jù)提供商的責(zé)任是在數(shù)據(jù)消費者被授權(quán)訪問數(shù)據(jù)挖掘請求的結(jié)果之前,驗證數(shù)據(jù)被預(yù)處理并且充分匿名化。一般來說,因為匿名化在計算上可能是昂貴的,所以在向第三方委派匿名化時,數(shù)據(jù)提供商更愿意共享數(shù)據(jù)。例如,構(gòu)造具有最小抑制信息的k-匿名數(shù)據(jù)集是一個np困難問題,然而驗證數(shù)據(jù)是k-匿名是一個瑣碎和多項式的問題。
應(yīng)當(dāng)理解,k-匿名是可用于根據(jù)本說明書中公開的方法和系統(tǒng)的數(shù)據(jù)匿名化的技術(shù)的實例。在不脫離本說明書范圍的情況下,相同的方法可以與不同的匿名化技術(shù)一起使用。術(shù)語“匿名化”的使用通常是指從數(shù)據(jù)集移除或保護(hù)個人可識別信息的過程。
類似地,匿名化是可根據(jù)本說明書中公開的方法和系統(tǒng)使用的轉(zhuǎn)換的實例。本說明書不限于數(shù)據(jù)集的匿名化,并且應(yīng)當(dāng)理解,術(shù)語“轉(zhuǎn)換”的使用可擴(kuò)展到數(shù)據(jù)的任何過濾、變換或其他轉(zhuǎn)化。
圖2提供由數(shù)據(jù)消費者服務(wù)器104(例如,通過電子裝置108)生成的數(shù)據(jù)挖掘請求(分析或查詢作業(yè)400,圖2中未示出)的說明性實例。在200處,通過由數(shù)據(jù)提供商服務(wù)器102提供的restapi110創(chuàng)建查詢作業(yè),并將其轉(zhuǎn)發(fā)到作業(yè)控制器模塊116。查詢作業(yè)400由兩部分組成:轉(zhuǎn)換部分401和分析部分402。在204處,作業(yè)控制器模塊116分析轉(zhuǎn)換部分401,并且隨后查詢數(shù)據(jù)上下文策略模塊122。在206處,數(shù)據(jù)上下文策略模塊122以上下文策略來響應(yīng)。在208處,作業(yè)控制器模塊116隨后將轉(zhuǎn)換部分401和上下文策略傳遞到驗證器模塊114。驗證器模塊驗證轉(zhuǎn)換部分401符合上下文策略,并且在一個實例中增強(qiáng)轉(zhuǎn)換以便符合上下文策略。隨后將增強(qiáng)的轉(zhuǎn)換返回作業(yè)控制器模塊116,所述作業(yè)控制器模塊116隨后將所述增強(qiáng)的轉(zhuǎn)換轉(zhuǎn)發(fā)到預(yù)處理器模塊112。在214處,預(yù)處理器模塊112轉(zhuǎn)換數(shù)據(jù),并且需要來自數(shù)據(jù)共享服務(wù)模塊124的數(shù)據(jù)流。在216處,將流返回作業(yè)控制器模塊116,在222處,所述作業(yè)控制器模塊116通過請求提交分析部分402。數(shù)據(jù)共享服務(wù)模塊124開始處理分析部分402,并且在224處將作業(yè)跟蹤器id返回restapi110。數(shù)據(jù)消費者服務(wù)器104現(xiàn)在可在226處通過請求來查詢分析部分402的進(jìn)展,并且可在228處通過輸出url恢復(fù)狀態(tài)。最后,當(dāng)數(shù)據(jù)共享服務(wù)模塊完成處理分析作業(yè)(402)時,所述數(shù)據(jù)共享服務(wù)模塊在232處關(guān)閉數(shù)據(jù)流,并且在234處驗證匿名化之后,在240處將結(jié)果返回客戶端。
圖3中示出流程圖,所述流程圖示出受控數(shù)據(jù)共享的所公開方法的實例。此方法可通過由例如數(shù)據(jù)提供商服務(wù)器102和/或數(shù)據(jù)消費者服務(wù)器104的處理器執(zhí)行的應(yīng)用或軟件來執(zhí)行。所述方法可包含比所示出和/或描述的附加的或更少的過程,并且可以以不同的順序執(zhí)行??捎芍辽僖粋€處理器執(zhí)行以用于執(zhí)行所述方法的計算機(jī)可讀代碼可存儲在計算機(jī)可讀存儲介質(zhì)(諸如非暫時性計算機(jī)可讀介質(zhì))中。
參考圖3,方法300在305處開始,并且在310處,數(shù)據(jù)消費者服務(wù)器104生成數(shù)據(jù)挖掘請求。在315處,數(shù)據(jù)消費者服務(wù)器104生成數(shù)據(jù)轉(zhuǎn)換請求。在320處,數(shù)據(jù)提供商服務(wù)器102通過網(wǎng)絡(luò)接收請求,并且在325處,驗證數(shù)據(jù)轉(zhuǎn)換請求與數(shù)據(jù)策略(諸如匿名化策略)一致。如果在330處數(shù)據(jù)提供商服務(wù)器102批準(zhǔn)數(shù)據(jù)轉(zhuǎn)換請求,那么在335處,根據(jù)已經(jīng)針對數(shù)據(jù)策略驗證的經(jīng)驗證的數(shù)據(jù)轉(zhuǎn)換函數(shù)來處理數(shù)據(jù)挖掘請求。在340處,驗證數(shù)據(jù)挖掘請求的結(jié)果(已經(jīng)根據(jù)數(shù)據(jù)策略轉(zhuǎn)換的來自大數(shù)據(jù)平臺118的數(shù)據(jù))并且/或者將其提供給數(shù)據(jù)消費者服務(wù)器104。如果未批準(zhǔn)請求或者驗證失敗,那么在345處,錯誤處理例程可向數(shù)據(jù)消費者服務(wù)器104提供反饋或其他響應(yīng)。在350處,所述方法結(jié)束。
在步驟340處顯示電子裝置108的輸出,并且可以以表格、文本、圖形、條形、圖表、地圖和其他視覺格式來呈現(xiàn)電子裝置108的輸出。輸出可包括這些視覺元素中的一個或多個,并且可以是交互式的。例如,在電子裝置108的觸摸屏(或其他顯示器)上的與數(shù)據(jù)集結(jié)果相關(guān)聯(lián)的位置處進(jìn)行觸摸(或點擊)可以致使執(zhí)行分類或過濾功能。響應(yīng)于觸摸事件,可動態(tài)地更新電子裝置108的顯示器。在此方面,根據(jù)一個實例,在一個位置處進(jìn)行觸摸可以動態(tài)地更新連接到與所述觸摸(或點擊)相關(guān)聯(lián)的元素的所有元素(無論是通過分類、過濾等)。
有經(jīng)驗的讀者將理解,本說明書的示例性生態(tài)系統(tǒng)100可適于捕獲并跟蹤由訪問系統(tǒng)的用戶或數(shù)據(jù)分析員在電子裝置108處進(jìn)行的用戶交互或事件。此類事件可擴(kuò)展到數(shù)據(jù)消費并且可包括與每個事件或交互相關(guān)的分析數(shù)據(jù),諸如訪問的內(nèi)容源、應(yīng)用的匿名化技術(shù)、日期和時間信息、位置信息、內(nèi)容信息、用戶裝置標(biāo)識符等。可以以指定間隔、或者在發(fā)生閾值數(shù)量的事件時和/或在其他時間定期地捕獲并監(jiān)視與使用會話相關(guān)的信息。根據(jù)一個實例,與使用會話相關(guān)的信息可由數(shù)據(jù)提供商服務(wù)器102存儲。
一個或多個計算機(jī)的系統(tǒng)可以被配置來借助于在系統(tǒng)上安裝軟件、固件、硬件或其組合來執(zhí)行特定操作或動作,所述軟件、固件、硬件或其組合在操作中致使系統(tǒng)執(zhí)行動作。一個或多個計算機(jī)程序可被配置來借助于包括指令來執(zhí)行特定操作或動作,所述指令在由數(shù)據(jù)處理設(shè)備執(zhí)行時致使設(shè)備執(zhí)行動作。一個大體方面包括一種方法,所述方法包括以下步驟:在包括第一處理器、第一存儲器和第一網(wǎng)絡(luò)接口裝置的數(shù)據(jù)消費者服務(wù)器處。所述方法還包括生成數(shù)據(jù)挖掘請求。所述方法還包括根據(jù)數(shù)據(jù)策略生成與數(shù)據(jù)挖掘請求相關(guān)聯(lián)的數(shù)據(jù)轉(zhuǎn)換請求。所述方法還包括:在數(shù)據(jù)提供商服務(wù)器處,通過網(wǎng)絡(luò)接收數(shù)據(jù)挖掘請求和數(shù)據(jù)轉(zhuǎn)換請求;針對數(shù)據(jù)策略驗證數(shù)據(jù)轉(zhuǎn)換請求;響應(yīng)于驗證來批準(zhǔn)數(shù)據(jù)挖掘請求;以及當(dāng)批準(zhǔn)數(shù)據(jù)挖掘請求時,在數(shù)據(jù)消費者服務(wù)器處響應(yīng)于數(shù)據(jù)挖掘請求而從數(shù)據(jù)源接收數(shù)據(jù),并且根據(jù)數(shù)據(jù)轉(zhuǎn)換請求來轉(zhuǎn)換所接收的數(shù)據(jù),所述數(shù)據(jù)提供商服務(wù)器包括第二處理器、第二存儲器和第二網(wǎng)絡(luò)接口裝置,所述數(shù)據(jù)提供商服務(wù)器維護(hù)數(shù)據(jù)源并且通過網(wǎng)絡(luò)連接到數(shù)據(jù)消費者服務(wù)器。此方面的其他實施方案包括將對應(yīng)的計算機(jī)系統(tǒng)、設(shè)備和計算機(jī)程序記錄在一個或多個計算機(jī)存儲裝置上,所述一個或多個計算機(jī)存儲裝置各自被配置來執(zhí)行所述方法的動作。
實現(xiàn)方式可包括以下特征中的一個或多個。所述方法還包括以下步驟:在包括處理器、存儲器、網(wǎng)絡(luò)接口和顯示器的電子裝置處,響應(yīng)于數(shù)據(jù)挖掘請求來接收數(shù)據(jù);響應(yīng)于數(shù)據(jù)挖掘請求來基于數(shù)據(jù)生成結(jié)果視圖;以及在顯示器上提供結(jié)果視圖。所述方法,其中數(shù)據(jù)源包括非結(jié)構(gòu)化數(shù)據(jù),并且提供數(shù)據(jù)的步驟還包括以下步驟:預(yù)處理數(shù)據(jù)以便提取元組、對數(shù)據(jù)進(jìn)行數(shù)據(jù)凈化以便減少噪聲并處理缺失值、從數(shù)據(jù)移除不相關(guān)和冗余的屬性、對數(shù)據(jù)進(jìn)行標(biāo)準(zhǔn)化、以及根據(jù)數(shù)據(jù)策略來轉(zhuǎn)換數(shù)據(jù)。所述方法,其中數(shù)據(jù)策略是匿名化功能,并且轉(zhuǎn)換步驟在運行時處執(zhí)行。生成數(shù)據(jù)轉(zhuǎn)換請求可包括使用dsl模式來限定轉(zhuǎn)換函數(shù)。驗證可包括分析dsl以驗證轉(zhuǎn)換產(chǎn)生與數(shù)據(jù)策略相符的數(shù)據(jù)集。所描述的技術(shù)的實現(xiàn)方式可包括硬件、方法或過程、或者計算機(jī)可訪問介質(zhì)上的計算機(jī)軟件。生成數(shù)據(jù)挖掘請求可包括:在電子裝置上提供用于創(chuàng)建、標(biāo)記和檢索所存儲的數(shù)據(jù)挖掘請求的用戶接口;從用戶接口接收輸入;通過輸入填充數(shù)據(jù)挖掘請求。所存儲的數(shù)據(jù)挖掘請求可以是響應(yīng)于所存儲的數(shù)據(jù)挖掘請求而與數(shù)據(jù)分開存儲的模板數(shù)據(jù)挖掘請求。
根據(jù)一個實例,所述方法可包括以下步驟:在電子裝置的用戶接口處接收與事件相關(guān)聯(lián)的數(shù)據(jù),并且將與事件相關(guān)聯(lián)的數(shù)據(jù)存儲在由數(shù)據(jù)提供商服務(wù)器維護(hù)的分析數(shù)據(jù)存儲裝置處。此外,根據(jù)另一實例,結(jié)果視圖可包括一個或多個視覺交互元素,諸如圖表、圖形和地圖。根據(jù)此實例,所述方法可包括:接收與視覺交互元素相關(guān)聯(lián)的輸入、應(yīng)用過濾功能和/或分類功能、以及在顯示器上動態(tài)更新結(jié)果視圖。
一個大體方面包括存儲指令的至少一個非暫時性計算機(jī)可讀存儲介質(zhì),所述指令在由至少一個處理器執(zhí)行時,致使至少一個處理器:通過網(wǎng)絡(luò)接收數(shù)據(jù)挖掘請求和數(shù)據(jù)轉(zhuǎn)換請求;針對數(shù)據(jù)策略驗證數(shù)據(jù)轉(zhuǎn)換請求;響應(yīng)于驗證,批準(zhǔn)數(shù)據(jù)挖掘請求;以及當(dāng)批準(zhǔn)數(shù)據(jù)挖掘請求時,響應(yīng)于數(shù)據(jù)挖掘請求從數(shù)據(jù)源提供數(shù)據(jù),以用于根據(jù)數(shù)據(jù)轉(zhuǎn)換請求來進(jìn)行轉(zhuǎn)換。此方面的其他實施方案包括將對應(yīng)的計算機(jī)系統(tǒng)、設(shè)備和計算機(jī)程序記錄在一個或多個計算機(jī)存儲裝置上,所述一個或多個計算機(jī)存儲裝置各自被配置來執(zhí)行所述方法的動作。
對于本領(lǐng)域技術(shù)人員顯而易見的是,在不脫離本文的發(fā)明概念的情況下,除了已描述的那些之外的更多修改是可能的。因此,除了以所附權(quán)利要求的精神之外,本發(fā)明主題不受限制。此外,在解釋說明書和權(quán)利要求書時,所有術(shù)語應(yīng)當(dāng)以與上下文一致的最廣泛的可能方式來解釋。具體地,術(shù)語“包括”和“包含”應(yīng)被解釋為:是指各元件、各部件或非排他方式的各步驟,指示可能存在或被利用的所標(biāo)記的元件、部件或步驟,或者與沒有標(biāo)記的其他元件、部件或步驟的組合。在說明書權(quán)利要求是指選自由a、b、c……和n組成的組中的某物的至少一個時,文本應(yīng)當(dāng)被解釋為僅需要來自所述組的一個元素,而不是a加n、或b加n等。
權(quán)利要求書(按照條約第19條的修改)
1.一種方法,其包括以下步驟:
在包括第一處理器、第一存儲器和第一網(wǎng)絡(luò)接口裝置的數(shù)據(jù)消費者服務(wù)器處,
生成數(shù)據(jù)挖掘請求;
根據(jù)數(shù)據(jù)策略生成與所述數(shù)據(jù)挖掘請求相關(guān)聯(lián)的數(shù)據(jù)轉(zhuǎn)換請求;
在包括第二處理器、第二存儲器和第二網(wǎng)絡(luò)接口裝置的數(shù)據(jù)提供商服務(wù)器處,
通過所述網(wǎng)絡(luò)接收所述數(shù)據(jù)挖掘請求和所述數(shù)據(jù)轉(zhuǎn)換請求;
針對所述數(shù)據(jù)策略驗證所述數(shù)據(jù)轉(zhuǎn)換請求;
響應(yīng)于所述驗證,批準(zhǔn)所述數(shù)據(jù)挖掘請求;以及
當(dāng)批準(zhǔn)所述數(shù)據(jù)挖掘請求時,在所述數(shù)據(jù)消費者服務(wù)器處:
根據(jù)所述數(shù)據(jù)轉(zhuǎn)換請求轉(zhuǎn)換來自所述數(shù)據(jù)源的數(shù)據(jù);以及
響應(yīng)于所述數(shù)據(jù)挖掘請求,使能夠訪問所述轉(zhuǎn)換的數(shù)據(jù)。
2.如權(quán)利要求1所述的方法,其還包括以下步驟:
在包括處理器、存儲器、網(wǎng)絡(luò)接口和顯示器的電子裝置處,
響應(yīng)于所述數(shù)據(jù)挖掘請求,訪問所述轉(zhuǎn)換的數(shù)據(jù);
響應(yīng)于所述數(shù)據(jù)挖掘請求來基于所述轉(zhuǎn)換的數(shù)據(jù)生成結(jié)果視圖;以及
在所述顯示器上提供所述結(jié)果視圖。
3.如權(quán)利要求1所述的方法,其中所述數(shù)據(jù)源包括非結(jié)構(gòu)化數(shù)據(jù),并且所述轉(zhuǎn)換數(shù)據(jù)步驟還包括以下步驟:
預(yù)處理所述數(shù)據(jù)以便提取元組;
對所述數(shù)據(jù)進(jìn)行數(shù)據(jù)凈化以便減少噪聲并處理缺失值;
從所述數(shù)據(jù)移除不相關(guān)和冗余的屬性;
對所述數(shù)據(jù)進(jìn)行標(biāo)準(zhǔn)化;以及
根據(jù)所述數(shù)據(jù)策略來轉(zhuǎn)換所述數(shù)據(jù)。
4.如權(quán)利要求3所述的方法,其中所述數(shù)據(jù)策略是匿名化功能,并且所述轉(zhuǎn)換步驟在運行時處執(zhí)行。
5.如權(quán)利要求1所述的方法,其中所述生成數(shù)據(jù)轉(zhuǎn)換請求還包括以下步驟:
使用dsl模式限定轉(zhuǎn)換函數(shù);并且
其中所述驗證包括以下步驟:
分析所述dsl模式以便驗證所述轉(zhuǎn)換產(chǎn)生與所述數(shù)據(jù)策略相符的數(shù)據(jù)集。
6.如權(quán)利要求1所述的方法,其中生成所述數(shù)據(jù)挖掘請求包括:
在電子裝置上提供用于創(chuàng)建、標(biāo)記和檢索存儲的數(shù)據(jù)挖掘請求的用戶接口;
從所述用戶接口接收輸入;
通過所述輸入填充所述數(shù)據(jù)挖掘請求。
7.如權(quán)利要求6所述的方法,其中所述存儲的數(shù)據(jù)挖掘請求是響應(yīng)于所述存儲的數(shù)據(jù)挖掘請求而與數(shù)據(jù)分開存儲的模板數(shù)據(jù)挖掘請求。
8.如權(quán)利要求6所述的方法,其還包括以下步驟:
在所述電子裝置的所述用戶接口處接收與事件相關(guān)聯(lián)的數(shù)據(jù);
將與事件相關(guān)聯(lián)的所述數(shù)據(jù)存儲在由所述數(shù)據(jù)提供商服務(wù)器維護(hù)的分析數(shù)據(jù)存儲裝置處。
9.如權(quán)利要求2所述的方法,其中所述結(jié)果視圖包括選自圖表、圖形和地圖的一個或多個視覺交互元素,所述方法還包括以下步驟:
接收與所述視覺交互元素相關(guān)聯(lián)的輸入;
應(yīng)用選自以下各項之一的功能:過濾功能和分類功能;以及
在所述顯示器上動態(tài)更新所述結(jié)果視圖。
10.至少一種存儲指令的非瞬時性計算機(jī)可讀存儲介質(zhì),所述指令在由至少一個處理器執(zhí)行時致使所述至少一個處理器:
通過網(wǎng)絡(luò)接收數(shù)據(jù)挖掘請求和數(shù)據(jù)轉(zhuǎn)換請求;
針對數(shù)據(jù)策略驗證所述數(shù)據(jù)轉(zhuǎn)換請求;
響應(yīng)于所述驗證,批準(zhǔn)所述數(shù)據(jù)挖掘請求;以及
當(dāng)批準(zhǔn)所述數(shù)據(jù)挖掘請求時,響應(yīng)于所述數(shù)據(jù)挖掘請求從所述數(shù)據(jù)源提供數(shù)據(jù),以用于根據(jù)所述數(shù)據(jù)轉(zhuǎn)換請求來通過數(shù)據(jù)消費者服務(wù)器進(jìn)行轉(zhuǎn)換。
11.如權(quán)利要求1所述的方法,其中所述數(shù)據(jù)挖掘請求包括編譯代碼。
12.如權(quán)利要求1所述的方法,其中所述轉(zhuǎn)換基于使用dsl指定用于調(diào)整所述數(shù)據(jù)源的一個或多個數(shù)據(jù)字段的轉(zhuǎn)換。
13.如權(quán)利要求12所述的方法,其中所述轉(zhuǎn)換用于從所述數(shù)據(jù)源移除個人可識別信息。