一种提升DICOM影像云归档入库速度的方法技术

技术编号:29614569 阅读:16 留言:0更新日期:2021-08-10 18:28
本发明专利技术公开了一种提升DICOM影像云归档入库速度的方法。为了克服现有技术因影像云数据量巨大、并发量高、峰值明显带来的归档存储难度大、速度慢的问题;本发明专利技术包括以下步骤:S1:解析DICOM文件,获取病人信息ID、检查信息UID、序列信息UID、图像信息UID和租户ID数据组成一条入库数据;S2:将解析获取的数据缓存至Redis数据库中;多线程地从Redis数据库中进行索引并读取数据;S3:数据归档入库;建立包括病人、检查、序列和实例的四级数据表库;将从Redis数据库中读取的有效数据,根据设置的单次入库数量限制将数据批量入库,完成将DICOM文件上传至影响云平台。提升DICOM影像云归档入库速度并且减少并发冲突,提高归档效率。

【技术实现步骤摘要】
一种提升DICOM影像云归档入库速度的方法
本专利技术涉及一种医学影像归档领域,尤其涉及一种提升DICOM影像云归档入库速度的方法。
技术介绍
图像存储与传输系统(PictureArchivingandCommunicationSystem,PACS)是专门为医学影像检查图像管理而设计的包括图像存储、传输、显示、处理信息化系统。医学检查图像存储格式采用DICOM3.0(DigitalImagingandCommunicationsinMedicine:医疗数字成像和通信)标准。DICOM(DigitalImagingandCommunicationsinMedicine)即医学数字成像和通信,是医学图像和相关信息的国际标准(ISO12052)。它定义了质量能满足临床需要的可用于数据交换的医学图像格式。全院级PACS系统涵盖整个医院的影像信息,并联动放射、超声、核医学、内镜、病理等多个影像科室,响应其对医疗影像数据的需求。影像云是将单个医院或多个医院的全院PACS中的影像数据上传归档到云平台上,实现各医疗影像检查数据跨院、跨区域互联互通,医生或患者通过移动设备即可调阅报告及DICOM影像,对实现远程影像诊断、会诊服务以及医学影像信息共享、实行检查检验结果互认,提高医疗服务效率,减少患者来回跑医院时间具有重要意义。随着医疗信息化程度的加深,医院医疗数据的存储量也随之攀升,影像云数据量巨大、并发量高、峰值明显,为影像数据的存储和归档,带来了巨大的挑战。例如,一种在中国专利文献上公开的“一种基于分布式计算技术的医疗影像云归档平台”,其公告号CN111739613A,包括:DICOM服务集群,响应影像归档请求和影像调阅请求;影像归档服务器,根据影像归档请求对影像文件进行解析并分别构建影像文件对应的患者索引信息、检查索引信息、序列索引信息和文件索引信息;将患者索引信息和检查索引信息导入第一数据库,将序列索引信息和文件索引信息导入第二数据库,将影像文件导入第三数据库;影像调阅服务器,根据影像调阅请求由第一数据库中获取患者索引信息和检查索引信息,由第二数据库中获取序列索引信息和文件索引信息,进而由第三数据库中获取影像文件。该方案无法解决因影像云数据量巨大、并发量高、峰值明显带来的归档存储难度大、速度慢的问题。
技术实现思路
本专利技术主要解决现有技术因影像云数据量巨大、并发量高、峰值明显带来的归档存储难度大、速度慢的问题;提供一种提升DICOM影像云归档入库速度的方法,使用分布式高速缓存,数据库批量入库的特性,将单条入库的数据转换成批量入库,提升数据入库的效率。本专利技术的上述技术问题主要是通过下述技术方案得以解决的:本专利技术包括以下步骤:S1:解析DICOM文件,获取病人信息ID、检查信息UID、序列信息UID、图像信息UID和租户ID数据组成一条入库数据;S2:将解析获取的数据缓存至Redis数据库中;多线程地从Redis数据库中进行索引并读取数据;根据索引信息,经过ACK处理后,将Redis数据库中已处理的数据删除;S3:数据归档入库;建立包括病人、检查、序列和实例的四级数据表库;将从Redis数据库中读取的有效数据,根据设置的单次入库数量限制将数据批量入库,完成将DICOM文件上传至影响云平台。DICOM文件解析速度较慢,本方案只需进行少量必要数据的解析,减少重复解析,提高归档入库速度。若每条数据单独直接入库,数据量较大时,持续入库速度较慢。Redis是用C语言开发的一个开源的高性能基于内存运行的键值对NoSQL数据库。通过先将数据缓存至Redis中,再读取一定数量的数据进行批量入库,可以极大提高入库速度。使用分布式高速缓存,数据库批量入库的特性,将单条入库的数据转换成批量入库,提升数据入库的效率。作为优选,所述的步骤S2包括以下步骤:S201:数据清洗去重;Redis数据库以Set数据结构分别储存每条数据的病人信息ID、检查信息ID和序列信息ID;S202:数据写入;将每条入库数据生成唯一标志Key,写入Redis数据库;将每条数据对应的位置索引写入到Redis数据库中的链表list中;S203:多线程数据读取;根据数据索引信息从Redis数据库中读取对应的数据;将数据索引信息从链表list中删除,并根据数据索引信息从Redis数据库中删除对应的数据;S204:定时ACK处理;在数据读取过程中将数据索引信息和数据缓存到本地,根据本地定时判断数据处理是否超时的结果,删除彻底删除Redis数据库中数据。通过先将数据缓存至Redis数据库中,再读取一定数量的数据进行批量入库,可以极大提高入库速度。作为优选,每条入库数据生成唯一标志Key的过程为:拼接租户ID和图像信息UID的字符串,经过HASH256运算后的值为唯一标志Key。每个DICOM文件的图像信息UID(SOPInstanceUID)都是唯一的,每次缓存的时候,单个DICOM文件解析出来的数据是一个操作单位。根据租户ID(医院编码)+SOPInstanceUID生成唯一标志。作为优选,所述的多线程数据读取过程包括:(1)从Redis数据库的链表list中读取数据索引信息;(2)根据读取到的数据索引信息,从Redis数据库中读取对应的数据;(3)将已经读取到的数据索引信息以及数据处理的时限,放入表示“处理中”的hash表中;(4)将数据索引信息从链表list中删除;(5)数据处理成功后,将数据索引信息从表示“处理中”的hash表中移除;(6)根据数据索引信息,将Redis数据库中的已处理数据删除。应用可以在多个机器上部署,单个应用下也可以启动多个线程去处理Redis中的数据,进行数据入库,提高入库效率。作为优选,所述的定时ACK处理过程包括:(1)在从Redis数据库中读取数据索引信息以及数据的同时,将数据索引信息以及数据缓存到本地内存中;(2)后台定时线程从本地内存中读取该数据,根据预存的数据处理的时限判定数据处理是否超时;当数据处理判断为超时的时候,则将数据索引信息从表示“处理中”hash表内重新存入链表list中,同时删除本地内存中的缓存数据;当数据处理为未超时的时候,则循环轮询本地内存中数据处理是否超时。由于从Redis取走数据后,可能应用机器发生宕机,或者程序关闭,该部分数据就会丢失。因此需要有个ACK的过程,来避免数据丢失,只有在ACK之后,数据才会真正的从Redis中删除。作为优选,宕机或者应用重启之后,会先从Redis数据库中的表示“处理中”hash表内加载数据至本地缓存。避免宕机或重启后数据丢失。作为优选,所述的步骤S3包括以下步骤:S301:建立数据表库,数据表库包括病人、检查、序列和实例四级;病人表以病人信息ID作为唯一标志;检查表以检查信息UID作为唯一标志;本文档来自技高网
...

