熊一君,苗 放
(1.成都大學(xué) 商學(xué)院,四川 成都 610106; 2.成都大學(xué) 大數(shù)據(jù)研究院,四川 成都 610106)
研究表明,在大數(shù)據(jù)背景下進行系統(tǒng)架構(gòu)設(shè)計之時,必須圍繞著大數(shù)據(jù)的4個特點展開,即大量、高速、多樣、價值[1].對于數(shù)據(jù)而言,不再是簡單的增、刪、查、改等操作,而關(guān)鍵是數(shù)據(jù)管理、數(shù)據(jù)分析及數(shù)據(jù)挖掘.事實上,傳統(tǒng)的系統(tǒng)架構(gòu)是以完成功能需求為最終目標,并采用面向?qū)ο蟮哪J竭M行編碼,這樣的優(yōu)點在于在單一數(shù)據(jù)存儲模式下系統(tǒng)流程與業(yè)務(wù)方式對等.而大數(shù)據(jù)背景下,針對數(shù)據(jù)存儲的一個基本要求是設(shè)立數(shù)據(jù)分片副本,系統(tǒng)架構(gòu)設(shè)計的核心思路已由功能需求轉(zhuǎn)變到數(shù)據(jù)價值需求.因此,若按照傳統(tǒng)軟件工程模式,系統(tǒng)架構(gòu)設(shè)計將面臨2個問題:首先,數(shù)據(jù)存在著多個分片副本,根據(jù)數(shù)據(jù)一致性要求,每個分片數(shù)據(jù)副本必須相同,當分片副本較大時,則必須對多個分片副本依次操作,而大數(shù)據(jù)環(huán)境下,數(shù)據(jù)的容量都以拍字節(jié)(PiB)為單位,因此分片副本巨大,這無論是對物理機的性能還是數(shù)據(jù)庫性能都是極大的考驗;其次,傳統(tǒng)系統(tǒng)架構(gòu)是面向業(yè)務(wù)的,以設(shè)計出符合業(yè)務(wù)邏輯的功能,核心在于“是否好用,功能合理",數(shù)據(jù)庫設(shè)計依托功能需求展開,當功能改變,數(shù)據(jù)必然面臨重構(gòu),這將造成資源浪費.
可見,在大數(shù)據(jù)時代背景下,數(shù)據(jù)為核心,一切其他方法只是為挖掘數(shù)據(jù)價值而服務(wù),數(shù)據(jù)本身不再依托功能,而是功能服務(wù)數(shù)據(jù)[2-3].基于此,本研究提出了一種面向數(shù)據(jù)體系結(jié)構(gòu)(Data-oriented architecture,DOA)的數(shù)據(jù)性能與價值的評價模式.該模式以一種全新的數(shù)據(jù)架構(gòu)模式(即DOA)為基礎(chǔ),采用“兩中心模式"來解決數(shù)據(jù)的性能與價值評價的問題.
在面向數(shù)據(jù)體系架構(gòu)中,數(shù)據(jù)存儲方式是將一份數(shù)據(jù)進行數(shù)據(jù)分片分別存儲到不同的物理機內(nèi)來進行數(shù)據(jù)交換,并降低系統(tǒng)延時.但是,當面對海量數(shù)據(jù)集時,如何保證數(shù)據(jù)一致性與延時性之間的均衡分配,是目前挖掘數(shù)據(jù)性能與價值所面對的首要問題.對此,本研究提出了利用數(shù)據(jù)分片中心[4]來解決一致性與延時性之間的矛盾.
數(shù)據(jù)分片中心采用主從式分片模式,即設(shè)立一個主分片,其他分片為從分片.該模式的特點是,由于數(shù)據(jù)流是由主分片發(fā)出,從分片響應(yīng)的數(shù)據(jù)流也返回給主分片,客戶端操作只針對主分片進行,主分片與從分片之間沒有其他的操作指令干擾,因此只要主分片數(shù)據(jù)流完成發(fā)送,那么所有主從分片的一致性得到絕對保證.
通常,當數(shù)據(jù)分片過大,請求延時取決于最慢的從分片更新速度[5].為了確保整個系統(tǒng)的強一致性,在該模式中通過設(shè)置緩存分片來實現(xiàn)降低數(shù)據(jù)的延時性,具體如圖1所示.主分片與從分片之間不再直接進行數(shù)據(jù)交換,而是通過兩者之間的緩存完成數(shù)據(jù)交換.主緩存數(shù)與主分片數(shù)相等,從緩存數(shù)與從分片數(shù)相等.
圖1主從分片模式架構(gòu)圖
數(shù)據(jù)分片中心引入分片緩存的最主要的目的是減少客戶端與各個副本之間的數(shù)據(jù)交換量.分片緩存主要的功能是緩存一部分需要頻繁在客戶端與副本之間交換的數(shù)據(jù)流,如用戶信息與登錄信息等.通常情況下,副本需要的數(shù)據(jù)只需從對應(yīng)的緩存中直接讀取,其優(yōu)點是減輕了由于數(shù)據(jù)頻繁交換而造成對服務(wù)器的高負載情況[6].
在分片緩存下,每個緩存內(nèi)部有個數(shù)據(jù)記錄表,記錄表指向緩存中已經(jīng)被緩存的數(shù)據(jù).當有新數(shù)據(jù)被緩存后,則在記錄表中自動建立一個關(guān)聯(lián)字段,指向這個新緩存記錄值.同樣地,如果需要與副本進行數(shù)據(jù)交換,只需查找對應(yīng)的記錄表,如果記錄表中有該條數(shù)據(jù)關(guān)聯(lián)字段,則進行數(shù)據(jù)交換,否則返回說明該記錄不存在的信息.
針對數(shù)據(jù)傳輸模式,本研究采用數(shù)據(jù)序列化與反序列化模式來降低數(shù)據(jù)傳輸過程的延遲.
序列化與反序列化功能使用XML作為數(shù)據(jù)通信的格式.由于客戶端與副本之間反復(fù)傳輸各類信息,為了提供傳輸效率,將數(shù)據(jù)采用二進制格式,因為其容量更小,所以數(shù)據(jù)格式轉(zhuǎn)換為高效簡潔的模式,特點是速度快且占用很少的額外存儲空間.序列化與反序列化模式擁有極高的消息傳輸能力和較高的穩(wěn)定性,數(shù)據(jù)傳遞延遲低,也能對數(shù)據(jù)進行較長時間的保存.
大數(shù)據(jù)背景下,大量的數(shù)據(jù)需要被處理與分析,數(shù)據(jù)不僅量大,同時類型廣泛.除此之外,數(shù)據(jù)價值的評價還必須面對以下特性:數(shù)據(jù)量成幾何級增長,高效處理海量增長的數(shù)據(jù),是進行數(shù)據(jù)價值評價的前提;數(shù)據(jù)很多,價值為零,大部分數(shù)據(jù)的價值非常低,數(shù)據(jù)產(chǎn)生到呈現(xiàn)過程中影響數(shù)據(jù)價值的因素非常多.因此,針對數(shù)據(jù)價值評價的方法必須能有效地解決以上問題.
數(shù)據(jù)量的問題,可由數(shù)據(jù)分片中心解決,而如何有效地篩選影響數(shù)據(jù)價值的因素來正確評估數(shù)據(jù)價值,則需要建立相應(yīng)的評價模型.
2.2.1 層次分析法(Analytic hierarchy process,AHP).
由于影響數(shù)據(jù)價值評價的因素有很多,評價模型的核心思想是篩選對數(shù)據(jù)價值影響最大的因素,并采用權(quán)重值的方式進行表示.同時,該模型還應(yīng)該滿足以下條件:模型的結(jié)果適用于各種數(shù)據(jù)價值評價情況;模型產(chǎn)生的結(jié)果是否準確反映影響數(shù)據(jù)價值的因素;本模型產(chǎn)生的結(jié)果是否容易理解.
因此,基于以上模型的要求,并考慮多因素這一核心特點,本研究采用AHP建立數(shù)據(jù)價值評價模型,通過該模型來計算影響數(shù)據(jù)價值因素的對比矩陣及矩陣的特征向量與指標權(quán)重,并利用一致性指標、隨機一致性指標和一致性比率進行一致性檢驗.當檢驗通過,特征向量即為權(quán)向量.
2.2.2 AHP步驟.
1)目標需求分析.確定最終目標實現(xiàn)的策略與限制因素,綜合收集各類型信息.
2)構(gòu)建多級層次結(jié)構(gòu).根據(jù)最終目標的差異,對系統(tǒng)進行多層次分級.
3)采取專家模式判斷方式,確定多級層次結(jié)構(gòu)內(nèi)各元素之間的比較尺度,構(gòu)造對比矩陣及矩陣運算的數(shù)學(xué)方法,確定本層次中元素集針對父級層次內(nèi)某個元素的權(quán)向量.
4)計算所有層次元素的合成權(quán)向量,并對其進行排序,排序后的結(jié)果即為各個元素的重要程度.
2.2.3 AHP關(guān)鍵指標.
在AHP中,比較2個可能具有不同性質(zhì)的因素Ai和Bj之間的相關(guān)程度時,要確定1個合適比較尺度aij.對此,本研究采用1-9尺度法,即aij∈[1,9]∪[1/9,1],具體如表1所示.
表1 1-9尺度aij的含義
隨機一致性指標RI用于衡量對比矩陣的一致性指標CI標準.當n=1,2時,RI=0,1與2階的對比矩陣總是一致陣.對于n≥3的對比較陣A,將其一致性指標CI與同階的隨機一致性指標RI之比稱為一致性比率CR.當CR=CI/RI<0.1時,則認為A的不一致程度在容許范圍之內(nèi),可用其特征向量作為權(quán)向量.
2.3.1 構(gòu)造對比矩陣.
層次分析模型中最重要的步驟是構(gòu)造一個合適的對比矩陣.構(gòu)造合適的對比矩陣的難點在于要從aij∈[1,9]∪[1/9,1]的值域內(nèi)選擇相對尺度值,同時要盡量保證矩陣判斷的一致性.事實上,對比矩陣的建立比層次分析模型難度更大,尤其當采用層次分析模型解決多對象、多層次等復(fù)雜環(huán)境時[7].對此,本研究利用了成都大學(xué)專家平臺公共資源,在學(xué)校大數(shù)據(jù)研究院的平臺支持下,邀請了大數(shù)據(jù)與計算機領(lǐng)域內(nèi)多位專家參與層次結(jié)構(gòu)的設(shè)計,同時由多位專家給出對比矩陣中各指標之間的相對尺度,相對尺度的取值范圍采用1-9尺度標準.最后,組織專家進行集體論證,統(tǒng)一各層級評價指標和指標的相對尺度值,如表2所示.
表2 對比矩陣評價尺度
2.3.2 關(guān)鍵計算過程.
對比矩陣A的最大特征根的特征向量作為權(quán)向量,即權(quán)向量w滿足Aw=λw.本研究采用一致性指標、隨機一致性指標與一致性比率作一致性檢驗,如果檢驗通過,特征向量即為權(quán)向量,反之則調(diào)整對比矩陣.
本研究中,權(quán)向量w、一致性指標CI與一致性比率CR的計算過程全部采用R語言實現(xiàn),其核心代碼如下:
//權(quán)向量計算
weight<-function(B)
{
A=matrix(B,nrow=sqrt(length(B)),ncol=sqrt(length(B)),byrow=TRUE)
n=ncol(A)
mul-collect=c(1:n)
for (i in 1:n) mul-collect[i]=prod(A[i,])
weight=mul-collect^(1/n)
weight-one=weight/sum(weight)
round(weight-one,4)
}
//一致性指標CI、一致性比率CR
CI-CR<-function(B)
{
RI=c(0,0,0.58,0.9,1.12,1.24,1.32,1.41,1.45,1.49,1.51)
Wi=weight(B)
n=length(Wi)
if(n>2) {
W=matrix(Wi,ncol=1)
A=matrix(B,nrow=sqrt(length(B)),
ncol=sqrt(length(B)),byrow=TRUE)
AW=A %*% W
aw=as.vector(AW)
la-max=sum(aw/Wi)/n
CI=(la-max-n)/(n-1)
CR=CI/RI[n]
cat(“ CI=",round(CI,4),“ ")
cat(“ CR=",round(CR,4),“ ")
cat(“ la-max=",round(la-max,4),“ ")
if(CR<=0.1) {
cat(“通過 ")
cat(“ Wi:",round(Wi,4),“ ")
}
else {
cat(“請調(diào)整判斷矩陣! ")
Wi=NULL
break
}
}
else if (n<=2) {
return(Wi)
}
}
本研究的實證分析選取四川省教育資源公共服務(wù)平臺V2.0作為實驗對象.該平臺是以DOA思想為核心下實施的系統(tǒng)平臺,V2.0系統(tǒng)平臺最大的特點是應(yīng)用了本研究提出的“兩中心模式”,即數(shù)據(jù)分片中心與數(shù)據(jù)價值評價中心.
四川省教育資源公共服務(wù)平臺主要功能是提供教學(xué)資源數(shù)據(jù)的共享,其共享的方式為部分免費共享而另一部份付費銷售.目前,根據(jù)該平臺的決策者需求,該平臺需解決海量數(shù)據(jù)的存儲與讀取問題,能有效評估不同學(xué)科平臺的數(shù)據(jù)價值且準確評判影響數(shù)據(jù)價值的影響因素.
本研究的測試環(huán)境為:硬件環(huán)境為,Intel(R) Xeon(R) CPU E3-1230V3,內(nèi)存16 GiB,操作系統(tǒng)為Ubuntu Server 15.本研究選取平臺數(shù)據(jù)內(nèi)18個大小不同的數(shù)據(jù)包,分別測試這18個數(shù)據(jù)包在操作過程中所耗時間.表3與表4是平臺沒有采用分片中心及采用分片中心后數(shù)據(jù)操作性能對比,相應(yīng)的數(shù)據(jù)性能耗時如圖2與圖3所示.
通過以上圖表信息的對比可以看出,分片中心的作用.
表3 無分片中心數(shù)據(jù)性能
圖2 無分片中心數(shù)據(jù)性能耗時
圖3采用分片中心數(shù)據(jù)性能耗時
從以上圖表可知,數(shù)據(jù)操作性能耗時與數(shù)據(jù)大小成單調(diào)遞增.圖2中第18個數(shù)據(jù)包耗時達到了14.628 61 s,而通過采用數(shù)據(jù)分片后,第18個數(shù)據(jù)包耗時減少到了10.492 688 s,此時消耗時間減少了33.3%.根據(jù)圖3得出,數(shù)據(jù)包越大,消耗時間減少比例就越大.
四川省教育資源公共服務(wù)平臺V2.0每日實際的數(shù)據(jù)包總流量達到了1 TiB,而在使用了數(shù)據(jù)分片中心后,數(shù)據(jù)操作過程的整體平均耗時下降了50%左右.
3.2.1 評價指標.
數(shù)據(jù)價值指標權(quán)重的確定主要有4個步驟:通過專家咨詢法構(gòu)建評價指標影響因素的對比矩陣;采取專家群體判斷的方式,采用1-9尺度方式確定對比矩陣內(nèi)各因素的比較值aij;采用數(shù)學(xué)方法求出對比矩陣歸一化的特征向量w,同時計算出一致性指標CI、一致性比率CR;判斷一致性檢驗是否通過.
由前面的計算方法獲得,本次評價指標對比矩陣的一致性指標CI=0.1165,一致性比率CR=0.0883(CR=CI/RI,RI可由表2查表得到),因為CR<0.1,因此w=(0.409 7,0.146 4,0.096 3,0.217 5,0.071 3,0.029 4,0.029 4),通過一致性檢驗.
由此,最終評價指標的權(quán)重排序后情況為:到達率>交易量>訪問次數(shù)>粘性>交易總額>交易頻率>數(shù)據(jù)類型,其中到達率的權(quán)重為0.409 7,幾乎占所有權(quán)重比的0.5.到達率的大小很大程度上決定了數(shù)據(jù)價值,這與通常采用數(shù)據(jù)交易總額來衡量數(shù)據(jù)價值的傳統(tǒng)方法不同,即決定數(shù)據(jù)價值的指標是到達率.
3.2.2 數(shù)據(jù)評測.
本研究選擇四川省教育資源公共服務(wù)平臺的資源中心版塊數(shù)據(jù)進行測試.資源中心是提供訪問者進行數(shù)據(jù)訪問、購買及下載的接口.V1.0版本沒有采用DOA進行系統(tǒng)架構(gòu),數(shù)據(jù)的盈利方式仍采用傳統(tǒng)會員付費方式,即判斷版塊內(nèi)容是否具有吸引力及數(shù)據(jù)是否具有價值,只能通過付費額度反映,而版塊的到達率數(shù)據(jù)則被視為無關(guān)參數(shù),因此最終的決策結(jié)果是自然科學(xué)版塊與人文科學(xué)版塊的價值基本相同,具體情況如圖4所示.
圖4 V 1.0應(yīng)用平臺盈利數(shù)據(jù)
從圖4可知,雖然自然科學(xué)版塊的到達率比人文科學(xué)到達率高出1倍,但是實際的數(shù)據(jù)下載付費總額卻相當接近.由此可見,2個版塊數(shù)據(jù)內(nèi)容的價值相同.
V2.0系統(tǒng)平臺采用DOA進行重構(gòu),采用數(shù)據(jù)價值評價中心,確定到達率是數(shù)據(jù)價值影響因素中權(quán)重值最大的因素,因此為了將到達率的作用體現(xiàn)出來,以數(shù)據(jù)作為中心,本研究對V2.0平臺的數(shù)據(jù)盈利方式從傳統(tǒng)付費方式轉(zhuǎn)變?yōu)閿?shù)據(jù)獲取免費而投入廣告實行盈利的方式,具體情行如圖5所示.
圖5 V 2.0應(yīng)用平臺盈利數(shù)據(jù)
從圖5可知,當數(shù)據(jù)盈利方式改變后(付費到免費),自然科學(xué)版塊的廣告收入(7~12月)加權(quán)平均值為3.64,人文與社會科學(xué)版塊的廣告收入(7~12月)加權(quán)平均值為2.08,前者是后者的1.5倍,因此,到達率對于提供版塊的廣告收入有著較大的影響,同時在改變了數(shù)據(jù)盈利方式后,2個版塊的收入都有較大的提高.
本研究以DOA思路為核心,提出通過“兩中心模式"來解決大數(shù)據(jù)背景下應(yīng)用系統(tǒng)內(nèi)數(shù)據(jù)使用過程中的效率及數(shù)據(jù)價值的評價問題.其中,數(shù)據(jù)分片中心采用主從副本緩存模式并結(jié)合數(shù)據(jù)序列化方式來解決海量數(shù)據(jù)下數(shù)據(jù)一致性與數(shù)據(jù)傳輸效率這一矛盾問題;數(shù)據(jù)評價中心采用AHP獲得每個指標的權(quán)重,使得評價結(jié)果更準確、合理.同時,基于評價指標的權(quán)重影響,對應(yīng)用平臺的運營模式進行了改變,從而獲得更大的收益.所有的計算過程均采用R語言完成,保證了結(jié)果的快速與準確.