包康++劉圖明++孫明瑞
摘要:個人健康信息服務系統(tǒng)作為現代醫(yī)院健康管理系統(tǒng)的一個重要分支,在整個醫(yī)療系統(tǒng)中起著十分重要的作用。本文論述了通過Hadoop大數據平臺構建了一種個人健康信息管理的方法,設計并且實現了一套基于Hadoop的個人健康信息管理系統(tǒng)。Hadoop作為一種日趨成熟的大數據平臺,與醫(yī)療信息化相結合,為個人醫(yī)療中產生的數據提供了一種安全可靠的存儲途徑,實現醫(yī)療數據的集中管理。本系統(tǒng)利用Hadoop平臺適合海量數據的運算與存儲的特點,建立了個人健康信息數據中心,實現對患者健康信息最完整、最準確的管理。
關鍵詞: Hadoop個人健康信息服務系統(tǒng); 大數據; 數據中心
中圖分類號: TP391.41
文獻標志碼: A
文章編號: 2095-2163(2016)06-0009-04
0引言
隨著大數據技術的發(fā)展,供其使用的場景也越來越多。對于尋求數據集中管理、旨在收獲高效益,遠程存取自動化的醫(yī)療領域,Hadoop可以為建立個人健康信息中心提供一個理想的平臺。在基于Hadoop的個人健康信息服務系統(tǒng)中,患者的電子個人信息、醫(yī)療記錄和相關資料可以進行完整、統(tǒng)一管理,系統(tǒng)資源可以由一個或者若干個醫(yī)療機構高度共享,并集中存放,將不再局限在某個醫(yī)院單獨的信息系統(tǒng)中。而使用Hadoop平臺構建個人健康信息數據中心后,醫(yī)療機構可以同步降低在軟件和硬件上的投入、推進醫(yī)療機構的信息化程度,并且提升醫(yī)院的收益率?,F如今,隨著電子醫(yī)療信息的快速增長,Hadoop大數據平臺無疑會對醫(yī)療領域產生重大影響。
2009年,中華人民共和國衛(wèi)生部公開頒行了《基于健康檔案的區(qū)域衛(wèi)生信息平臺建設指南》,使醫(yī)療管理者能動態(tài)掌握衛(wèi)生服務資源和利用信息,實現科學管理和決策,從而達到有效地控制醫(yī)療費用的不合理增長、減少醫(yī)療差錯、增進醫(yī)療與服務質量的功能規(guī)劃目的。通過個人健康信息服務系統(tǒng),將分散在不同機構的健康數據整合為一個邏輯完整的信息整體,滿足與其相關的多種機構與人員的基礎現實需要。這是一種全新的衛(wèi)生信息化建設模式。
本系統(tǒng)基于Hadoop平臺,使用Hbase存取數據,通過大數據的技術和概念對個人的醫(yī)療數據進行存儲和交換,實現個人健康檔案管理的廣泛共享。
1相關理論與技術
[1.1Hadoop
Hadoop是Apache 軟件基金會旗下的一個開源分布式計算平臺。實現時是以Hadoop分布式文件系統(tǒng)(HDFS)和MapReduce為核心,為用戶提供了系統(tǒng)底層細節(jié)透明的分布式基礎架構。HDFS具有高容錯性和高伸縮性,且基于Java語言開發(fā),使得Hadoop可以部署在低廉的硬件上,形成分布式系統(tǒng)。MapReduce分布式編程模型允許用戶在不了解分布式系統(tǒng)底層細節(jié)情況下開發(fā)并行應用程序。
Hadoop是一個能夠讓用戶輕松架構和使用的分布式計算平臺,主要表現有以下優(yōu)點:
1)高可靠性。Hadoop按位存儲和處理數據的能力值得信賴。
2)高擴展性。Hadoop是在可用的計算機集群間分配數據完成計算任務,這些集群可以方便地擴展到數以千計的節(jié)點。
3)高效性。Hadoop能夠在節(jié)點間靈活地移動數據,以保證各個節(jié)點的動態(tài)平衡,因此處理速度甚稱優(yōu)異。
4)高容錯性。Hadoop可以自動保存數據的多份副本,并且能夠將失敗的任務重新分配。
HDFS和MapReduce是Hadoop的兩大核心。下面首先介紹HDFS的體系結構。HDFS采用了主從(Master/Slave)結構模型,HDFS單元集群則是由一個NameNode和若干DataNode組成。其中,NameNode作為主服務器,管理文件系統(tǒng)的命名空間和客戶端對文件的訪問操作;DataNode管理存儲的數據。HDFS允許用戶以文件的形式存儲數據。從內部來看,文件被分成若干個數據塊,分置在不同的DataNode上。NameNode執(zhí)行文件系統(tǒng)的命名空間操作,比如打開、重命名、關閉文件或目錄等,同時還進一步負責數據塊到具體DataNode的映射。在此基礎上,DataNode將負責處理文件系統(tǒng)客戶端的文件讀寫請求,并可在NameNode的統(tǒng)一調度下執(zhí)行數據塊的創(chuàng)建、復制和刪除工作。HDFS的體系結構如圖1所示。
其次,MapReduce是一種并行編程模式。在該模式控制下,用戶可以輕松地編寫分布式并行程序。而且,還將負責將任務分發(fā)到由成百上千臺計算機組成的集群上,并以一種可靠容錯的方式并行處理大量的數據集,實現Hadoop的并行任務處理功能。
綜上可知,HDFS在集群上實現了分布式文件系統(tǒng),MapReduce在集群上實現了分布式計算和任務處理,二者共同組成了Hadoop分布式系統(tǒng)的核心。
[BT5]1.2Hive
Hive是一個基于Hadoop文件系統(tǒng)的數據倉庫架構,由此提供了管理數據倉庫的很多功能:數據抽取、轉換和加載工具,數據存儲管理和大型數據集的查詢和分析能力。不僅如此,其中還定義了簡單的類 SQL 查詢語言,稱為 HQL,允許用戶實施與SQL相似的操作,并且該語言也允許開發(fā)人員采用自定義的 mapper 和 reducer 來處理內建的 mapper 和 reducer 無法完成的復雜的分析工作。
Hive沒有專門的數據存儲格式,也沒有為數據建立索引,用戶可以按需自由組織 Hive 中的表,只是在創(chuàng)建表的同時將消息傳送至 Hive 數據中的列分隔符和行分隔符,Hive 就可以即時正確地解析數據。
1.3HBase
HBase是Hadoop的數據庫,能夠對大數據提供隨機、實時的讀寫訪問功能,具有開源、分布式以及面向列存儲的特點。而且,內部使用了HDFS作為其文件存儲系統(tǒng),保證了數據的可靠性和系統(tǒng)的魯棒性。
不同于一般的關系數據庫,HBase是一個適合于非結構化數據存儲的數據庫。而且,HBase是基于列存儲而不是基于行。Hbase與Hadoop相結合,可以高效實現數據存儲和并行計算。從圖2可以看到,Hbase向下提供了存儲,向上提供了運算。此外,HBase之上還可以使用MapReduce計算模型來并行處理大規(guī)模數據,這即是其擁有強大性能的核心所在。
2關鍵架構總體設計
[BT5]2.1概述
本文設計并實現了基于Hadoop的個人健康信息服務平臺,系統(tǒng)總體架構如圖3所示。在Linux集群技術的基礎上,利用 Hadoop分布式技術,對個人健康數據創(chuàng)新集成處理后存儲到可擴展的分布式數據庫HBase中,并在數十臺普配計算機上搭建該平臺,達到了高效存儲和管理大量健康數據的設計要求。
本次設計是在Linux平臺下,使用Struts作為系統(tǒng)的整體基礎架構、前端采用JSP開發(fā)的Web 應用程序,數據庫采用的則是HBase。
.2系統(tǒng)總體功能設計
依據對個人健康信息服務平臺的需求分析,系統(tǒng)總體功能設計模塊結構可如圖4所示。
由圖4可見,針對系統(tǒng)中各主體模塊的功能設計可做如下闡析概述:
1)個人模塊?;颊呖捎弥付ǖ挠脩裘兔艽a登錄,進入個人主頁,查看歷史生理信息,包括血壓、心電、體溫、肌電、血樣、尿樣等文檔記錄,并且可以讀取醫(yī)囑和健康服務信息。對于實時的血壓、心電和體溫,可以監(jiān)測和預警。對于重癥病人,可以開啟視頻看護。
2)醫(yī)生模塊。醫(yī)生根據用戶名和密碼登錄到對應主頁,查詢病人健康信息,診斷并開具處方、同時附配醫(yī)囑。而且,還可以回答病人的健康咨詢,發(fā)布健康服務信息。
3)管理員模塊。負責進行授權管理,審計日志,同時全面監(jiān)測hadoop集群的工作狀態(tài),包括CPU、內存占用、請求數量等。
3系統(tǒng)詳細設計
本系統(tǒng)包含了2個數據庫:基于Hbase的數據中心和基于Mysql的本地臨時數據庫。Mysql數據庫用于臨時存儲醫(yī)療機構采集獲取的患者體征信息,之后通過數據同步工具關聯(lián)更新至Hbase數據中心。
3.1基于Hbase的數據中心
HBase是一個分布式的、面向列的開源數據庫。通過Hbase Shell命令或者Java Api可以在Hbase中創(chuàng)建數據表格HTable。本系統(tǒng)的Htable設計了2個列簇,用戶記錄列簇和健康信息列簇。其中,用戶記錄列簇用來存儲患者用戶個人基本信息,健康信息列簇用來存儲患者用戶醫(yī)療過程中產生的健康檔案信息,通過個人健康信息服務系統(tǒng)的后臺程序,可以對患者的健康檔案數據進行修改和完善,并且能完整保存用戶所有醫(yī)療信息記錄,包括服用過的所有藥物或者接受各種醫(yī)療器械測量過的數據,方便高效。HTable設計實現如圖5所示。
3.2基于mysql的本地臨時數據庫
通過對mysql數據庫的基礎設計操作,可以將患者的醫(yī)療信息臨時存儲在本地數據庫中,并且可以對本地數據庫中的數據進行修改、調用。即使網絡斷開,系統(tǒng)無法連接至Hadoop數據中心,也可以臨時保存數據,等待網絡連接以后再將數據同步至數據中心,使整個系統(tǒng)能正常工作。
3.3系統(tǒng)功能設計實現
[JP4]最后,系統(tǒng)主要實現個人健康信息的管理健康咨詢2項主要功能,以腦卒中患者為例,如圖6、圖7所示,客戶端采用C/S架構。[JP]
患者用戶可以通過系統(tǒng)實時查詢存儲在Hadoop數據中心的個人信息以及個人醫(yī)療檔案信息,通過健康咨詢頁面可以提出問題以及查看醫(yī)生推送的醫(yī)療建議。醫(yī)生可以查看患者發(fā)出的咨詢問題并及時作出回答。這些數據將會被存儲至Hadoop數據中心中,并且可以實時顯示在個人健康信息服務系統(tǒng)界面上。
4結束語
本系統(tǒng)是基于Hadoop平臺的個人健康服務系統(tǒng),旨在將個人健康服務系統(tǒng)與現有的Hadoop大數據平臺結合起來,建立個人健康信息數據中心,使醫(yī)療管理與大數據相互融合與推進。與傳統(tǒng)的個人健康服務系統(tǒng)相比,本系統(tǒng)建立了統(tǒng)一的數據管理中心,可以讓各個醫(yī)療機構之間方便地共享與存儲數據,同時減少了醫(yī)療機構本地資源的占用,更適合醫(yī)療數據和自身系統(tǒng)的維護,是醫(yī)療數字化發(fā)展的正確方向。
參考文獻
[1] ASHBURNER M, BALL C A, BLAKE J A, et al. Gene ontology: Tool for the unification of Biology[J]. Nature Genet, 2000, 25(1): 25-29.
[2] RESNIK P. Using information content to evaluate semantic similarity in a taxonomy[C]//Proceedings of the 14th International Joint Conference on Artificial Intelligence. Montréal, Canada: Morgan Kaufmann Publishers, 1995: 448-453.[ZK)]
[3] LIN Dekang. An informationtheoretic definition of similarity[C]//Proceedings of the 15th International Conference on Machine Learning. San Francisco,CA,USA: Morgan Kaufmann Publishers, 1998: 296-304.
[4] KARIM M R, HOSSAIN M A, RASHID M M, et al. A MapReduce framework for mining maximal contiguous frequent patterns in large DNA sequence datasets[J]. IETE Technical Review, 2012, 29(2): 162-168.
[5] SIRETSKIY A, SUNDQVIST T, VOZNESENSKIY M, et al. A quantitative assessment of the Hadoop framework for analyzing massively parallel DNA sequencing data[J]. GigaScience, 2015, 4(1):1-13.
[6] TINTAREV N, MASTHOFF J. A survey of explanations in recommender systems[C]//Data Engineering Workshop, 2007 IEEE 23rd International Conference. Istanbul, Turkey :IEEE, 2007: 801-810.
[7] GOSAIN A, KUMAR A . Analysis of health care data using different data mining techniques[C]//International Conference on Intelligent Agent & MultiAgent Systems (IAMA). Chennai, India:Aarupadai Veedu Institute of Technology, 2009: 1-6.
[8] ODRISCOLL A, DAUGELAITE J, SLEATOR R D. ‘Big data, Hadoop and cloud computing in genomics[J]. Journal of biomedical informatics, 2013, 46(5): 774-781.
[9] ANAISSI A, GOYAL M, CATCHPOOLE D R, et al. Casebased retrieval framework for gene expression data[J]. Cancer informatics, 2015, 14(14):21-31.
[10] BOTHA M, BOTHA A, HERSELMAN M. Data quality challenges: A content analysis in the e-health domain[C]//Information and Communication Technologies (WICT), 2014 Fourth World Congress. Malacca, Malaysia:IEEE, 2014: 107-112.
[11] HIGUCHI S, HATA Y. Fuzzy logic approach to health checkup data analysis[C]//World Automation Congress (WAC), 2014. Hawaii, USA:IEEE, 2014: 388-393.
[12] POPESCU M, KELLER J M, MITCHELL J A. Fuzzy measures on the gene ontology for gene product similarity[J]. IEEE/ACM Transactions on Computational Biology and Bioinformatics (TCBB), 2006, 3(3): 263-274.
[13] WANG H, AZUAJE F, BODENREIDER O, et al. Gene expression correlation and gene ontologybased similarity: an assessment of quantitative relationships[C]//Computational Intelligence in Bioinformatics and Computational Biology, CIBCB′04. Proceedings of the 2004 IEEE Symposium on. San Diego:IEEE, 2004: 25-31.
[14] MNIH A, SALAKHUTDINOV R. Probabilistic matrix factorization[C]//International Conference on Machine Learning. Edinburgh, Scotland:ICML, 2012:880-887.
[15] PRADA M A, TOIVOLA J, KULLAA J, et al. Threeway analysis of structural health monitoring data[J]. Neurocomputing,2012, 80(2):119-128.
[16]丁澤柳, 郭得科, 申建偉, 等. 面向云計算的數據中心網絡拓撲研究[J]. 國防科技大學學報, 2011, 33(6): 1-6.