高 翔 黃文康 商志浩 王文婷 楊 珊
(廣西中醫藥大學公共衛生與管理學院 南寧530200) (廣西中醫藥大學針灸推拿學院 南寧530200) (廣西中醫藥大學公共衛生與管理學院 南寧530200)
隨著我國經濟快速發展,人民生活質量得到全面提高,但同時出現環境污染、食品安全、工作節奏加快等問題,養生保健成為備受關注的熱門話題[1]。中醫養生是中國傳統的養生保健手段,歷史悠久,成效顯著,具有西方醫學無法取代的獨特優勢。隨著互聯網的迅猛發展,網絡上出現大量的無結構化和半結構化信息與數據,傳統的存儲方式已無法滿足數據分析和處理需求,從海量數據中獲取有價值信息成為組織和個人在相關領域取得成果的關鍵。雖然利用大數據技術可處理海量數據信息,但是由于技術尚不成熟,面臨著隱私保護、相關性預知等方面的挑戰,是亟需研究的問題[2]。移動設備作為信息化技術革命的產物,其普及給人們生活帶來極大便利。本研究擬采用移動手機設備終端應用作為應用平臺。在服務器端,通過Hadoop技術對網絡海量數據進行提取、清洗和利用,根據關鍵詞獲取中醫養生保健網絡數據,根據用戶行為習慣自動進行匹配。
大數據即規模龐大的數據群集,在業界大數據仍然沒有被廣泛接受的準確定義,即定義不唯一。網絡中目前已逐漸形成規模龐大的數據群集,且類型多種多樣、結構復雜冗余。大數據技術擁有強大決策力、洞察力,還可以處理海量級數據以及多樣化信息資源,如何處理并高效利用大數據是計算機科學技術與其他行業結合的研究重點。
2.2.1 Hadoop 由Apache軟件基金會開發的開源分布式系統基礎架構。有兩個核心組件:Hadoop分布式文件系統(Hadoop Distribute File System, HDFS)為海量數據提供存儲; MapReduce為海量數據提供計算。Hadoop運作服務器集群,依托開發者編寫的程序對龐大數據進行分布式模式的管理,適用于大數據存儲與分析應用,適用幾萬臺服務器在集群模式運作,支持 PB和TB級存儲容量。Hadoop最明顯的優勢是可儲存和處理數據量龐大且類型冗余復雜的數據,而傳統數據庫無法完成。
2.2.2 HDFS 為Hadoop關鍵組成之一,能夠實現大數據強大的存儲能力。其提供強大的數據存儲功能,很好地解決傳統存儲數據規模龐大、類型復雜的問題。HDFS是建立于幾萬臺機器上的數據存儲系統,具有廣闊的使用場景。采用主從式(Master/Slave)架構,一般一個HDFS集群由一個NameNode和一定數目的DataNode組成。NameNode是HDFS集群主節點,其功能是管理數據塊的映射、HDFS名字空間以及處理Client請求;DataNode是 HDFS集群從節點,其功能是對文件系統數據進行存儲,處理數據塊的讀寫操作。兩個組成部分配合完成分布式文件存儲。
2.2.3 MapReduce 一個軟件框架,開發者可在框架上簡單編寫代碼程序,代碼程序能運作于由幾千臺業務機器構成的服務器的大規模集群上,再依托一種可行且擁有容錯能力的方法并行處理TB級別的大量數據群集。采用Master/Slave架構,1個Master,若干Slave。Master運行JobTracker負責作業調度,定期使用“心跳”向JobTracker報告任務進度,同時接受新任務,Slave運行TaskTracker負責具體作業處理。具體架構,見圖1。

圖1 MapReduce架構
3.1.1 總體框架(圖2)

圖2 基于大數據的中醫養生保健應用系統架構
3.1.2 功能結構 基于大數據的中醫養生保健應用構建在安卓平臺上,方便用戶隨時隨地使用。其主要功能是提供用戶個性化的中醫養生保健方案、中醫膳食譜、結合線下養生館的養生保健法等。功能結構,見圖3。

