论文部分内容阅读
随着科学技术的发展,多样化的医疗方法使得医疗数据规模呈指数级增长,给医疗系统的存储和访问性能带来了巨大的挑战。现如今,许多医疗行业的信息系统已经无法满足云计算与大数据时代海量数据的存储需求,无法承载高并发的访问流量。为了实现大数据时代下的数据高效存储,本文基于Hadoop云平台以及分布式缓存技术设计并实现了基于云平台的放疗数据存储系统。提出了云环境下的HDFS小文件存储模型,用于存储医疗信息化中产生的非结构化的文档、图像等数据;提出了云环境下的Redis分布式缓存模型,用于缓存医疗业务数据,提高访问效率。通过对国内外相关技术的研究现状进行分析,本文对HDFS分布式文件系统和Redis分布式缓存技术在存储方法上进行了优化,设计了基于云平台的放疗数据存储系统。该系统采用Hadoop平台中的HDFS分布式文件系统来完成对非结构化数据的存储功能,采用My SQL数据库提供结构化数据的存储持久化功能,并使用No SQL数据库Redis来提供数据的缓存功能,采用以JAVA语言为基础的Spring技术栈完成了系统业务功能的编程工作。针对原生HDFS对小文件的存储性能低下问题,对比了现有的小文件处理方案,结合No SQL数据库设计了一种存储性能、访问效率更佳的HDFS小文件存储模型。该模型在HDFS系统之上增加了小文件处理层,从文件预处理、文件缓冲、文件合并和文件索引方法上,提高小文件的存储效率。在此模型的基础上为系统提供分布式文件的存储服务。针对分布式缓存集群中数据分布不均和集群可用性不佳的问题,对比了现有的负载均衡和集群可用性方案,设计了负载均匀、高可用的Redis分布式缓存模型。该缓存模型在一致性哈希算法的基础上引入了动态分片策略,防止了负载倾斜带来的服务中断,在Redis集群高可用方案的基础上引入了Zookeeper对所有缓存节点集中管理,实现节点故障的自动转移。在此模型的基础上为系统提供分布式缓存的存储服务。最后对本课题所设计的系统进行开发测试,测试结果表明本文所设计的基于云平台的放疗数据存储系统可以满足医疗工作的实际需求,而且该系统已经部署到了实际的生产环境中进行使用,在实践中得到了检验。