一種基于社區(qū)o2o的數(shù)據(jù)分析系統(tǒng)及其實(shí)現(xiàn)方法
【技術(shù)領(lǐng)域】
[0001] 本發(fā)明屬于數(shù)據(jù)分析技術(shù)領(lǐng)域,具體涉及一種基于社區(qū)020的數(shù)據(jù)分析系統(tǒng)及其 實(shí)現(xiàn)方法。
【背景技術(shù)】
[0002] 社區(qū)020是立足于為本地社區(qū)用戶提供線上支付線下享受服務(wù)的一種新型的電 子商務(wù)模式,它是電子商務(wù)發(fā)展的必然趨勢(shì)。大數(shù)據(jù)時(shí)代,數(shù)據(jù)、信息和知識(shí)是電子商務(wù)發(fā) 展中的重要資源。在各地社區(qū)020加盟商的合作下,基于社區(qū)020的誠(chéng)信商圈服務(wù)平臺(tái)中 產(chǎn)生了海量數(shù)據(jù),面對(duì)從海量數(shù)據(jù)中進(jìn)行數(shù)據(jù)價(jià)值挖據(jù)的需要,對(duì)平臺(tái)內(nèi)大數(shù)據(jù)的存儲(chǔ)、處 理和分析成為急需解決的核心問(wèn)題。
[0003] 目前,絕大部分的020服務(wù)平臺(tái)都是采用基于傳統(tǒng)型的關(guān)系數(shù)據(jù)庫(kù)進(jìn)行數(shù)據(jù)存儲(chǔ) 和數(shù)據(jù)分析的解決模式,該模式下難以獲取海量的用戶行為數(shù)據(jù)、用戶社交數(shù)據(jù)、消費(fèi)行為 數(shù)據(jù),難以存儲(chǔ)和分析這些海量數(shù)據(jù),也難以對(duì)海量數(shù)據(jù)進(jìn)行知識(shí)挖掘、價(jià)值挖掘、行為分 析和特征分析等,以便為社區(qū)020的加盟商、管理者的經(jīng)營(yíng)決策及時(shí)提供科學(xué)依據(jù)。
[0004] 在基于社區(qū)020誠(chéng)信商圈服務(wù)平臺(tái)中,會(huì)產(chǎn)生海量的用戶數(shù)據(jù),用戶數(shù)據(jù)包括用 戶行為記錄、用戶購(gòu)買記錄、用戶特征記錄、商家的銷售記錄、商品、商家的評(píng)價(jià)記錄以及推 薦信息等。為更好地給社區(qū)020誠(chéng)信商圈的各方提供科學(xué)管理的依據(jù),一方面需要對(duì)社區(qū) 020加盟商的私有數(shù)據(jù)進(jìn)行保護(hù),另一方面又需要利用公共基礎(chǔ)設(shè)施資源對(duì)海量數(shù)據(jù)進(jìn)行 數(shù)據(jù)分析?,F(xiàn)有的基于社區(qū)020電商平臺(tái)中傳統(tǒng)數(shù)據(jù)分析系統(tǒng)效率低下、無(wú)法共享公共計(jì) 算資源、無(wú)法保護(hù)社區(qū)020加盟商私有數(shù)據(jù)安全性、無(wú)法滿足獲取海量數(shù)據(jù)并存儲(chǔ)和分析 的需求。
【發(fā)明內(nèi)容】
[0005] 為了解決現(xiàn)有技術(shù)存在的上述問(wèn)題,本發(fā)明提供了一種基于社區(qū)020的數(shù)據(jù)分析 系統(tǒng)及其實(shí)現(xiàn)方法。
[0006] 為實(shí)現(xiàn)上述目的,本發(fā)明采取以下技術(shù)方案:一種基于社區(qū)020的數(shù)據(jù)分析系統(tǒng), 其特征在于:它包括一個(gè)公有云、至少一個(gè)私有云、一個(gè)數(shù)據(jù)分析業(yè)務(wù)平臺(tái)和一個(gè)數(shù)據(jù)應(yīng)用 服務(wù)平臺(tái);
[0007] 在數(shù)據(jù)存儲(chǔ)方面,所述私有云用于存儲(chǔ)社區(qū)020加盟商的私有數(shù)據(jù),所述公共云 用于存儲(chǔ)所有被分析的原始數(shù)據(jù),所述私有云與公有云通過(guò)WebService模式進(jìn)行數(shù)據(jù)交 互;
[0008] 在數(shù)據(jù)分析處理方面,所述私有云通過(guò)數(shù)據(jù)序列化接口完成對(duì)被分析數(shù)據(jù)結(jié)果的 序列化工作,并將序列化后的數(shù)據(jù)存放于本地的關(guān)系型數(shù)據(jù)庫(kù)中;所述公有云針對(duì)數(shù)據(jù)分 析業(yè)務(wù)平臺(tái)的數(shù)據(jù)分析要求,提供分布式數(shù)據(jù)存儲(chǔ)以及計(jì)算資源,完成對(duì)數(shù)據(jù)的統(tǒng)計(jì)、匯總 和分類處理工作;
[0009] 所述數(shù)據(jù)分析業(yè)務(wù)平臺(tái)利用所述公有云的云端存儲(chǔ)和虛擬計(jì)算資源完成以下大 數(shù)據(jù)處理業(yè)務(wù):用戶、商戶的網(wǎng)上行為特征分析;社區(qū)020中商品、服務(wù)的銷售情況統(tǒng)計(jì)及 預(yù)測(cè);用戶、商戶的信用評(píng)價(jià)計(jì)算;社區(qū)020的商品、服務(wù)的推薦計(jì)算;用戶個(gè)性化服務(wù); [0010] 所述數(shù)據(jù)應(yīng)用服務(wù)平臺(tái)用于實(shí)現(xiàn)數(shù)據(jù)的可視化呈現(xiàn)。
[0011] 進(jìn)一步地,所述數(shù)據(jù)應(yīng)用服務(wù)平臺(tái)以各類統(tǒng)計(jì)圖、儀表盤(pán)或曲線圖的形式呈現(xiàn)消 費(fèi)者、商品銷售商和服務(wù)提供商的各類數(shù)據(jù)分析結(jié)果。
[0012] 進(jìn)一步地,所述私有云與公有云進(jìn)行數(shù)據(jù)交互時(shí)采用WebService方式,并通過(guò)數(shù) 據(jù)序列化接口層實(shí)現(xiàn)私有數(shù)據(jù)的安全性,其主要過(guò)程為:
[0013] S11、根據(jù)需放置在所述公共云中的私有數(shù)據(jù)模型,結(jié)合對(duì)每個(gè)電子商務(wù)業(yè)務(wù)的需 求分析,構(gòu)建業(yè)務(wù)邏輯中的原子業(yè)務(wù)數(shù)據(jù)模型;
[0014] S12、根據(jù)業(yè)務(wù)邏輯需求分析,構(gòu)建數(shù)據(jù)分析業(yè)務(wù)應(yīng)用所需的數(shù)據(jù)庫(kù),并為原有應(yīng) 用系統(tǒng)中的數(shù)據(jù)庫(kù)構(gòu)建業(yè)務(wù)所需數(shù)據(jù)適配器;
[0015] S13、構(gòu)建業(yè)務(wù)邏輯服務(wù);
[0016] S14、根據(jù)業(yè)務(wù)邏輯需求,應(yīng)用對(duì)應(yīng)的數(shù)據(jù)適配器構(gòu)建業(yè)務(wù)邏輯服務(wù),并將新構(gòu)建 的服務(wù)部署到對(duì)應(yīng)社區(qū)020平臺(tái)的Web服務(wù)器,最后應(yīng)用這些業(yè)務(wù)邏輯服務(wù)組建成所需的 業(yè)務(wù)應(yīng)用。
[0017] 進(jìn)一步地,所述構(gòu)建業(yè)務(wù)數(shù)據(jù)適配器的基本步驟如下:
[0018] (1)對(duì)原子業(yè)務(wù)數(shù)據(jù)確定屬性;
[0019] (2)確定操作:
[0020] 對(duì)每個(gè)原子業(yè)務(wù)數(shù)據(jù)的主要的操作一般都是查詢、修改、添加,其中以查詢?yōu)橹鳎?同時(shí)查詢應(yīng)該有多種的查詢:按關(guān)鍵碼的精確查詢、按名稱的模糊查詢、按分類的模糊查詢 等,并以數(shù)據(jù)集為返回;
[0021] (3)定義方法:
[0022] 實(shí)施操作需要采用特定算法,或需要操作說(shuō)明之外的更多信息。
[0023] 進(jìn)一步地,所述數(shù)據(jù)分析業(yè)務(wù)平臺(tái)利用公有云的云端存儲(chǔ)和虛擬計(jì)算資源完成用 戶、商戶的網(wǎng)上行為特征分析,其具體過(guò)程為:
[0024] S21、構(gòu)建基于社區(qū)020誠(chéng)信商圈的用戶行為數(shù)據(jù)模型及數(shù)據(jù)倉(cāng)庫(kù);
[0025] 其中,用戶行為數(shù)據(jù)模型包括用戶身份特征信息模型、用戶行為記錄信息模型和 用戶環(huán)境信息模型,按上述模式逐一定制要進(jìn)行統(tǒng)計(jì)的信息模型;
[0026] S22、通過(guò)社區(qū)020加盟商定制的各種信息模型,構(gòu)建大數(shù)據(jù)分析業(yè)務(wù)并進(jìn)行特征 分析;
[0027] S23、根據(jù)用戶行為特征數(shù)據(jù)分析業(yè)務(wù)及定制出的信息模型,編寫(xiě)用于數(shù)據(jù)采集的 JavaScripti或AspScript腳本代碼;
[0028] S24、基于用戶瀏覽過(guò)的社區(qū)020中商品、服務(wù)類型的頁(yè)面,將搜索過(guò)的商品、服務(wù) 的關(guān)鍵字作為用戶特征分析點(diǎn),通過(guò)Hadoop的MapReduce方式實(shí)現(xiàn)用戶特征提取。
[0029] 進(jìn)一步地,所述數(shù)據(jù)分析業(yè)務(wù)平臺(tái)利用公有云的云端存儲(chǔ)和虛擬計(jì)算資源實(shí)現(xiàn)社 區(qū)020中商品、服務(wù)的銷售情況統(tǒng)計(jì)及預(yù)測(cè),其具體過(guò)程為:
[0030] S31、建基于社區(qū)020誠(chéng)信商圈的商品、服務(wù)及用戶購(gòu)買記錄數(shù)據(jù)模型及數(shù)據(jù)倉(cāng) 庫(kù);
[0031] S32、定制前端平臺(tái)的JavaScriptAPI腳本:
[0032]S33、在公共云端,定制后臺(tái)數(shù)據(jù)接收的DataAPI:以WebService方式進(jìn)行交互;
[0033]S34、在公共云端,通過(guò)MapReduce進(jìn)行數(shù)據(jù)分析。
[0034] 進(jìn)一步地,所述數(shù)據(jù)分析業(yè)務(wù)平臺(tái)利用公有云的云端存儲(chǔ)和虛擬計(jì)算資源實(shí)現(xiàn)用 戶、商戶的信用評(píng)價(jià)計(jì)算,其具體過(guò)程為:
[0035]S41、在公共云端對(duì)所有用戶與商鋪之間的相互評(píng)價(jià)進(jìn)行數(shù)據(jù)清洗,編寫(xiě) MapReduce程序完成所有評(píng)價(jià)的分類匯總,統(tǒng)計(jì)出對(duì)應(yīng)評(píng)價(jià)等級(jí)的百分比;
[0036]S42、按信用評(píng)價(jià)指標(biāo)體系中設(shè)置的評(píng)價(jià)因素對(duì)比矩陣計(jì)算信用評(píng)價(jià)指標(biāo)體系的 權(quán)重系數(shù);
[0037]S43、根據(jù)步驟S41的統(tǒng)計(jì)結(jié)果,結(jié)合信用評(píng)價(jià)指標(biāo)體系的權(quán)重系數(shù)計(jì)算每個(gè)用戶 的信用等級(jí)及在評(píng)價(jià)中的可信度;
[0038]S44、按用戶的可信度,匯總被評(píng)價(jià)商家的評(píng)價(jià)數(shù)據(jù);
[0039]S45、根據(jù)驗(yàn)證后的評(píng)價(jià)數(shù)據(jù),按商家的信用評(píng)價(jià)指標(biāo)體系的權(quán)重系數(shù)計(jì)算商家的 信用等級(jí)。
[0040] 進(jìn)一步地,所述數(shù)據(jù)分析業(yè)務(wù)平臺(tái)利用公有云的云端存儲(chǔ)和虛擬計(jì)算資源實(shí)現(xiàn)社 區(qū)020的商品、服務(wù)的推薦計(jì)算,其具體過(guò)程為:
[0041] S51、根據(jù)步驟S24中獲得的用戶特征項(xiàng)分析結(jié)果以及用戶對(duì)相關(guān)商品、服務(wù)的評(píng) 價(jià)數(shù)據(jù),進(jìn)行以下操作:
[0042] (1)基于用戶的協(xié)同過(guò)濾推薦算法構(gòu)建評(píng)價(jià)矩陣計(jì)算用戶之間的 興趣相似度,采用開(kāi)源項(xiàng)目Mahout中用來(lái)計(jì)算改進(jìn)的余弦相似性的實(shí)現(xiàn)類UncenteredCosineSimilarity,開(kāi)源項(xiàng)目Mahout中皮爾森相關(guān)系數(shù)的實(shí)現(xiàn)類 PearsonCorrelationSimilarity,Mahout中用來(lái)計(jì)算歐幾里德相似度的實(shí)現(xiàn)類 EuclideanDistanceSimilarity,來(lái)完成用戶的相似度計(jì)算;
[0043] (2)基于項(xiàng)目的協(xié)同過(guò)濾推薦算法:通過(guò)Mahout內(nèi)置算法完成物品間相似度的計(jì) 算,可采用余弦相似性、皮爾森相關(guān)系數(shù)、歐幾里德相似度等算法來(lái)計(jì)算;
[0044]S52、基于用戶的協(xié)同過(guò)濾推薦算法的推薦計(jì)算公式為用戶推薦商品和服務(wù);
[0045]S53、MapReduce的實(shí)現(xiàn)過(guò)程為:
[0046] 第一次MapReduce迭代過(guò)程:
[0047]Map:
[0048]〈keyl,vl>-統(tǒng)計(jì)得到多個(gè)<key2,v2>
[0049]Key1:行偏移量;
[0050]vl: (CustomsID,GoodsID,value)用戶ID及對(duì)應(yīng)商品的評(píng)價(jià)分?jǐn)?shù)Value;
[0051]Key2:CustomsID;
[0052]v2 :(GoodsID,value)每個(gè)商品對(duì)應(yīng)的評(píng)分;
[0053]Reduce:
[0054] <key2,v2> -統(tǒng)計(jì)得到多個(gè) <key3,v3>
[0055]Key2:CustomsID;
[0056]v2 :(GoodsID,value)每個(gè)商品對(duì)應(yīng)的評(píng)分;
[0057]Key3:CustomsID;
[0058]v3 :[(GoodsIDl,valuel), (GoodsID2,value2)......]用戶對(duì)每個(gè)商品對(duì)應(yīng)的評(píng)分 統(tǒng)計(jì)匯總;
[0059] 第二次MapReduce迭代過(guò)程:
[0060] Map:
[0061] <key3,v3> -統(tǒng)計(jì)得到多個(gè) <key4,v4>
[0062] Key3:CustomsID;
[0063] v3 : [ (GoodsIDl,valuel), (GoodsID2,value2)......]用戶對(duì)每個(gè)商品對(duì)應(yīng)的評(píng)分 統(tǒng)計(jì)匯總;
[0064] Key4 : [GoodsIDl,GoodsID2,......];
[0065]V4:[valuel,value2,......]每個(gè)商品對(duì)應(yīng)的評(píng)分;
[0066] Reduce:
[0067] <key4,v4> -統(tǒng)計(jì)得到多個(gè) <key5,v5>
[0068] Key4 : [GoodsIDl,GoodsID2,......];
[0069] V4 : [valuel,value2,......]每個(gè)商品對(duì)應(yīng)的評(píng)分;
[0070] Key5 : (GoodsIDl,GoodsID2);
[0071]v5 :sim(u,v),相似度計(jì)算;
[0072] 第三次MapReduce迭代過(guò)程:評(píng)分預(yù)測(cè)及推薦列表;
[0073] 第四次MapReduce迭代過(guò)程:根據(jù)評(píng)分預(yù)測(cè)結(jié)果返回目標(biāo)用戶u的前N項(xiàng)商品或 服務(wù)的推薦結(jié)果。
[0074] -種基于社區(qū)020的數(shù)據(jù)分析系統(tǒng)的實(shí)現(xiàn)方法,其包括以下步驟:
[0075]S1、配置私有云端服務(wù);
[0076] 在私有云中安裝社區(qū)020誠(chéng)信商圈電子商務(wù)平臺(tái),配置部署關(guān)系數(shù)據(jù)庫(kù)MySQL,按 需求在每個(gè)商務(wù)頁(yè)面部署JavaScript數(shù)據(jù)采集腳本;在私有云中的數(shù)據(jù)服務(wù)器上部署數(shù) 據(jù)序列化接口層;