圖3 系統功能結構
3.1.3 開發環境 采用Window+Eclipse+Android+Mysql+Hadoop[3]開發環境。Android是一種基于Linux自由且開發源代碼的操作系統,主要應用于移動設備上,具有易用性、便捷式操作等優勢。結合開發工具Eclipse在Window上集成,Eclipse開發工具的插件功能非常強大,可根據自身需求擴展ADT插件,滿足開發者開發需求。在數據存儲方面,采用Mysql組織和管理傳統數據存儲;Hadoop為大數據存儲工具,對復雜且龐大的數據集進行存儲。
3.2.1 數據采集 一是網絡檢索引擎技術。網絡是巨大的資源庫,主要通過搜索引擎技術如Apache Lucene工具等檢索大量的網絡信息,根據中醫養生保健的療法、癥狀等劃分需求制定規則,從而篩選出具有統計分類的中醫養生保健相關信息作為數據儲備。二是平臺資源分享。互聯網上有大量中醫、養生保健等平臺,可以通過平臺信息資源對接方式采集相關中醫養生保健信息以及較為完善的病歷。三是網絡爬蟲。通過編寫一個簡單程序實現數據采集,其語言可以是Pyhton、C++、Java、PHP等,捕抓網頁上的信息、數據、圖片、文件等,根據中醫養生保健相關的匹配詞進行數據采集并歸納分類,統計數據。四是數據分析。使用數據倉庫對數據進行清洗、裝載、查詢、展現等,決策選出業務邏輯中所需數據,實現“數據產生數據”的模式。
3.2.2 數據存儲 采集的數據可分為非結構化、半結構化和結構化數據。對于結構化數據,結合中醫養生保健信息高頻出現、高效值的數據,優先考慮傳統數據庫存儲方式并優先處理;對于非結構化、半結構化以及部分結構化數據,采用大數據模式,即分布式存儲,將大量數據云集在服務器集群中并進行挖掘處理,做出中醫養生保健決策。
3.2.3 數據算法 主要目的是對大數據進行挖掘,從而提高數據提煉的性能。海量數據較難處理,往往要達到需求量大、速度快、精確度高等要求,而傳統的數據處理技術無法滿足其處理需求。本研究采用Apache Mahout[4-5]技術,其提供一些可擴展機器學習的經典算法,可以實現文檔聚類、做出推薦和組織內容。Mahout推薦算法分為兩類:基于單機內存算法,基于Hadoop的分步式算法[6]。針對大數據采用基于Hadoop的分步式算法。該算法是將之前單機執行的算法變成MapReduce模式。MapReduce分布式并行計算的結構是將大數據均切分為小數據模塊,再結合Hadoop集群的處理機進行并行處理,使其快捷地完成大數據挖掘、分析過程。Mahout協同過濾推薦實現的組件,見圖4。

圖4 Mahout協同過濾推薦實現的組件
3.3.1 面向用戶 一是用戶精準詞元匹配中醫養生保健服務。用戶根據自身體征表現以及特點,通過選詞或自定義詞元將信息輸入中醫養生保健平臺中,平臺服務基于大數據篩選高效值,提供用戶精準的養生保健方案,在用戶實施方案期間對其追蹤以反饋效果。二是中醫養生保健膳食和推拿手法推薦。用戶通過應用平臺可查看中醫養生保健膳食和手法推薦,膳食信息均由大數據通過一年四季、節
/氣等因素結合綜合分析而得;推拿手法是根據用戶已標識的自身體征匹配數據高效值來提供服務。
3.3.2 面向大數據平臺 如線下養生館,中醫養生保健平臺通過嚴格的權限管理,設置對指定場所或公司開放相關接口權限,為第3方提供接口服務,服務內容包括分類詞元信息匹配、養生保健方案生成、計劃安全性認證服務等,構建線下-線上聯動模式。
本文對基于大數據的中醫養生保健平臺構建進行簡要論述,主要包括系統模型、數據處理方式、主要功能等。在大眾養生保健的熱潮中資源獲取和數據有效性是用戶最主要的需求。而大數據處理、有效利用顯得十分重要,是值得研究的方向,如何更好地利用數據產生更大價值需深入思考。