合肥工業大學 王勝利
基于大數據的認識與分析
合肥工業大學 王勝利
在前些年里,由于云計算等新型技術的出現,使得人類的生產生活方式發生了根本性轉變,同時這些技術的發展使得人們匯聚、存儲和處理數據的能力超過以往,因此提取有價值信息的能力也在日益提高,開啟了大數據的大門。電子商務、互聯網、社交媒體、數碼設備、物聯網的快速發展推動了數據的增長,人類已經真正進入到大數據時代,“大數據”概念的出現逐漸成為了一種發展趨勢,必將帶動人類朝著一個更加有利的方向發展。
SEMANMR架構;代價估計;數據挖掘
自從出現“云”的概念進入云的時代以來,全世界的各個國家各個領域保存了大量的數據,這些海量的數據使得三個方面發生了巨大的變化。其一是大數據的硬件由原來的單機系統變成現在多機系統即分布式處理系統,所以并行編程及其模型將是研究的重點;其二就是數據的表示即大數據流處理規則和語義描述;其三,就是大大的促進數據挖掘技術的改善。因此我將從上述三個方面做出討論。
大數據的整個處理過程是基于分析模型SEMANMR而產生的。一般處理流程為用戶提交SEMANMR作業,分配到線程池,通過基于語義的作業調度完成調度,形成線程池,存放到SLAVES里面,通過SEMANMR控制器實現控制,最后將計算結果放入緩存器,存入本地文件,返回給用戶即可,這個處理流程是大數據處理的核心過程,具體流程如圖1所示。
在整個系統實現過程中,包含了幾大關鍵技術:
1.1 S E MA N MR交互方法
該交互方法主要相對于傳統交互方法而言具有極大的優越性,傳統交互方法即HADOOP與其框架MAPREDUCE交互規則為每發送一個信息就產生一個響應應答信息(TRACKER到TOBTRACKER PING),這樣產生的直接后果就是JOBTRACKER一直在處理發過來的信息且忙于應答,交互效率及其低下。而SEMANMR采用一種交換角色的方法,將發送更換為JOBTRACKER(只需要發送一條PING消息),正常的TRACKER接收者不產生應答消息,只有當該接收者出現錯誤時才產生應答消息,具體流程圖如圖2所示。

圖1 具體流程圖

圖2 具體流程圖
1.2 S E MA N MR中基于語義的調度算法
在這個架構實現過程中,作業調度是實現有序操作的關鍵,主要將MASTER集群的M臺節點里面的很多作業分配到相應的作業緩存池,現在一般采用二維數組的方式存儲,當然也可以采用一維數組存儲,只是訪問方式比較繁瑣,采用二維數組結構設定如下:
線程池一:{M[1][1],M[1][2],M[1][3]…………M[1][n]}
線程池二:{M[2][1],M[2][2],M[2][3]…………M[2][n]}
…………………
上述線程池里面的每個任務只要滿足優先排序語義規則、負載均衡、故障調度、語義調度四個規則即可完成SEMANMR調度。
對于數據流語義規則的描述。在SEMANMR里面一般采用規則節點圖形化模型表示,而描述對于數學而言一般采用計算的方法,所以計算規則節點相關參數成為了該部分的關鍵。相對于離散數學而言,規則節點計算基本保持了離散數學對于笛卡爾積等關系運算的實用性。主要包括流量計算和代價分析。
流量計算:主要以規則交點集為計算目標,設有N個入度,稱為L1,L2…..LN,同時設出度流量為M,則:

其中規則交集流量節點入度一般大于三,即L1,L2,L3……..,一般對于最小流量而言,只要其中條件有一個不滿足,則M=0;對于最大流量而言,若均滿足條件,則:

對于規則聯合節點而言,出度流量的計算一般是入度與聯合操作參數的乘積,設規則聯合入度有二個即X1、X2,聯合條件一般為關系運算“或”,根據最小最大流量分析,可得到聯合操作參數的取值集和為:

所以只要滿足上述取值,則可以得到C=(X1+X2)*V。
代價分析主要是基于上述規則交點集流量計算而推導的代價的分析。計算規則節點代價雖然有多種模式,但是其一般模型為Cost(A)=Cost(B)+Cost(C),其中A為各種節點或者節點集,B一般是搜索手段采用遍歷,C一般為比較選擇判斷,從而計算出各種節點的代價。
其中重要的是規則聯合節點計算,仍然設N個入度,稱為L1,L2…..LN,V為節點的可聯合性,P設為遍歷一次的時間(也可以設為多次遍歷的時間,因為一次時間太小,不利于統計),I為一次的總時間,則可以得到:

代價相對而言還是容易估計的這對于我們選擇合適的節點度量其代價,設計出代價相對較小的數據處理而言具有重要的意義。
由于數據復雜程度增加,因此必須發現數據之間的相互關系,使得數據大致滿足一定的規律,因此數據分析將變得尤其重要。一個極好的算法可以大大優化代碼,提高數據關聯度。目前國際上主要使用:分類算法、聚類算法、關聯算法等等。其中比較有難度的就是關聯規則算法,該算法是用兩個概率公式衡量的:

這兩個公式目前對于關聯規則的數據挖掘具有特別重大的意義。
通過對大數據的具體任務的分析,必須了解處理海量數據的方式方法。大數據云計算目前展現出了計算機前所未有的活力,各個行業數據云集,促進了計算機產業、數據分析、數據挖掘等技術的出現,在將來大數據必將以海量化、多樣化、速度化、價值化面向世界。
[1]毛國君.數據挖掘原理與算法[M].清華大學出版社,2017.
[2]賈雙成,王奇.數據挖掘技術核心揭秘[M].機械工業大學出版社,2016.