APP下载

基于Hadoop的中医药大数据平台基础架构的设计与研究

2018-05-08王丽王苹沈俊辉

中国医药导报 2018年6期
关键词:集群架构中医药

王丽 王苹 沈俊辉

[摘要] 大数据技术在当下被广泛关注,构建中医药大数据平台是未来强化中医药行业竞争力的有力武器。本文通过解析中医药大数据特性,设计和研究中医药大数据平台的基础架构,通过合理设计和部署集群、网络和服务器等环境,力求提供稳定可靠的中医药大数据基础平台环境。

[关键字] Hadoop;大数据平台;中医药;基础架构

[中图分类号] R2-05 [文献标识码] A [文章编号] 1673-7210(2018)02(c)-0158-05

Design and research of traditional Chinese medicine big data platform infrastructure based on Hadoop

WANG Li WANG Ping SHEN Junhui

Information Center, Beijing University of Chinese Medicine, Beijing 100029, China

[Abstract] Big data technology has been widely concerned in the present and building a big data platform for traditional Chinese medicine is a powerful weapon to strengthen the competitiveness of traditional Chinese medicine in the future. In this paper, through the analysis of traditional Chinese medicine data characteristics, architecture design and research of traditional Chinese medicine data platform, through reasonable design and deployment of cluster, server and network environment, so as to provide a stable and reliable traditional Chinese medicine data base platform.

[Key words] Hadoop; Big data; Traditional Chinese medicine; Infrastructure

在當今社会,信息技术与经济社会的交汇融合已近引发了数据迅猛增长,数据已成为国家基础性战略资源。2015年8月31日,国务院印发《促进大数据发展行动纲要》(以下简称《纲要》),系统部署大数据发展工作[1]。《纲要》明确指出,推动大数据发展和应用,在未来5~10年打造精准治理、多方协作的社会治理新模式,建立运行平稳、安全高效的经济运行新机制,构建以人为本、惠及全民的民生服务新体系,开启大众创业、万众创新的创新驱动新格局,培育高端智能、新兴繁荣的产业发展新生态。坚持创新驱动发展,加快大数据部署,深化大数据应用,已成为稳增长、促改革、调结构、惠民生和推动政府治理能力现代化的内在需要和必然选择。

近几年,中医药医疗行业的数据增长迅猛,中医药医疗行业也应抓住契机紧跟时代的步伐,大力发展信息化建设。2015年,国务院公布的《中医药健康服务发展规划(2015-2020)》,特别提到了运用云计算、移动互联网、物联网等信息技术开发智能化中医健康服务产品[2]。2016年2月22日,国务院发布了《中医药发展战略规划纲要(2016-2030年)》,其中明确了未来十五年我国中医药发展方向和工作重点,以及今后一个时期中医药发展的重点任务。《中医药健康服务发展规划(2015-2020)》中明确指出推动“互联网+”中医医疗作为重点任务之一,将推进中医药信息化建设作为完成重点任务的保障举措[3]。在推进中医药信息化建设的保障举措中要求按照健康医疗大数据应用工作部署,在健康中国云服务计划中,加强中医药大数据应用。在若干政策的大力支持下,大数据技术与中医药医疗行业相结合,必将产生巨大的经济和社会效益。

1 行业背景

目前在学术界和产业界对于大数据(Big data)并没有一个严格的定义[4]。研究机构Gartner定义“大数据”是需要新处理模式才能具有更强的决策力、洞察发现力和流程优化能力来适应海量、高增长率和多样化的信息资产。麦肯锡全球研究所对大数据给出的定义是一种规模大到在获取、存储、管理、分析方面大大超出了传统数据库软件工具能力范围的数据集合,具有海量的数据规模、快速的数据流转、多样的数据类型和价值密度低四大特征[5]。而对于大数据的特征也是众说纷纭,基本上容量、种类和速度是大数据公认的3个基本特征[6-8]。

在中医药医疗行业领域中,中医药信息具有非常典型的大数据特征。首先从数据量上看,北京的一所三甲中医医院平均1 d的门诊量可达1万人次,每年住院患者可达5万以上,如果将这些患者的诊疗过程全部数据化,每人次就诊产生的医学数据以10 M计,那么每年产生的数据量将高达70 TB,如果把全国中医院的临床数据都汇聚起来,其规模之大可想而知。其次,数据类型复杂。在中医医院,每个患者不但要经过辨证论治的个体化诊疗,还会经过各种检查检测进行疾病及其预后诊断,所以不光有病历资料中包含的信息,还包括检查、多种影像或病理切片检查的生物学信息。这些众多类别的数据通过分析处理可以产生多种多样的数据存储形式。再者,在数据的时效性方面,医疗数据每时每刻都在产生,例如临床诊断等都具有实时处理的需求,具有时效性。

