一種基于分布式的數(shù)據(jù)統(tǒng)計(jì)的方法
【技術(shù)領(lǐng)域】
[0001]本發(fā)明涉及互聯(lián)網(wǎng)技術(shù)領(lǐng)域,具體涉及一種基于分布式的數(shù)據(jù)統(tǒng)計(jì)的方法及裝置。
【背景技術(shù)】
[0002]隨著大數(shù)據(jù)時(shí)代的到來(lái),面對(duì)海量數(shù)據(jù)信息,如何從這些信息中提取有效的數(shù)據(jù)顯得尤為重要。
[0003]現(xiàn)有技術(shù)中有一種方法,該方法將任一數(shù)據(jù)集合中的數(shù)據(jù)按照屬性構(gòu)造決策樹(shù),通過(guò)統(tǒng)計(jì)該決策樹(shù)中的葉子節(jié)點(diǎn)的數(shù)量即可獲取統(tǒng)計(jì)結(jié)果。
[0004]該方法實(shí)現(xiàn)了對(duì)預(yù)設(shè)數(shù)據(jù)源中數(shù)據(jù)的統(tǒng)計(jì),但是無(wú)法解決分布式計(jì)算環(huán)境下多個(gè)節(jié)點(diǎn)的數(shù)據(jù)統(tǒng)計(jì)的安全問(wèn)題。
【發(fā)明內(nèi)容】
[0005]本發(fā)明實(shí)施例提供了基于分布式的數(shù)據(jù)統(tǒng)計(jì)的方法及裝置,可以解決基于分布式的多個(gè)節(jié)點(diǎn)的數(shù)據(jù)統(tǒng)計(jì)的安全問(wèn)題。
[0006]本發(fā)明實(shí)施例的第一方面公開(kāi)了基于分布式的數(shù)據(jù)統(tǒng)計(jì)的方法,所述方法包括:
[0007]第二節(jié)點(diǎn)接收至少兩個(gè)第一節(jié)點(diǎn)發(fā)送的加密的數(shù)據(jù)集合,所述第一節(jié)點(diǎn)以及所述第二節(jié)點(diǎn)均為分布式網(wǎng)絡(luò)中的節(jié)點(diǎn);所述第二節(jié)點(diǎn)根據(jù)預(yù)設(shè)的數(shù)據(jù)屬性,利用所述加密的數(shù)據(jù)集合構(gòu)造決策樹(shù);所述第二節(jié)點(diǎn)根據(jù)所述預(yù)設(shè)的數(shù)據(jù)屬性和所述決策樹(shù),獲取數(shù)據(jù)的統(tǒng)計(jì)結(jié)果。
[0008]結(jié)合第一方面,在第一方面的第一種實(shí)現(xiàn)方式中,所述第二節(jié)點(diǎn)接收至少兩個(gè)第一節(jié)點(diǎn)發(fā)送的加密的數(shù)據(jù)集合之前,還包括:
[0009]所述第二節(jié)點(diǎn)向所述第一節(jié)點(diǎn)發(fā)送公開(kāi)密鑰,以使得所述第一節(jié)點(diǎn)根據(jù)所述公開(kāi)密鑰對(duì)數(shù)據(jù)集合進(jìn)行加密獲得加密的數(shù)據(jù)集合。
[0010]結(jié)合第一方面的第一種實(shí)現(xiàn)方式,在第一方面的第二種實(shí)現(xiàn)方式中,所述第二節(jié)點(diǎn)根據(jù)預(yù)設(shè)的數(shù)據(jù)屬性,利用所述加密的數(shù)據(jù)集合構(gòu)造決策樹(shù)之前,還包括:
[0011]所述第二節(jié)點(diǎn)按照預(yù)設(shè)的排列規(guī)則,將所述加密的數(shù)據(jù)集合中的至少一列數(shù)據(jù)進(jìn)行重新排列,以獲得第一數(shù)據(jù)集合;
[0012]所述第二節(jié)點(diǎn)根據(jù)私有密鑰,對(duì)所述第一數(shù)據(jù)集合進(jìn)行解密,獲得第二數(shù)據(jù)集合,所述私有密鑰與所述公有密鑰對(duì)應(yīng);
[0013]所述第二節(jié)點(diǎn)根據(jù)預(yù)設(shè)的數(shù)據(jù)屬性,利用所述數(shù)據(jù)集合構(gòu)造決策樹(shù)包括:
[0014]所述第二節(jié)點(diǎn)根據(jù)預(yù)設(shè)的數(shù)據(jù)屬性,利用所述第二數(shù)據(jù)集合構(gòu)造決策樹(shù)。
[0015]結(jié)合第一方面或第一方面的第一種實(shí)現(xiàn)方式或第一方面的第二種實(shí)現(xiàn)方式,在第一方面的第三種實(shí)現(xiàn)方式中,所述第二節(jié)點(diǎn)根據(jù)預(yù)設(shè)的數(shù)據(jù)屬性,利用所述加密的數(shù)據(jù)集合構(gòu)造決策樹(shù)包括:
[0016]所述第二節(jié)點(diǎn)確定所述預(yù)設(shè)的數(shù)據(jù)屬性的值;
[0017]所述第二節(jié)點(diǎn)按照預(yù)設(shè)的方式從所述加密的數(shù)據(jù)集合中逐條獲取數(shù)據(jù),并確定所述數(shù)據(jù)的關(guān)鍵屬性值;
[0018]所述第二節(jié)點(diǎn)將所述預(yù)設(shè)的數(shù)據(jù)屬性的值與所述數(shù)據(jù)的關(guān)鍵屬性值進(jìn)行比較,并獲取比較的結(jié)果;
[0019]所述第二節(jié)點(diǎn)根據(jù)所述比較的結(jié)果,將所述獲取的數(shù)據(jù)作為葉子節(jié)點(diǎn)插入到所述決策樹(shù)中。
[0020]結(jié)合第一方面的第三種實(shí)現(xiàn)方式,在第一方面的第四種實(shí)現(xiàn)方式中,所述第二節(jié)點(diǎn)根據(jù)所述預(yù)設(shè)的數(shù)據(jù)屬性和所述決策樹(shù),獲取數(shù)據(jù)的統(tǒng)計(jì)結(jié)果包括:
[0021]所述第二節(jié)點(diǎn)根據(jù)所述預(yù)設(shè)的數(shù)據(jù)屬性以及所述預(yù)設(shè)的數(shù)據(jù)屬性的值,確定在所述決策樹(shù)中需要遍歷的葉子節(jié)點(diǎn);
[0022]所述第二節(jié)點(diǎn)對(duì)所述需要遍歷的葉子節(jié)點(diǎn)進(jìn)行統(tǒng)計(jì),獲取統(tǒng)計(jì)的結(jié)果。
[0023]本發(fā)明實(shí)施例的第二方面公開(kāi)了一種基于分布式的數(shù)據(jù)統(tǒng)計(jì)的裝置,所述裝置包括:
[0024]接收單元,用于接收至少兩個(gè)第一節(jié)點(diǎn)發(fā)送的加密的數(shù)據(jù)集合,所述第一節(jié)點(diǎn)以及所述第二節(jié)點(diǎn)均為分布式網(wǎng)絡(luò)中的節(jié)點(diǎn);
[0025]構(gòu)造單元,用于根據(jù)預(yù)設(shè)的數(shù)據(jù)屬性,利用所述加密的數(shù)據(jù)集合構(gòu)造決策樹(shù);
[0026]獲取單元,用于根據(jù)所述預(yù)設(shè)的數(shù)據(jù)屬性和所述決策樹(shù),獲取數(shù)據(jù)的統(tǒng)計(jì)結(jié)果。
[0027]結(jié)合第二方面,在第二方面的第一種實(shí)現(xiàn)方式中,所述裝置還包括發(fā)送單元,
[0028]所述發(fā)送單元,用于向所述第一節(jié)點(diǎn)發(fā)送公開(kāi)密鑰,以使得所述第一節(jié)點(diǎn)根據(jù)所述公開(kāi)密鑰對(duì)數(shù)據(jù)集合進(jìn)行加密獲得加密的數(shù)據(jù)集合;
[0029]所述接收單元,用于接收至少兩個(gè)第一節(jié)點(diǎn)發(fā)送的加密的數(shù)據(jù)集合。
[0030]結(jié)合第二方面或第二方面的第一種實(shí)現(xiàn)方式,在第二方面的第二種實(shí)現(xiàn)方式中,
[0031]所述裝置還包括排列單元,解密單元;
[0032]所述排列單元,具體用于按照預(yù)設(shè)的排列規(guī)則,將所述接收單元接收的加密的數(shù)據(jù)集合中的至少一列數(shù)據(jù)進(jìn)行重新排列,以獲得第一數(shù)據(jù)集合;
[0033]所述解密單元,具體用于根據(jù)私有密鑰,對(duì)所述第一數(shù)據(jù)集合進(jìn)行解密,獲得第二數(shù)據(jù)集合,所述私有密鑰與所述公有密鑰對(duì)應(yīng);
[0034]所述構(gòu)造單元,具體用于根據(jù)預(yù)設(shè)的數(shù)據(jù)屬性,利用所述第二數(shù)據(jù)集合構(gòu)造決策樹(shù)。
[0035]結(jié)合第二方面或第二方面的第一種實(shí)現(xiàn)方式或第二方面的第二種實(shí)現(xiàn)方式,在第二方面的第三種實(shí)現(xiàn)方式中,所述生成單元具體包括第一確定子單元,第二確定子單元,t匕較子單元以及插入子單元;
[0036]所述第一確定子單元,具體用于確定所述預(yù)設(shè)的數(shù)據(jù)屬性的值;
[0037]所述第二確定子單元,具體用于按照預(yù)設(shè)的方式從所述加密的數(shù)據(jù)集合中逐條獲取數(shù)據(jù),并確定所述數(shù)據(jù)的關(guān)鍵屬性值;
[0038]所述比較子單元,具體用于將所述預(yù)設(shè)的數(shù)據(jù)屬性的值與所述數(shù)據(jù)的關(guān)鍵屬性值進(jìn)行比較,并獲取比較的結(jié)果;
[0039]所述插入子單元,具體用于根據(jù)所述比較的結(jié)果,將所述獲取的數(shù)據(jù)作為葉子節(jié)點(diǎn)插入到所述決策樹(shù)中。
[0040]結(jié)合第二方面的第三種實(shí)現(xiàn)方式,在第二方面的第四種實(shí)現(xiàn)方式中,所述獲取單元包括第三確定子單元和統(tǒng)計(jì)子單元;
[0041]所述第三確定子單元,具體用于根據(jù)所述預(yù)設(shè)的數(shù)據(jù)屬性以及所述第一確定子單元確定的預(yù)設(shè)的數(shù)據(jù)屬性的值,確定在所述決策樹(shù)中需要遍歷的葉子節(jié)點(diǎn);
[0042]所述統(tǒng)計(jì)子單元,具體用于對(duì)所述需要遍歷的葉子節(jié)點(diǎn)進(jìn)行統(tǒng)計(jì),獲取統(tǒng)計(jì)的結(jié)果O
[0043]從本發(fā)明實(shí)施例提供的以上技術(shù)方案可以看出,使用本發(fā)明實(shí)施例提供的基于分布式的數(shù)據(jù)統(tǒng)計(jì)方法及裝置,根據(jù)預(yù)設(shè)的數(shù)據(jù)屬性,利用加密的數(shù)據(jù)集合構(gòu)造決策樹(shù),使得數(shù)據(jù)在加密的情況下完成了數(shù)據(jù)統(tǒng)計(jì),從而保證了數(shù)據(jù)的安全性。
【附圖說(shuō)明】
[0044]為了更清楚地說(shuō)明本發(fā)明實(shí)施例中的技術(shù)方案,下面將對(duì)實(shí)施例描述中所需要使用的附圖作簡(jiǎn)單地介紹,顯而易見(jiàn)地,下面描述中的附圖僅僅是本發(fā)明的一些實(shí)施例,對(duì)于本領(lǐng)域普通技術(shù)人員來(lái)講,在不付出創(chuàng)造性勞動(dòng)性的前提下,還可以根據(jù)這些附圖獲得其他的附圖。
[0045]圖1為本發(fā)明一實(shí)施例提供的基于分布式的數(shù)據(jù)統(tǒng)計(jì)的方法流程圖;
[0046]圖2為本發(fā)明另一實(shí)施例提供的基于分布式的數(shù)據(jù)統(tǒng)計(jì)的方法流程圖;
[0047]圖3為本發(fā)明另一實(shí)施例提供的基于分布式的數(shù)據(jù)統(tǒng)計(jì)的方法流程圖;
[0048]圖4為本發(fā)明另一實(shí)施例提供的基于分布式的數(shù)據(jù)統(tǒng)計(jì)的方法流程圖;
[0049]圖5為本發(fā)明一實(shí)施例提供的基于分布式的數(shù)據(jù)統(tǒng)計(jì)的裝置結(jié)構(gòu)圖;
[0050]圖6為本發(fā)明另一實(shí)施例提供的基于分布式的數(shù)據(jù)統(tǒng)計(jì)的裝置結(jié)構(gòu)圖;
[0051]圖7為本發(fā)明另一實(shí)施例提供的基于分布式的數(shù)據(jù)統(tǒng)計(jì)的裝置結(jié)構(gòu)圖;
[0052]圖8為本發(fā)明另一實(shí)施例提供的基于分布式的數(shù)據(jù)統(tǒng)計(jì)的裝置結(jié)構(gòu)圖;
[0053]圖9為本發(fā)明另一實(shí)施例提供的基于分布式的數(shù)據(jù)統(tǒng)計(jì)的裝置結(jié)構(gòu)圖。
【具體實(shí)施方式】
[0054]下面將結(jié)合本發(fā)明實(shí)施例中的附圖,對(duì)本發(fā)明實(shí)施例中的技術(shù)方案進(jìn)行清楚、完整地描述,顯然,所描述的實(shí)施例僅僅是本發(fā)明一部分實(shí)施例,而不是全部的實(shí)施例?;诒景l(fā)明中的實(shí)施例,本領(lǐng)域普通技術(shù)人員在沒(méi)有作出創(chuàng)造性勞動(dòng)前提下所獲得的所有其他實(shí)施例,都屬于本發(fā)明保護(hù)的范圍。
[0055]下面根據(jù)圖1,描述本發(fā)明實(shí)施例的一種基于分布式的數(shù)據(jù)統(tǒng)計(jì)的方法,該方法具體包括:
[0056]如圖1描述本發(fā)明實(shí)施例的基于分布式的數(shù)據(jù)統(tǒng)計(jì)的方法步驟包括101至103。
[0057]101、第二節(jié)點(diǎn)接收至少兩個(gè)第一節(jié)點(diǎn)發(fā)送的加密的數(shù)據(jù)集合,所述第一節(jié)點(diǎn)以及所述第二節(jié)點(diǎn)均為分布式網(wǎng)絡(luò)中的節(jié)點(diǎn);
[0058]其中,第二節(jié)點(diǎn)可以是分布式網(wǎng)絡(luò)中接收數(shù)據(jù)并進(jìn)行計(jì)算的一類可信賴的服務(wù)器或者終端,可以是一個(gè)也可以有多個(gè)。
[0059]其中,第一節(jié)點(diǎn)可以是分布式網(wǎng)絡(luò)中的一臺(tái)服務(wù)器或者一部終端。
[0060]可選的,如圖4所述,在所述步驟101之前還包括步驟104 ;
[0061]所述步驟104具體為: