曹鵬
摘要:本文介紹了大數(shù)據(jù)技術(shù)在電信用戶信息分析中的使用,闡述了電信大數(shù)據(jù)可視化的重要意義;分析和討論了電信用戶信息大數(shù)據(jù)分析的可視化研究方法,研究電信用戶大數(shù)據(jù)的行為結(jié)果進行分析預(yù)測,進而對其結(jié)果進行可視化展示,嘗試討論大數(shù)據(jù)分析可視化技術(shù)的個性化趨勢。
關(guān)鍵詞:電信用戶信息;大數(shù)據(jù);Spark;SpringMVC;可視化
中圖分類號:TP39 文獻標(biāo)識碼:A
文章編號:1009-3044(2019)33-0253-02
大數(shù)據(jù)技術(shù)日益在生產(chǎn)過程中起到很重要的作用。使用大數(shù)據(jù)技術(shù)對電信用戶的信息進行分析,對用戶的信息進行預(yù)測以期達到更好地為用戶服務(wù)的目的。大數(shù)據(jù)分析中一個非常關(guān)鍵的環(huán)節(jié)就是如何獲取友好的數(shù)據(jù)特征顯示。大數(shù)據(jù)可視化已經(jīng)成為大數(shù)據(jù)分析結(jié)果展示的重點研究內(nèi)容。本文采用Spring、Spring MVC和MyBatis三者組合框架對電信用戶大數(shù)據(jù)分析后的結(jié)果進行可視化展現(xiàn)。首先介紹MVC模型,然后再介紹Spring MVC框架和MyBafis,通過網(wǎng)頁應(yīng)用對其用戶信息分析結(jié)果進行可視化實現(xiàn)。
1基于Spring MVC框架的電信用戶大數(shù)據(jù)分析過程
本文大數(shù)據(jù)分析采用linux開源操作系統(tǒng)Ubuntu,構(gòu)建以Hadoop平臺為大數(shù)據(jù)開發(fā)環(huán)境。該平臺使用基于內(nèi)存計算的Spark分布式計算框架技術(shù);分析語言使用scala進行編程實現(xiàn)。數(shù)據(jù)分析的過程分為三個階段,第一階段,將需研究的數(shù)據(jù)上傳到分布式數(shù)據(jù)庫HDFS中;第二階段,使用Scala編寫spark程序,對HDFS中的數(shù)據(jù)進行分析;接下來,把分析的結(jié)果存人本地數(shù)據(jù)庫MySQL數(shù)據(jù)庫中;第三階段,使用SpringMVC模型對MySQL中的數(shù)據(jù)進行可視化呈現(xiàn)。其過程如圖1所示。
2Spring MVC框架原理
2.1Spring MVC框架中頁面的“請求一響應(yīng)”模型
該模型是用戶在訪問一個網(wǎng)址時,客戶端與服務(wù)器端的交互過程,主要分為兩個階段,即,請求階段:客戶端用戶在地址欄中輸入一個網(wǎng)址,此時客戶端向服務(wù)器提出一個請求;響應(yīng)階段:服務(wù)器接收來自瀏覽器用戶的訪問請求,產(chǎn)生響應(yīng)并進行渲染推送給客戶端。該模型的請求響應(yīng)過程見圖2所示。
2.2Spring MVC框架下的View-Model處理過程
Spring MVC框架是一個“前端控制器”模型設(shè)計的網(wǎng)頁框架,它基于請求驅(qū)動并根據(jù)“請求映射規(guī)則”把相應(yīng)頁面控制器進行處理,其流程分為四個步驟,1.客戶發(fā)送請求到“前端控制器”;2.頁面控制器收到請求進行處理;3.“前端控制器”回收其控制權(quán),根據(jù)返回指定的邏輯視圖進行渲染;4.“前端控制器”可循環(huán)回收控制器,不斷將響應(yīng)返回給客戶。
2.3 MyBatis持久層框架
MyBatis是一個持久層框架,它使用簡單的XML或注解配置環(huán)境信息對定制化的SQL、高級映射及存儲過程等進行支持。其工作原理是1)加載配置信息,將SQL配置信息加載為MappedStatment對象保存到內(nèi)存;21SQL解析,接收接口層API請求,根據(jù)不同SQL的ID查找到對應(yīng)的MappedStatement進行解析并得到需要執(zhí)行的SQL語句與參數(shù);3)SQL執(zhí)行,將SQL語句及參數(shù)傳回數(shù)據(jù)庫,執(zhí)行解析后得到分析結(jié)果;4)映射結(jié)果,將分析結(jié)果轉(zhuǎn)換為需要的數(shù)據(jù)類型,如HashMap,JavaBean等,并返回其結(jié)果。
3Spark平臺下數(shù)據(jù)處理過程
Spark平臺下數(shù)據(jù)處理過程包括采集電信數(shù)據(jù)集合并上傳,然后在Spark平臺下進行數(shù)據(jù)分析,最后把分析結(jié)果下載到本地數(shù)據(jù)庫。需要注意的是在啟動Spark環(huán)境之前需要先啟動分布式平臺Hadoop,具體啟動過程是:
3.1數(shù)據(jù)上傳
數(shù)據(jù)上傳需要將數(shù)據(jù)從本地環(huán)境上傳到分布式系統(tǒng)環(huán)境HDFS中去,該過程先在HDFS中創(chuàng)建一個dianxi_data目錄,然后使用終端命令將分析數(shù)據(jù)上傳。它分為兩步,第一步在分布式系統(tǒng)hdfs上創(chuàng)建目錄,第二步把本地文件上傳到hdfs,具體命令如下:
3.2 Spark數(shù)據(jù)分析
數(shù)據(jù)上傳后,使用Spark平臺進行數(shù)據(jù)分析。其過程是從分布式數(shù)據(jù)庫HDABSE中讀取數(shù)據(jù),然后使用scala語言工具進行數(shù)據(jù)的清洗與處理,最后把處理后的數(shù)據(jù)存儲到MySQL本地數(shù)據(jù)庫中。
4使用Spring MVC框架進行信息可視化分析
Spark平臺下分析出來的數(shù)據(jù)結(jié)果存放到本地數(shù)據(jù)庫中,然后使用Spring MVC、MyBatis等框架結(jié)合可視化環(huán)境ECharts編寫應(yīng)用層程序,把分析結(jié)果以圖表的形式展示在網(wǎng)頁中。其主要過程包括創(chuàng)建項目、文件配置、設(shè)置項目目錄、編寫代碼及生成jar包等;最后通過網(wǎng)頁服務(wù)器Tomcat分布到網(wǎng)頁中。本文項目使用IntelliJIDEA開發(fā),項目架構(gòu)如圖3所示。
4.1結(jié)果信息可視化分析步驟
設(shè)置好項目文件,然后對pom.xml文件進行配置。其中,主要配置內(nèi)容有Spring、Mybatis、MySQL驅(qū)動連接、可視化組件echarts、json文件等。最后把分析結(jié)果在部署到tomcat服務(wù)器,實現(xiàn)數(shù)據(jù)分析結(jié)果的可視化呈現(xiàn)。
4.2使用Echats實現(xiàn)可視化結(jié)果
本文分析了徐州電信公司下轄的云龍區(qū)、鼓樓區(qū)、銅山區(qū)等三個區(qū)的信電用戶在某一時間段進行辦理上網(wǎng)情況的對比。有兩種辦理模式,一種是到電信營業(yè)網(wǎng)點辦理上網(wǎng),第二種是使用手機自主辦理。圖中對大數(shù)據(jù)信息的分析結(jié)果進行了很直觀地顯示。如圖4所示。
下面是對電信用戶辦理的套餐業(yè)務(wù)情況統(tǒng)計。電信設(shè)置了天翼大流量套餐、天翼暢想套餐、天翼暢享20G/40G套餐等套餐業(yè)務(wù)。使用echarts餅圖直觀顯示了電信用戶通過上網(wǎng)或網(wǎng)點辦理的套餐業(yè)務(wù)情況,其大小比例及百分比數(shù)字比例清楚一目了然。如圖5所示。
5大數(shù)據(jù)可視化的發(fā)展趨勢
近年來,大數(shù)據(jù)可視化技術(shù)發(fā)展速度越來越快,形式越來越豐富,各種框架推新周期越來越短,可以通過可視化技術(shù)把一些數(shù)據(jù)的重要細節(jié)這真實重建出來,并更清晰的展示給需求用戶。提高可視化顯示形式的多樣化,為用戶提供細節(jié)更清晰,更易操作的可視化框架也是值得關(guān)注的研究方向。最后,面對海量的數(shù)據(jù)如何有效提取有并去除冗余數(shù)據(jù),降低處理數(shù)據(jù)所需的時間是一個重要的研究方向。
6結(jié)束語
本文簡要分析了大數(shù)據(jù)及大數(shù)據(jù)可視化的定義,重點研究討論了Hadoop大數(shù)據(jù)平臺下利用Spark技術(shù)使用sDringMVC框架分析大數(shù)據(jù)結(jié)果的可視化技術(shù),最后嘗試探討了大數(shù)據(jù)分析可視化技術(shù)的個性化趨勢。