呂 峰,李麗嬌,高云英,馬開陽
(云南中醫學院 信息技術學院,云南 昆明650200)
基于Hadoop在中醫藥數據挖掘中的應用
呂 峰,李麗嬌,高云英,馬開陽
(云南中醫學院 信息技術學院,云南 昆明650200)
隨著中醫藥信息化發展的進一步深入,中醫藥臨床數據得以更加規范的整理和挖掘,并組成大量標準化的中醫藥數據庫,導致中醫藥數據信息不斷膨脹。醫院原有的DartSpora數據挖掘軟件無法滿足新時期對海量數據挖掘的需要,針對上述情況,文中從數據挖掘的概念及系統模型入手,介紹Hadoop的主要內容,提出基于Hadoop的中醫藥數據挖掘系統,從而滿足中醫藥研究對計算高性能的要求。
數據挖掘;中醫藥;Hadoop;MapReduce
隨著互聯網技術、信息技術的快速發展,促使由互聯網產生的數據信息資源日益增多。自2010年,數據挖掘技術被用于網絡工程中,采用統計學等輔助科學幫助人們編輯、處理龐大的數據集[1]。
由于中醫藥數據庫群的使用,傳統的數據庫建設方式導致中醫藥信息出現孤島效應,這種情況無法滿足中醫藥信息領域發展要求。文中探討中醫藥數據挖掘的相關內容,旨在為完善中醫藥數據挖掘服務提供重要參考,從而推動我國中醫藥事業蓬勃發展。
數據挖掘是指采用計算機從數據中獲取有用知識的過程。數據挖掘也可定義為由數據庫或其他信息倉庫內獲取有趣知識的過程,例如:關聯的數據機構等。數據挖掘是近年來受到信息產業領域廣泛關注的內容[2]。數據挖掘主要目標為預測和描述,預測是指采用數據集中地變量或域預測其他位置變量。描述就是能夠找到為人類理解的數據模型。數據挖掘是采用自動或手工的辦法挖掘所需數據。數據挖掘過程如圖1所示。

圖1 數據挖掘過程簡圖
2.1Hadoop的概念
大數據就是收集大量結構化、半結構化或非結構化的數據,管理這些數據需要花費大量時間和代價載入與之相關的數據庫內展開分析。Hadoop是采用JAVA編寫框架的軟件工程,借助硬件服務器集群,對大數據展開分布式處理[3]。Hadoop被設計為由單個服務器擴展至成千上萬臺機器,不會依賴高性能硬件環境,上述集群性能來源于軟件自身檢測和處理失敗狀況的能力。Hadoop能夠改變大型規模計算的動態性,具有可擴展性、容錯性等優點,確保更加有效的處理數據[4]。Hadoop能夠提供用于計算大規模容量的數據集,通過高速率處理由大容量系統中傳入數據,同時,Hadoop能夠處理多種非結構化數據。Hadoop主要包括分布式文件HDFS、計算框架MapReduce組成,其中,后者構建于前者之上,對所存儲的數據開展分布式計算。HDFS是Hadoop重要的組成部分,屬于分布式文件系統,用于存儲大數據集,確保硬件獲得最佳的可靠性。
2.2MapReduce組成結構
Hadoop MapReduce作為軟件編程模型,能采用分布式方法處理大數據集。一個MapReduce任務借助多個獨立的塊分割數據集,上述分割塊可被用戶指定的map函數以并行的方式進行處理,形成一些中間<key,value>對[5]。MapReduce運行流程如圖2。

圖2 MapReduce作業運行流程簡圖
中醫藥是我國醫學中的寶貴財富,為中華民族醫學的繁榮昌盛做出了重要貢獻。目前,傳統醫學治療理念逐漸被世界所接受,傳統醫藥受到世界各個國家的重視和關注,這為中醫藥發展提供廣闊的空間和機遇。中醫理論中的五行、經絡、陰陽、預防、養生、病因、辨證等內容,若能通過數據挖掘技術將多維數據之間的映射關系反映出來,這將成為研究中醫藥數據的有力工具[6]。
3.1需求分析
通過對數據挖掘系統的研究和分析,借助Hadoop平臺巨大的存儲和計算能力,建立基于Hadoop的中醫藥數據挖掘系統。目前,數據挖掘系統面臨的挑戰如下:1)隨著業務的增長,中醫院的各類數據量越來越大,導致ETL速度變慢,獲得有價值數據能力超過原本容忍范圍。因此,必須提升數據預處理能力速度和效率。2)傳統數據挖掘算法在處理大數據集時效果不理想,其處理能力擴展性差,導致數據挖掘系統不具備良好的大數據挖掘能力[7]。同時,針對層出不窮的數據格式,必須具備相應的處理能力,確保數據格式的統一性。基于Hadoop設計數據挖掘系統,能有效解決上述問題。
3.2設計合理的結構模型
根據上述分析,中醫藥數據挖掘系統采用分層思想,自頂向下每層均可調用下層結構,最頂層為交互層,實現使用者與系統間的交互。最底層設計為分布式計算層,采用Hadoop實現文件分布式存儲和并行計算。該結構框架模型主要包括交互層、功能層、資源層3個部分,3個層次之間彼此獨立,與其任意一次不存在交叉調用的情況[8]。但資源層可為功能層提供便于調用資源的接口,當然,功能層也為交互層提供合理的接口。交互層則為用戶提供最佳的交互界面。其具體結構框架如圖3。