但是目前绝大多数中医药医疗行业数据均处于归档状态,使用传统关系型数据库技术使得数据的存储、数据结构扩展、数据分析和检索都无法发挥数据的真正的价值,数据的价值和利用率受到了严重制约,大数据技术的引入将很好的解决这些问题,并为使用者带来超乎预期的数据服务。

而在技术层面,在大数据技术发展的初期,大数据基础平台是一个单独的大集群,虽然在资源分配和数据共享方面具有灵活易用的优势,但问题也逐渐凸显[9-12]。一方面随着平台上越来越多业务应用系统共同使用基础资源,不同保障级别和重要性的业务应用无法分级维护,经常出现一般应用对资源的占用过高影响其他重要应用的情况;另一方面随着业务应用系统占用资源的增加,基础平台规模也将突破管理上限,需要规划多个集群,便于合理分级管理。另外,由于大数据平台与其他业务应用混合组网,不便于网络流量管控,需要规划单独的大数据平台机房模块,按其特点进行网络规划,构建适应大数据基础平台发展的基础架构。

2 平台基础架构设计

2.1 功能需求分析

随着医疗卫生行业信息化的建设和发展,医疗数据的来源非常广泛,既包括大型医院、社区医院的临床诊疗数据,也包括医保数据和健康数据。这些数据占据了大量的存储资源,但是还没有发挥它们真正的作用[13-16]。中医药大数据基础平台根据中医药大数据的特征,应该具有以下功能:①能够管理大量复杂数据,这些数据不仅包含结构化数据,还包含大量的非结构化数据;②良好的中医药大数据分析和处理能力,通过对大数据的分析和处理挖掘其中蕴含的价值,为发现中医药知识和规律提供帮助;③具有灵活性和可扩展性,对于某些业务应用的调整既不会影响原有业务应用,也不会对整个平台造成大的负担。

2.2 技术选型

Hadoop框架具备可靠、高效、可伸缩的特点,这是中医药大数据基础平台设计与实现的基础前提。Hadoop实现了一个分布式文件系统。HDFS是Google File System的开源实现,HDFS有高容错性的特点,并且设计用来部署在通用硬件上(通常是X86服务器)。它提供高传输能力来访问应用程序的数据,适合那些有着超大数据集的应用程序。MapReduce是Google MapReduce的开源实现。这个分布式框架有极大的扩展性,满足系统高吞吐量的需求。HDFS和MapReduce是Hadoop框架最核心的设计。HDFS为大数据提供了存储能力,而MapReduce为大数据提供了计算能力。

Hadoop生态将持续向前迭代并蓬勃发展,这是中医药大数据基础平台架构可持续优化的重要保障。Hadoop已经成为大数据技术事实上的标准架构,多个因素共同造就了其在短短十年间取得的统治性地位[17-19]。

2.3 基础平台架构设计

2.3.1 总体架构 中医药大数据基础平台设计由3个层次组成,分別是业务层、功能层和平台层。业务层为用户提供基于大数据分析与处理的一系列操作和相关接口,同时可以进行用户信息管理;功能层提供对大数据的存储和挖掘的功能;平台层则是为整个大数据基础平台提供基础的分布式环境支持。见图1。

2.3.2 硬件架构 中医药大数据基础平台是基于Hadoop分布式处理环境,所以需要在多个分布式的节点上部署Linux系统并安装Hadoop环境。中医药大数据平台建设是一个长期的循序渐进的过程,也是一个不断创新和完善的过程,其伴随着医疗系统的发展而不断完善。中医药大数据集群设计结合中医药医疗行业自身的业务特点、系统建设现状和未来发展蓝图来进行,并依据数据类型对应用场景进行合理地分类,打造一个可扩展、高可用、安全、高效的海量数据处理和挖掘的中医药大数据集群环境[20-21]。

结合中医药医疗行业自身的实际情况,根据以下3个基本原则来建设大数据集群。一是根据中医药行业应用场景进行分类:批量计算、在线计算和流式计算。这种模式的划分同时考虑到不同应用场景对于资源占用、系统响应时间和基础平台架构的实际需求。批量计算场景下的响应时间一般要求不高,且对计算资源的使用可以通过YARN总体管控;在线计算场景下的响应时间要求高,对资源占用度高,独立构建集群也避免了与其他集群形成资源抢占,降低了不同类型应用互相干扰的风险;流式计算的基础平台架构使用的是Kafka和Storm组件,根据技术架构独立构建集群。二是根据可靠性级别进行区分:高保障级别和低保障级别。高保障级别集群承载的是核心应用系统以及需要最高级别可靠性保障的应用系统,这部分业务应用系统保障要求高,保障方式也有别于其他集群,采用订阅服务模式提供保障服务。低保障级别承载的是除核心业务应用系统以外的其他应用系统,是规模最大的集群。三是根据集群节点数量上限进行拆分:由于集群内部的数据可以共享使用,数据的使用效率最高,从这个优势来看,单个集群规模越大越好。但从Hadoop架构的设计原理来看,单个集群内数据节点的增多将导致元数据节点内存计算和元数据存储的需求相应增加,而元数据节点的资源有限,限制了集群内节点数不能过多。另外,从可管理性的角度看,集群内节点数量过多也给统一管理带来了额外的复杂性。因此结和基础平台的技术能力,确保可控的集群性能与管理水平,一般控制在每个集群内20~30个节点数量为宜。见图2。