【技术保护点】
1.一种提升DICOM影像云归档入库速度的方法,其特征在于,包括以下步骤:/nS1:解析DICOM文件,获取病人信息ID、检查信息UID、序列信息UID、图像信息UID和租户ID数据组成一条入库数据;/nS2:将解析获取的数据缓存至Redis数据库中;多线程地从Redis数据库中进行索引并读取数据;根据索引信息,经过ACK处理后,将Redis数据库中已处理的数据删除;/nS3:数据归档入库;建立包括病人、检查、序列和实例的四级数据表库;将从Redis数据库中读取的有效数据,根据设置的单次入库数量限制将数据批量入库,完成将DICOM文件上传至影响云平台。/n

【技术特征摘要】
1.一种提升DICOM影像云归档入库速度的方法,其特征在于,包括以下步骤:
S1:解析DICOM文件,获取病人信息ID、检查信息UID、序列信息UID、图像信息UID和租户ID数据组成一条入库数据;
S2:将解析获取的数据缓存至Redis数据库中;多线程地从Redis数据库中进行索引并读取数据;根据索引信息,经过ACK处理后,将Redis数据库中已处理的数据删除;
S3:数据归档入库;建立包括病人、检查、序列和实例的四级数据表库;将从Redis数据库中读取的有效数据,根据设置的单次入库数量限制将数据批量入库,完成将DICOM文件上传至影响云平台。


2.根据权利要求1所述的一种提升DICOM影像云归档入库速度的方法,其特征在于,所述的步骤S2包括以下步骤:
S201:数据清洗去重;Redis数据库以Set数据结构分别储存每条数据的病人信息ID、检查信息ID和序列信息ID;
S202:数据写入;将每条入库数据生成唯一标志Key,写入Redis数据库;将每条数据对应的位置索引写入到Redis数据库中的链表list中;
S203:多线程数据读取;根据数据索引信息从Redis数据库中读取对应的数据;将数据索引信息从链表list中删除,并根据数据索引信息从Redis数据库中删除对应的数据;
S204:定时ACK处理;在数据读取过程中将数据索引信息和数据缓存到本地,根据本地定时判断数据处理是否超时的结果,删除彻底删除Redis数据库中数据。


3.根据权利要求2所述的一种提升DICOM影像云归档入库速度的方法,其特征在于,每条入库数据生成唯一标志Key的过程为:
拼接租户ID和图像信息UID的字符串,经过HASH256运算后的值为唯一标志Key。


4.根据权利要求2所述的一种提升DICOM影像云归档入库速度的方法,其特征在于,所述的多线程数据读取过程包括:
(1)从Redis数据库的链表list中读取数据索引信息;
(2)根据读取到的数据索引信息,从Redis数据库中读取对应的数据;
(3)将已...

【专利技术属性】
技术研发人员:林赢键倪鹏程陈集房麻元兴
申请(专利权)人:浙江卡易智慧医疗科技有限公司
类型:发明
国别省市:浙江;33

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

1