System.ArgumentOutOfRangeException: 索引和长度必须引用该字符串内的位置。 参数名: length 在 System.String.Substring(Int32 startIndex, Int32 length) 在 zhuanliShow.Bind() 一种医疗问诊大数据处理平台的搭建方法技术_技高网

一种医疗问诊大数据处理平台的搭建方法技术

技术编号:40564495 阅读:21 留言:0更新日期:2024-03-05 19:28
一种医疗问诊大数据处理平台的搭建方法,在数据采集阶段,每天定时从医院的业务数据库中抽取数据,根据数据量的不同,分别使用DataX实现全量同步、使用Maxwell实现增量同步;数据采集完成后,在HDFS里对应路径下就有了原始数据,通过Hive将HDFS中的数据导入进来作为数据仓库的ODS层,随后通过代码开发,逐层处理数据,最后在ADS层生成相应的汇总表;数据可视化阶段,对问诊过程中涉及到的各业务指标的数据进行动态展示,为医院管理人员的决策提供数据支持。本发明专利技术完整度高,各组件配合流畅,具有技术推广意义。

【技术实现步骤摘要】

本专利技术涉及计算机,具体涉及一种医疗问诊场景下的大数据处理平台搭建方法。


技术介绍

1、经过多年的信息化建设,医院管理信息系统、临床检验信息系统、医学影像管理系统等各种业务信息系统不断涌现出来。这些业务信息系统在医院管理中充分运用,支撑了医院业务的正常运行,然而医院在日常运营中会产生大量的医疗数据,这些数据涉及到个体健康信息、诊断和治疗信息、药品以及财务数据等方面。

2、整个医疗数据是一个庞大而又复杂的数据集,当有对应的业务需求时,再从多个表中调度有用信息进行处理,工作效率低,且不利于管理人员整体掌握医疗资源状况和医院运营情况,也不利于医院业务需求的扩展。


技术实现思路

1、为了克服现有技术的不足,本专利技术提供一种医疗问诊大数据处理平台的搭建方法。基于医院的问诊业务,采用当前主流的大数据组件,构建一套从数据源采集到数据应用的一站式平台,以支持医疗问诊业务各环节的数据整合、统计分析等操作,主要包括数据采集模块、数据仓库(负责数据处理)、数据可视化模块三部分。该方案完整度高,各组件配合流畅,具有技术推广意义。

2、为了解决上述技术问题所提出的技术方案是:

3、一种医疗问诊大数据处理平台的搭建方法,所述方法包括以下步骤:

4、步骤1,数据采集阶段,每天定时从医院的业务数据库中抽取数据,将业务数据传输到hdfs,对于基础数据表,所述基础数据表包括医生信息表、患者登记信息表、药品表和字典表,进行全量同步;对于患者缴费表、问诊表和处方表数据,进行增量同步;

5、步骤2,数据处理阶段,数据采集完成后,在hdfs里对应路径下就有了原始数据,通过hive将hdfs中的数据导入进来作为数据仓库的ods层,随后通过代码开发,逐层处理数据,最后在ads层生成相应的汇总表,供数据可视化模块使用;

6、步骤3,数据可视化阶段,对问诊过程中涉及到的各业务指标的数据进行动态展示,为医院管理人员的决策提供数据支持。

7、进一步,所述步骤1的过程如下:

8、1.1为每张需要全量同步的表编写datax同步配置文件,由于需要将数据从mysql同步到hdfs,故选择mysqlreader和hdfswriter。在python环境下,执行相关命令,提交数据同步任务,即可将数据同步到hdfs的目标路径下。

9、作为数据同步框架,datax将数据源的同步抽象为从源头数据源读取数据的reader插件,以及向目标端写入数据的writer插件,framework用于连接reader和writer,作为两者的数据传输通道。

10、1.2在进行增量同步时,首先需要确保开启了业务数据库的binlog,然后在maxwell的配置文件中指明数据发送目的地。由于maxwell不能将数据直接写到hdfs,故先将所有需要增量同步的表通过maxwell采集到kafka集群的某个主题中,然后通过flume将数据从kafka传输到hdfs。由于需要将kafka的数据传输到hdfs,故flume架构选择kafkasource+filechannel+hdfssink。

11、binlog是mysql服务端非常重要的一种日志,保存了mysql数据库的所有数据变更记录。maxwell组件的工作原理是主从复制,将自己伪装成从库,实时读取mysql数据库的binlog,从中获取变更数据,再将变更数据以json格式发送至kafka等流处理平台。

12、1.3在该大数据处理平台上线的首日,需要进行一次历史数据全量同步,确保得到一个完整的数据集,使用maxwell工具提供的maxwell-bootstrap脚本来实现。