在集群设计和平台架构中,必须清晰地认识到没有万能的软件架构能解决所有问题,不同的场景、需求、限制下需要有针对性的架构模式才能满足大数据项目需求。根据大数据集群设计原则,为了保障中医药大数据基础平台高可靠性,平台划分为如下几个集群。见图3。

无论是Hadoop架构还是流处理架构,均被设计为运行在标准X 86服务器硬件上,但是这并不意味着可以随意选择服务器配置。Hadoop集群能够充分发挥作用,需要足够好的硬件,以及足够好的软件。实际部署中根据应用系统隔离、资源隔离、利旧、成本、负载以及差异化组件对服务器硬件的要求(HDFS、MapReduce等不同组件对服务器硬件要求不同)不同,会使用不同节点甚至部署不同的集群。考虑到各种因素,中医药大数据基础平台的服务器有两种类型:A型服务器主要用于Hadoop架构中的NameNode节点(元数据节点)、Kafka和Storm服务;B型服务器主要用于Hadoop架构中的DataNode节点(数据节点)。配置见表1。

通过对这两类服务器在测试环境中进行的性能分析,在一般业务压力下,A型与B型服务器的平均可用内存和CPU空闲率均衡,均在50%以上。虽然以上服务器选型能最大化发挥其计算与存储能力。但是需要说明的是,随着业务系统的变化和工作负载的改变,中医药大数据基础平台的服务器硬件选型将需要不断调整和优化。而无论服务器配置如何变化,都需要结合完善的资源分配和管控手段来充分发挥基础硬件的作用。

2.3.3 网络架构设计 中医药大数据基础平台的物理服务器网络架构分为3层:接入层、汇聚层和核心层。考虑物理服务器的网络冗余、带宽等问题,大数据服务器内部之间采用双链路万兆网络连接到接入层的交换机。接入层到汇聚层使用双路的40 Gb带宽的网络,这样可以确保大数据集群内部节点之间数据交换和数据移动的高带宽需求。汇聚层到核心层使用双路的10 Gb带宽的网络,这部分带宽主要用于业务系统和大数据集群环境之间的数据导入导出和管理需求。大数据集群环境和其他业务系统间通过核心层的交换机互相访问。见图4。中医药大数据基础平台因其各种应用系统规模,适合独立机房模块部署。大数据服务器间的网络架构见图5。

在这种网络架构中,使用EOR列头接入模式。这种部署模式使得接入交换机的数量最小,接入交换机与汇聚交换机之间的线缆数量也最小。另外,服务器内部网络采用链路聚合模式,相比于一般的主备网卡模式能够增加1倍的带宽。

2.3.4 软件环境 本文中设计的中医药大数据基础平台是基于Cloudera的CDH 5构建的,是大数据解决方案的商用Hadoop版本,具有良好的易用性。该平台支持全文检索与切面导航;支持实时数据索引;支持友好的多用户交互;支持批处理、实时索引;支持多类型、多格式数据源;原生与Hadoop生态系统相结合;提供丰富的API与完善的生态系统;100%开源,具有成熟的代码,活跃的社区。

Cloudera Manager可集成Hadoop生态圈的相关组件,以交互式的方式,进行配置的更新,任务及运行情况的监控等。通过Cloudera Manager可以自动化完成Hadoop的安装过程,大幅缩短部署时間。Cloudera Manager提供实时的集群概况,提供了集中的中央控制台对集群的配置进行更改。Cloudera Manager还提供了全面的报告和诊断工具,帮助优化性能和利用率。此外,良好的API、活跃的开源社区也为个性化的开发定制提供可能。

在基础平台层面上,本文的核心基础平台采用的是Hadoop等开源技术架构。Hadoop是一个能够对大量数据进行分布式处理的软件框架。Hadoop依赖于通用服务器设备和专用的硬件和软件投入相比,中医药大数据系统的建设成本相对较低。但是Hadoop也有自身的局限。由于Hadoop的控制节点把文件的元数据存储在内存中,所以大量的小文件会产生大量的元数据。百万级别的文件数目还可行,如果小文件数据过多就会无法处理。不过对于中医药大数据来说,这个显然不是问题。Hadoop适用的场景更加倾向于一次写入多次读取的情况。这很符合中医药大数据的特点。