圖3 基于Hadoop的中醫藥數據挖掘服務框架
3.2.1交互層
交互層作為用戶與并行挖掘平臺進行溝通的主要通道,交互層可為用戶提供可編程Web服務和可視化交互平臺兩種訪問方式。后者是典型的Web應用模式,其借助JSP、Javascript等達到可視化管理,并與客戶端編程技術相互結合更加形象展示數據挖掘結果。在該管理平臺內,主要包括算法管理、應用、用戶管理、結果展示4個模塊,便于用戶與計算中心實現交互,可視化編程架構如圖4。可編程Web服務采用Web service技術將原有數據挖掘算法包裝成為可編程的Web服務,便于第三方再次進行開發。

圖4 可視化平臺架構簡圖
3.2.2功能層
功能層是整個數據挖掘框架的核心,該層用于集合多種中醫藥數據挖掘算法。功能層內集成聚類(k-means)、關聯規則發現(PApriori)等算法,方便對中醫藥數據實施多角度分析。同時,借助交互層,使用者可將各類新開發算法提交至服務中心,采用集群的計算資源實現整個實驗。基于Hadoop對數據進行關聯規則挖掘時,一般需要實現Main、map、reduce 這3個函數。其挖掘算法主進程代碼如下:

3.2.3資源層
資源層作為數據挖掘框架中支持服務的底層硬件組織,在服務架構內,可借助配備Hasdoop開源軟件,借助主/從節點的方法管理集群的存儲和計算資源,合理調度用戶之間的資源。同時,資源層也是計算機硬件和系統資源軟件的集合,計算機硬件包括內存空間、磁盤存儲、CPU計算等功能。
總之,文中從傳統數據挖掘系統對海量數據處理的需求出發,借助Hadoop數據挖掘平臺滿足中醫藥研究對高性能計算能力的要求,充分運用已有的高性能集群計算能力,設計滿足時代發展需求的中醫藥并行數據挖掘服務框架。這個數據挖掘框架借助Ajax技術、Javascript語言設計可視化管理平臺,采用客戶端編程技術達到完美展示的效果。文中提出的中醫藥數據挖掘服務技術具備完善的交互方案結構,也可動態更新數據功能,充分挖掘數據種類,滿足中醫藥研究的需求。
[1]屈志堅,郭亮,陳秋琳,等.Hadoop云構架的智能調度無損集群壓縮技術[J].電力系統自動化,2013,37(18):93-98.
[2]徐劍,陳群,王卓,等.一種基于Hadoop的多表鏈接策略[J].現代電子技術,2014,11(6):90-94.
[3]杜建強,聶斌.數據挖掘在中醫藥領域應用研究進展[J].中國中醫藥信息雜志,2013,20(6):109-112.
[4]董新華,李瑞軒,周灣灣等.Hadoop系統性能優化與功能增強綜述[J].計算機研究與發展,2013,50(z2):1-15.
[5]陳旭文,黃英銘.海量視頻點播系統的云計算技術與建模實現[J].現代電子技術,2013,23(14):10-12,16.
[6]周婷,張君瑛,羅成,等.基于Hadoop的K-means聚類算法的實現[J].計算機技術與發展,2013,23(7):18-21.
[7]李曉蕾.基于Hadoop社交網絡分析平臺的設計與實現[J].計算機測量與控制,2014,22(12):4094-4097.
[8]黃斌,許舒人,蒲衛等.基于MapReduce的數據挖掘平臺設計與實現[J].計算機工程與設計,2013,34(2):495-501.
[9]孫媛,黃剛.基于Hadoop平臺的C4.5算法的分析與研究[J].計算機技術與發展,2014,19(11):83-86,90.
[10]楊來,史忠植,梁帆,等.基于Hadoop云平臺的并行數據挖掘方法[J].系統仿真學報,2013,25(5):936-944.
[11]秦莉花,陳曉陽,李晟,等.基于數據挖掘的絕經綜合征焦慮、抑郁的相關因素研究分析[J].時珍國醫國藥,2013,24 (6):1431-1432.
[12]李偉衛,趙航,張陽,等.基于MapReduce的海量數據挖掘技術研究[J].計算機工程與應用 ,2013,31(20):112-117.
[13]崔杰,李陶深,蘭紅星,等.基于Hadoop的海量數據存儲平臺設計與開發[J].計算機研究與發展,2012,49(z1):12-18.
[14]劉小俊,徐正全,潘少明,等.一種結合RDBMS和Hadoop的海量小文件存儲方法[J].武漢大學學報:信息科學版,2013,38 (1):113-115,120.
[15]樊龍,萬定生,顧昕辰,等.基于Hadoop云平臺的水利普查數據挖掘系統的設計和實現 [J].計算機與數字工程,2014,42(5):831-834,875.
Application of Hadoop in traditional Chinese medicine based on data mining
LV Feng,LI Li-jiao,GAO Yun-ying,MA Kai-yang
(School of Information Technology,Yunnan University of TCM,Kunming 650200,China)
Along With the further development of the TCM information and TCM clinical data can be more standardized collation and mining,and standardization of traditional Chinese medicine database,resulting in the continuous expansion of the TCM data and information.The hospital's original DartSpora data mining software can't meet the need of huge amounts of data mining in the new period,in view of the above situation,the data mining concept and system model of,Hadoop introduced the main content of the proposed system based on Hadoop TCM data mining from meet the research of traditional Chinese medicine on the requirements of high performance computing
data mining;traditional chinese medicine;hadoop;mapreduce
TN99
A
1674-6236(2016)22-0112-03
2016-02-18稿件編號:201602065
呂峰(1978—),男,云南昆明人,碩士,副教授。研究方向:計算機高等教育,中醫藥信息資源建設,數字化校園建設與應用。