一種基于圖的數(shù)據(jù)處理方法和系統(tǒng)的制作方法
【技術(shù)領(lǐng)域】
[0001]本發(fā)明的實(shí)施例涉及數(shù)據(jù)分析,并且具體地涉及基于圖的數(shù)據(jù)處理方法和系統(tǒng)。
【背景技術(shù)】
[0002]現(xiàn)有的數(shù)據(jù)分析或者數(shù)據(jù)挖掘方法通常采用離線分析的方式。傳統(tǒng)的數(shù)據(jù)處理模型和算法的缺點(diǎn)包括:不能在獲取實(shí)時(shí)數(shù)據(jù)的同時(shí),對(duì)數(shù)據(jù)進(jìn)行有效的分析;以及不能快速地響應(yīng)外部請(qǐng)求,基于最新的數(shù)據(jù)對(duì)外提供服務(wù)。
[0003]例如,現(xiàn)有的方案在對(duì)外提供數(shù)據(jù)服務(wù)時(shí),往往需要對(duì)數(shù)據(jù)進(jìn)行離線預(yù)處理和加工,將分析的結(jié)果存儲(chǔ)在關(guān)系型數(shù)據(jù)庫中。然后,響應(yīng)于外部的請(qǐng)求,從該關(guān)系數(shù)據(jù)庫中讀取分析的結(jié)果。數(shù)據(jù)庫中的分析結(jié)果需要被定期更新。在大數(shù)據(jù)場(chǎng)景下,這種方案會(huì)降低數(shù)據(jù)分析服務(wù)的效率和時(shí)效性。
【發(fā)明內(nèi)容】
[0004]根據(jù)本發(fā)明的一個(gè)實(shí)施例,公開一種基于圖的數(shù)據(jù)處理方法,維護(hù)以對(duì)象為頂點(diǎn),對(duì)象與對(duì)象之間的關(guān)聯(lián)信息為邊的圖,該方法包括:維護(hù)頂點(diǎn)信息和邊信息,所述頂點(diǎn)信息是關(guān)于對(duì)象的關(guān)鍵信息,維護(hù)以對(duì)象的關(guān)鍵信息中的一項(xiàng)為鍵、以對(duì)象在該圖中的位置信息為輔助信息的索引。
[0005]根據(jù)本發(fā)明的一個(gè)實(shí)施例,當(dāng)對(duì)象的關(guān)鍵信息發(fā)生變化時(shí),實(shí)時(shí)地更新該對(duì)象在該圖中的頂點(diǎn)信息。
[0006]根據(jù)本發(fā)明的一個(gè)實(shí)施例,通過第一對(duì)象的關(guān)鍵信息利用該索引定位該第一對(duì)象在該圖中的位置,根據(jù)該第一對(duì)象在該圖中的位置找出與該第一對(duì)象關(guān)聯(lián)的其它對(duì)象。
[0007]根據(jù)本發(fā)明的一個(gè)實(shí)施例,通過分布式架構(gòu)存儲(chǔ)所述圖和所述索引。
[0008]根據(jù)本發(fā)明的一個(gè)實(shí)施例,所述對(duì)象包括銀行卡用戶和商戶。
[0009]根據(jù)本發(fā)明的一個(gè)實(shí)施例,公開一種基于圖的數(shù)據(jù)處理系統(tǒng),該系統(tǒng)被配置成維護(hù)以對(duì)象為頂點(diǎn),對(duì)象與對(duì)象之間的關(guān)聯(lián)信息為邊的圖,該系統(tǒng)包括:圖存儲(chǔ)模塊,用于維護(hù)頂點(diǎn)信息和邊信息,該頂點(diǎn)信息是對(duì)象的關(guān)鍵信息,索引模塊,用于維護(hù)以對(duì)象的關(guān)鍵信息中的一項(xiàng)為鍵、以對(duì)象在該圖中的位置信息為輔助信息的索引。
[0010]根據(jù)本發(fā)明的一個(gè)實(shí)施例,該系統(tǒng)包括:數(shù)據(jù)更新模塊,其被配置成當(dāng)對(duì)象的關(guān)鍵信息發(fā)生變化時(shí),實(shí)時(shí)地更新該對(duì)象在該圖中的頂點(diǎn)信息。
[0011 ]根據(jù)本發(fā)明的一個(gè)實(shí)施例,該系統(tǒng)包括:圖分析模塊,其被配置成:通過第一對(duì)象的關(guān)鍵信息利用該索引模塊定位該第一對(duì)象在該圖中的位置,基于該圖存儲(chǔ)模塊,根據(jù)該第一對(duì)象在該圖中的位置找出與該第一對(duì)象關(guān)聯(lián)的其它對(duì)象。
[0012]根據(jù)本發(fā)明的一個(gè)實(shí)施例,該系統(tǒng)被配置成:通過分布式架構(gòu)存儲(chǔ)所述圖和所述索弓I。
[0013]本發(fā)明的技術(shù)方案通過縮短數(shù)據(jù)更新以及數(shù)據(jù)分析的時(shí)間,有效提升數(shù)據(jù)的時(shí)效性。有效解決了傳統(tǒng)技術(shù)在大數(shù)據(jù)分析和服務(wù)方面的時(shí)效性問題。在大數(shù)據(jù)服務(wù)的場(chǎng)景下,更大地發(fā)揮數(shù)據(jù)的價(jià)值。
[0014]當(dāng)結(jié)合附圖閱讀以下描述時(shí)也將理解本發(fā)明的實(shí)施例的其它特征和優(yōu)勢(shì),其中附圖借助于實(shí)例示出了本發(fā)明的實(shí)施例的原理。
【附圖說明】
[0015]圖1是根據(jù)本發(fā)明實(shí)施例的基于圖的數(shù)據(jù)處理系統(tǒng)的示意圖。
[0016]圖2是根據(jù)本發(fā)明實(shí)施例的基于圖的數(shù)據(jù)處理方法的流程圖。
【具體實(shí)施方式】
[0017]在下文中,將結(jié)合實(shí)施例描述本發(fā)明的原理。應(yīng)當(dāng)理解的是,給出的實(shí)施例只是為了本領(lǐng)域技術(shù)人員更好地理解并且實(shí)踐本發(fā)明,而不是限制本發(fā)明的范圍。例如,本說明書中包含許多具體的實(shí)施細(xì)節(jié)不應(yīng)被解釋為對(duì)發(fā)明的范圍或可能被要求保護(hù)的范圍的限制,而是應(yīng)該被視為特定于實(shí)施例的描述。例如,在各實(shí)施例的上下文描述的特征可被組合在單一實(shí)施例中來實(shí)施。在單一實(shí)施例的上下文中描述的特征可在多個(gè)實(shí)施例來實(shí)施。
[0018]本發(fā)明提出基于圖存儲(chǔ)模型對(duì)要處理的數(shù)據(jù)進(jìn)行實(shí)時(shí)存儲(chǔ)和更新。圖是一種數(shù)據(jù)結(jié)構(gòu),定義為:graph = (V,E) C3V是一個(gè)非空有限集合,代表頂點(diǎn)(節(jié)點(diǎn)),E代表邊的集合,一般用(Vx,Vy)表示,其中,Vx,Vy屬于V。若兩個(gè)結(jié)點(diǎn)U、V之間有一條邊連接,貝IJ稱這兩個(gè)結(jié)點(diǎn)U、V是關(guān)聯(lián)的。可以用帶權(quán)圖表示兩個(gè)相鄰頂點(diǎn)之間的除連接關(guān)系以外的其它關(guān)系?;谶@樣的概念,本發(fā)明提出維護(hù)以對(duì)象為頂點(diǎn),對(duì)象與對(duì)象之間的關(guān)聯(lián)信息為邊的圖,以便基于圖的關(guān)聯(lián)模型和算法進(jìn)行對(duì)象(個(gè)體)之間的關(guān)聯(lián)分析來提高數(shù)據(jù)分析的性能和效率。在本發(fā)明中,個(gè)體可以是例如銀行卡的用戶或者任何使用網(wǎng)絡(luò)服務(wù)(例如,網(wǎng)上購物)的用戶。
[0019]圖1是根據(jù)本發(fā)明實(shí)施例的基于圖的數(shù)據(jù)處理系統(tǒng)的示意圖。如圖1所示,以虛線示出的基于圖的數(shù)據(jù)處理系統(tǒng),其可以包括圖存儲(chǔ)模塊、索引模塊、圖分析模塊。
[0020]圖存儲(chǔ)模塊,用于維護(hù)頂點(diǎn)信息和邊信息,該頂點(diǎn)信息是對(duì)象的關(guān)鍵信息。例如,當(dāng)對(duì)象是銀行卡用戶時(shí),對(duì)象的關(guān)鍵信息可以包括用戶ID、用戶年齡范圍、或者消費(fèi)事件;例如,當(dāng)對(duì)象是商戶時(shí),對(duì)象的關(guān)鍵信息可以包括商戶ID、商戶類型等。邊信息對(duì)象與對(duì)象之間的關(guān)聯(lián)信息,例如基于用戶和商戶之間的消費(fèi)事件產(chǎn)生的關(guān)聯(lián)。如圖所示,可以基于分布式架構(gòu)存儲(chǔ)所述圖的頂點(diǎn)和邊信息。
[0021]索引模塊,用于維護(hù)以對(duì)象的關(guān)鍵信息的一項(xiàng)(例如,用戶ID或者商戶ID)為鍵、以對(duì)象在該圖中的位置信息為輔助信息的索引。這里,位置信息指示該對(duì)象所對(duì)應(yīng)的頂點(diǎn)在圖的存儲(chǔ)結(jié)構(gòu)(例如,鄰接矩陣、鄰接表等)中的與其它對(duì)象的位置關(guān)系。圖分析模塊通過索引能夠快速定位對(duì)象在圖中的位置。如圖所示,可以基于分布式架構(gòu)存儲(chǔ)所述索引。
[0022]圖分析模塊,其被配置成通過第一對(duì)象的關(guān)鍵信息利用該索引模塊定位該第一對(duì)象在該圖中的位置;以及基于該圖存儲(chǔ)模塊,根據(jù)該第一對(duì)象在該圖中的位置找出與該第一對(duì)象關(guān)聯(lián)的其它對(duì)象。優(yōu)選地,可以利用與圖相關(guān)的各種算法來分析該對(duì)象。
[0023]基于圖存儲(chǔ)模塊、索引模塊、圖分析模塊可以高效地進(jìn)行更新操作和分析操作。在更新操作過程中,當(dāng)對(duì)象的關(guān)鍵信息發(fā)生變化時(shí),實(shí)時(shí)地更新該對(duì)象在該圖中的頂點(diǎn)信息??蛇x地,可以在基于圖的數(shù)據(jù)處理系統(tǒng)設(shè)立更新模塊。在分析操作過程中,可以接收外部請(qǐng)求,然后根據(jù)該請(qǐng)求包含的用戶ID,通過索引模塊得到該用戶在圖中的位置信息,然后利用該位置信息借助圖分析模塊的計(jì)算得到分析結(jié)果。得到的分析結(jié)果作為服務(wù)