3 小结

中医药大数据研究是未来中医药研究一个重要方向,通过大数据平台可以实现医疗卫生数据的汇聚、存储、管理和挖掘等应用。而在大数据基础平台方面通过集群、服务器和网络等基础环境的部署方式,可以将大数据环境与其他业务应用环境按功能进行独立划分,避免了数据流之间的互相干扰,降低了接入、汇聚、核心层数据交换模式的设计复杂度,且可以针对大数据自身的设计网络收敛比,使用适配的网络交换设备,容易利用其规模效应大幅降低建设成本。由于中医药行业的业务应用系统情况各异,基础环境还需要根据应用系统实际运行情况不断调整和优化,以适配不同类型的作业负载。虽然从不同原则出发设计了多个集群,便于分级保障、分类维护、安全可控,但多个集群却给数据共享带来了不便,在必要的情况下需通过数据导入导出的方式进行集群间的数据共享。

目前面向中医药的大数据基础平台主要为用户提供存储和高性能计算服务,对中医药大数据的处理研究还有待完善。如何为用户提供其实可行的大数据处理方法将是下一步的研究任务。

[参考文献]

[1] 国务院.促进大数据发展行动纲要[M].北京:人民出版社,2015.

[2] 国务院.中医药健康服务发展规划(2015-2020年)[EB/OL].(2015-5-7)http://www.gov.cn/zhengce/content/2015-05/07/content_9704.htm.

[3] 国务院.中医药发展战略规划纲要(2016-2030年)[EB/OL].(2016-2-26)http://www.gov.cn/zhengce/content/2016-02/26/content_5046678.htm.

[4] 维克托·迈尔·舍恩伯格.大数据时代[M].杭州:浙江人民出版社,2012.

[5] 董晓婷.大数据的定义特征及其应用分析[J].硅谷,2013(11):120.

[6] Marx V. The big challenges of big data [J]. Nature,2013, 498(7453):255-260.

[7] Trelles O,Prins P,Snir M,et al.Big Data,But Are We Re?鄄ady? [J]. Nature Rev Genet,2011,12(3):224.

[8] Murdoch TB,Detsky AS. The inevitable application of big data to health care [J]. JAMA,2013,309(13):1351-1352.

[9] 于琦,崔蒙,李海燕,等.从大数据角度探讨中医药信息学特征[J].中国数字医学,2014,9(4):33-34.

[10] 崔蒙,李海燕,雷蕾,等.“大数据”时代与中医药“知识密集型”数据[J].中国中医药图书情报杂志,2013,37(3):1-3.

[11] 芮益芳.大数据医疗:下一个产业“风口”[J].商学院,2015,12(4):100-103.

[12] 张振,周毅.医疗大数据及其面临的机遇与挑战[J].医学信息学杂志,2014,35(6):1-8.

[13] 周雪晴,罗亚玲.信息化建设中医疗大数据现状[J].中华医学图书情报杂志,2015,24(11):48-51.

[14] 李国杰.大数据研究的科学价值[J].中国计算机学会通讯,2012,8(9):8-15.

[15] 郑传峰等.企业大数据系统构建实战[M].北京:机械工业出版社,2017.

[16] 周光华,辛英,张雅洁,等.医疗卫生领域大数据应用探讨[J].中国卫生信息管理杂志,2013,10(4):296-300, 304.

[17] 崔文斌,牟少敏,王云诚,等.Hadoop大数据平台的搭建与测试[J].山东农业大学学报:自然科学版,2013,44(4):550-555.

[18] 刘昱圻,陈韵岱.探讨临床大数据库对临床医生在科研和临床实践中的应用[J].科学时代,2015(12):25-27.

[19] 吴朝晖,姜晓红,陈华钧.知识服务:大数据时代下的中医药信息化发展趋势[J].中国中医药图书情报杂志,2013, 37(2):4-5.

[20] 孟永伟,黄建强,曹腾飞,等.Hadoop集群部署实验的设计与实现[J].实验技术与管理,2015,32(1):145-149.

[21] 许礼捷.基于CentOS 的Hadoop分布式集群的构建方法研究[J].沙洲职业工学院学报,2016,19(1):23-28.

(收稿日期:2017-10-27 本文编辑:王 娟)

猜你喜欢

集群架构中医药
基于FPGA的RNN硬件加速架构
中医药在恶性肿瘤防治中的应用
中医药在治疗恶性肿瘤骨转移中的应用
功能架构在电子电气架构开发中的应用和实践
海上小型无人机集群的反制装备需求与应对之策研究
一种无人机集群发射回收装置的控制系统设计
从《中医药法》看直销
LSN DCI EVPN VxLAN组网架构研究及实现
Python与Spark集群在收费数据分析中的应用
中医药立法:不是“管”而是“促”