13、更进一步,所述步骤2中,首先,对数据仓库进行分层,每一层只处理相应的任务;合理的分层不仅使数据结构清晰明了,而且可以极大的简化开发难度,减少重复开发,提高计算结果的复用性;

14、数据仓库各个层次描述采用英语缩写,因此先简单说明缩写具体含义:原始数据层称之为ods(operational data store),公共维度层称之为dim(dimension),数据明细层称之为dwd(data warehouse detail),数据汇总层称之为dws(data warehouse summary),数据应用层称之为ads(application data store);过程如下:

15、2.1从业务系统中采集到的原始数据经过简单处理后保存到ods层,ods层只对数据进行简单清洗,过滤掉不符合规范的和不完整的数据即可;

16、由于ods层要保存全部历史数据,相当于对所有数据做一个永久备份,数据量庞大,因此选择压缩率比较高的gzip压缩格式,可以节省集群磁盘的存储资源;

17、2.2根据维度建模理论进行数仓开发,维度模型将复杂的业务通过事实和维度两个概念进行呈现,事实通常对应业务过程,维度信息用来描述业务过程所处环境的信息。dwd层用于存储事实数据,主要将ods层的json格式数据解析成字段,作为明细存储,方便后面各层的计算;

18、dwd层的数据存储格式选择orc列式存储+snappy压缩,既能提高查询速度、降低磁盘空间的占用,又能保证不错的压缩、解压速度;

19、2.3dim层主要用于存放维度信息,一般与dwd层进行关联来获取数据。维度属性通常不是静态的,会随着时间而变化,因此需要保存维度信息的历史状态。基于维度信息数据量和变化频率的不同,将dim层维度表设计为全量快照维度表和拉链表两种形式;

20、2.4dws层对dwd层的明细数据按照业务过程进行初步聚合,存放将来各个需求会用到的一些中间计算结果,以减少重复计算;

21、2.5ads层根据业务需求对dws层的数据进一步聚合,生成相应的汇总表,为各种报表工具提供汇总数据;

22、2.6为了方便报表工具使用数据,需要将ads层各指标的统计结果导出到mysql数据库中;

23、2.7以dolphinscheduler作为调度工具,每日自动化调度开发好的计算脚本,开发人员不需要手动进行数据导出、数据导入、数据计算等工作,从而实现平台自动化运行。

24、再进一步,所述步骤3中,superset作为开源软件,不仅有着丰富的图表展示形式,还支持自定义仪表盘,因此选择superset来实现数据可视化大屏展示。

25、本专利技术所提出的大数据处理平台整体在hadoop集群环境上进行设计构建,整个过程资源管理由yarn完成,数据存储在hdfs中。根据医院的业务需求使用hive数据仓库工具对数据进行处理,放入到不同的数据仓库层次中。每一层都会在hadoop集群中新建一个文件夹,用来存放每一层处理后的数据信息,每一层hive表的数据用location的方式指向每一层文件夹中对应的表数据。hive会根据开发人员所写的hive sql程序转化为spark程序,极大的方本文档来自技高网...

【技术保护点】

1.一种医疗问诊大数据处理平台的搭建方法,其特征在于,所述方法包括以下步骤:

2.如权利要求1所述的一种医疗问诊大数据处理平台的搭建方法,其特征在于,所述步骤1的过程如下:

3.如权利要求1或2所述的一种医疗问诊大数据处理平台的搭建方法,其特征在于,所述步骤2中,首先,对数据仓库进行分层,每一层只处理相应的任务;数据仓库各个层次描述采用英语缩写,原始数据层称之为ODS,公共维度层称之为DIM,数据明细层称之为DWD,数据汇总层称之为DWS,数据应用层称之为ADS;过程如下:

4.如权利要求1或2所述的一种医疗问诊大数据处理平台的搭建方法,其特征在于,所述步骤3中,Superset作为开源软件,不仅有着丰富的图表展示形式,还支持自定义仪表盘,因此选择Superset来实现数据可视化大屏展示。

【技术特征摘要】

1.一种医疗问诊大数据处理平台的搭建方法,其特征在于,所述方法包括以下步骤:

2.如权利要求1所述的一种医疗问诊大数据处理平台的搭建方法,其特征在于,所述步骤1的过程如下:

3.如权利要求1或2所述的一种医疗问诊大数据处理平台的搭建方法,其特征在于,所述步骤2中,首先,对数据仓库进行分层,每一层只处理相应的任务;数据仓库各个层次描述采用英语缩...

【专利技术属性】
技术研发人员:何熊熊张沥化陈强欧县华
申请(专利权)人:浙江工业大学
类型:发明
国别省市:

网友询问留言 已有0条评论
  • 还没有人留言评论。发表了对其他浏览者有用的留言会获得科技券。

1