第二节 影像存储与传输系统管理

一、影像归档管理

影像存储与传输系统(picture archiving and communication system,PACS)是计算机网络技术及图像处理技术在临床医学中的重要应用,是利用计算机技术将各种类型、不同型号的医学影像设备的图像信息采集并转换成统一格式的文件进行处理、存储、传输,并可以在普通计算机上进行医学影像的浏览、存储、管理和传输,使临床医师通过医师工作站可以即时查阅以往只有影像科室才能看到的医学影像信息,实现了医学影像资源的共享,降低了诊断成本,并使远程会诊成为可能。它利用影像存储与传输系统实现医学影像资料的数字化管理,提高了医疗机构的整体管理水平和管理质量,节约了成本,减少了人为差错,是医疗机构实现规范化管理、进行质量控制的必备条件,也极大限度地缩短了受检者的就诊时间,提高了医疗机构的整体医疗质量和诊疗效率。

影像归档管理包含核心服务系统和归档、存储管理。核心服务系统可支持UNIX、Lunix及Windows操作平台,支持Oracle、ms SQL及DB2等关系型数据库,支持系统对于影像、存储、数据库、备份服务器以及客户终端的实时监控。它能够保存系统中硬件及软件的所有错误、修复及升级记录。核心服务器故障时,确保用户仍可以从“DICOM Sever”取得影像;存储设备故障时,“DICOM Sever”仍可从影像设备获取影像;当整体网络发生故障时,提供网络和本地单机的切换方案,优先保证检查工作不停顿,当系统从故障中恢复后,可提供故障期间数据的自动转移方案。归档、存储管理的存储系统具有高安全性、可靠性和容灾能力,可支持在线、近线及离线存储与管理,可设定存储管理策略,支持自动和手动方式管理。存储在离线系统上的图像数据,在需要访问时,能够在很短时间之内恢复至在线存储系统。支持采用集中式数据库及独立影像储存管理机制,记录所有影像的储存位置,支持影像的分级存储。可根据用户的需求,设置存储设备的影像删除策略。图像存储支持非压缩,JPEG、JPEG2000无损、有损压缩及文件级的压缩方式。

目前各医疗机构在影像存储与传输系统中设置了一线存储、二线存储,均采用自动归档模式。一线存储一般使用光纤磁盘架构,速度快,吞吐量大,可支持大量用户同时访问下载和上传图像。一般保存最近三个月内的影像数据。通常全院对这些数据的访问比较频繁。二线存储一般使用SATA或者其他较光纤磁盘廉价的磁盘组成的阵列存储,性能不如一级存储,但是容量可以很大,提供三个月之外的全部影像数据的访问,通常全院对这些数据的访问概率比较小。由于一线存储空间较固定,所以需要定期将一线存储上较旧的介质数据迁移到二线存储。归档程序每天自动将以前未归档的介质复制到二线存储,在达到清除标准时再将一线存储上的介质清除,同时修改数据库标识将介质实际指向改至二线存储上。

归档过程中需要注意的事项:

1.数据安全

为保障数据安全,自动归档时一定要开启离线备份功能,保证每份影像数据都有两份备份,一份为在线备份,另一份为离线备份。

2.存储方式的选择

可选择大容量磁盘安装在归档程序所在的计算机或者服务器上进行本地备份,备份满后需手工更换。也可选择NAS存储作为远程备份。

3.备份方式的选择

一种是针对一线存储设置归档前备份介质,另一种是清除一线介质前备份介质,两种备份途径可任选一个,或者两种备份途径都选择,但需要分别设置不同的备份位置,这样将保证有两份备份离线数据。

4.日常检查

为保障归档程序能够正常运行,需要每日对归档程序的运行状态、服务器存储空间进行检查。

检查一线服务器存储空间是否接近饱和,如接近饱和将影响影像存储与传输系统上传图像。需确认是否运行了归档程序,并确认正确设置了该一线存储清除介质的日期以及归档程序确实按规则进行了归档。检查二线服务器存储空间是否接近饱和,如接近饱和将不能正常归档到二线存储。二线存储接近饱和前应购买新存储,并联系维护工程师,使新存储添加到影像存储与传输系统存储系统中。

二、数据生命周期管理

(一)概念

数据全生命周期管理是指根据数据价值随时间推移的演化关系,提供高效、低成本、安全、访问便捷的管理架构。数据全生命周期管理贯穿于数据产生(开发设计、投产变更)、数据使用(采集、修改、存储、调阅)、数据保管(备份、恢复、测试)、数据销毁等各个环节,建立数据安全管理制度,规范数据的产生、获取、存储、传输、分发、备份、恢复和清理的管理,以及存储介质的台账、转储、抽检、报废和销毁的管理,保证数据的保密、真实、完整和可用。在管理过程中,检测系统管理数据、鉴别信息和重要业务数据在采集、传输、使用和存储过程中的完整性,并采取必要的恢复措施。采用加密或其他有效措施实现系统管理数据、鉴别信息和重要业务数据采集、传输、使用和存储过程的保密性。

数据的生命周期管理目标有:

1.规范管理

通过规范数据的生命周期管理,提高数据的整体管理水平,满足监管要求。

2.提高效率

提高系统资源的使用效率,确保系统安全、稳定、高效运行。

3.优化存储结构

优化数据存储结构,有效控制在线数据规模,提高数据访问效率。

4.数据支撑

做好历史数据管理,为运营分析等提供数据支撑。

(二)特点

医学数据的主要特点:

1.海量数据

大数据的储存,是传统数据仓库的几十到上百倍。

2.数据多样性

大数据包括各种复杂结构的数据,形成结构化、半结构化和非结构化混合,关系数据、数据仓库并存的数据多样性。

3.数据及时性

数据创建、处理和分析的速度快,要求实时挖掘分析获取需要的信息,以支撑医疗业务需要。

4.数据价值高

海量的医疗大数据的价值越来越受到社会的关注,医学大数据的利用也成为了行业内研究的焦点。

在数据管理的整个生命周期中,不同阶段的数据管理特点不同,其性能、可用性、保存等要求也不相同。通常情况下,在其生命周期初期,数据的使用频率较高,需要使用高速存储,确保数据的高可用性。随着时间的推移,数据的重要性逐渐降低,使用频率会随之下降,应将数据进行不同级别的存储,为其提供适当的可用性及存储空间。最终,大部分数据将不会再被使用,可以将数据清理后归档保存,以备需要时使用。

(三)影像存储与传输系统数据生命周期管理

1.影像存储与传输系统数据特点

(1)数据的异质性:

医学影像、患者表述、医师的表述都是疾病诊断、预后及治疗的基础,也是影像存储与传输系统数据全生命周期管理应注意的问题。

(2)数据的多样性:

医学影像数据、诊断数据存在多样性是医学影像数据的显著特征,如“同病异影,同影异病”等。

(3)数据的时效性:

医学数据都具有时间性特征,只有定位在特定时间序列里的医学影像数据,才具有更高的临床诊疗价值。

(4)数据的隐私性:

医学数据不可避免地涉及患者的隐私,医学数据创造、使用和挖掘过程中有义务和责任在保护患者隐私的基础上进行相关操作。

2.影像存储与传输系统数据生命周期的阶段

(1)数据创建阶段:

数据的价值通常会随着时间逐渐降低,信息生命周期管理就是根据应用的要求,数据提供的时间及数据和信息服务的等级,提供相适应的数据产生、存储、管理等条件,以保障数据的及时供应。

(2)数据保护阶段:

从数据处理产生以来,对于数据保护的需求一直没有发生变化:需要防止数据受到无意或者有意的破坏。很多需要大量存储的应用,都需要7×24h运作和在线。系统的可用性在一定的程度上取决于数据的可用性,即使在技术上服务器和网络都是可用的,但是如果应用系统不能访问到正确的数据,用户将认为它是不可用的。数据生命周期管理将按照数据和应用系统的等级,采用不同的数据保护措施和技术,以保证各类数据和信息得到及时、有效的保护。

(3)数据访问阶段:

数据生命周期管理的主要目标是确保信息可以支持影像业务和为医疗机构提供长期的价值。因此,数据必须便于访问且能够在多个业务环节和业务应用之间共享。此外,医学影像数据必须可以为多种业务流程提供数据共享,因此这个阶段将成为信息生命周期管理与业务流程管理的交叉点。

数据存储基本可以分为三类:每天都需要访问的数据;需要随时访问,但访问频繁和访问速度要求不高的数据;偶尔需要查询或访问的数据。

这三种分类体现为在线、近线和离线三种访问方式:

1)在线方式:

在线存储之所以非常重要,是因为它可以在网络中提供对信息的即时访问,在线存储为业务系统提供日常业务处理所需要的数据和信息。因此,在线存储要求高性能、大容量、高扩充能力,以保证业务系统的快速处理。

2)近线方式:

需要定期访问但访问频率和速度要求不高的数据应当以近线方式保存。通过这种方式,可以实现较为及时且成本较低的数据访问。近线存储设备的价格比在线存储低,但数据访问的速度要慢一些。

3)离线方式:

可以将访问速度要求不高、存放的时间较长、访问的频率更低的数据存放在价格更低的存储介质和设备上或云介质上,当数据需要被访问时,才将其恢复到在线存储设备中。

(4)数据归档阶段:

归档管理也叫存储管理,同时也是系统的影像存储管理,包括归档信息设置、服务器信息设置和归档操作等功能,通过定义数据及影像的存储规则,根据规则采用手动或自动归档等方式,将影像存储与传输系统的数据和影像从一级在线存储转移到二级存储或备份到数据备份设备上(离线存储)。

三、数据迁移管理

(一)概念

随着信息技术的发展,当信息系统不能满足业务需求时,就需要进行更换或升级。在信息系统的长期运行过程中,数据库中存储了大量数据,为了保证数据的连续性和完整性,在医疗机构更换或升级信息系统时,要将更换系统前的在用系统数据库中存储的数据完整、安全、准确地迁移到新系统中,从而能够在新更换的系统中获取旧系统的数据,保证受检者检查信息的连续性,这个过程就是数据迁移。从应用系统的角度,数据迁移是将被替换系统中的历史数据通过清洗、转换,装载到新系统中,并可以在新系统中进行查看;从存储的角度,数据迁移是将数据从一个存储网络设备转移到另一个存储网络设备的过程。对于医学影像信息系统的数据迁移,需要迁移的信息数据主要包括受检者的基本信息、影像检查诊断报告数据、科室管理数据、检查设备成像时产生的医学影像数据等。受检者的基本信息、影像检查诊断报告数据、科室管理数据等都存放在SQL Server或Oracle关系型数据库中,而成像数据一般以DICOM文件的形式保存在独立的存储或磁盘阵列中。

由于不同厂商生产的影像存储与传输系统数据存储逻辑结构不尽相同,数据迁移不可避免地可能影响历史数据的使用,主要包括以下几种情况:历史数据中数据内容不完整,如某一个关键字段未设置成必填项,历史数据中可能因各种情况造成数据缺失;旧影像存储与传输系统数据结构不完全满足新影像存储与传输系统数据结构要求。因管理要求精细化等需求带来的对影像存储与传输系统数据逻辑结构的调整可能造成新系统中的某些关键字段在旧系统中没有对应的内容,致使新系统在遇到处理这些历史数据时不能提供完整的数据支持。

1.数据迁移存在的风险

数据库系统进行迁移后,由于环境的变化,会对业务产生或多或少的影响,需要明确可能产生的风险,并尽力将其降至最低。

一般情况下,可能存在如下风险:

(1)业务中断的风险:

在进行系统迁移时,必须进行旧系统向新系统的切换,这一切换过程将导致业务暂时性中断。不同的迁移方式可能产生不同的中断时间,短则数秒,长可达数小时甚至数天。一般来说,新旧系统的差异化越小,迁移手段越先进,停机时间就越短。

(2)程序修改的风险:

若系统进行异构迁移,例如从现有数据库平台迁移至异种数据库平台,由于不同平台之间在程序逻辑、SQL语法上有差别,因此需要对应用程序进行一定程度的修改,一方面将大大增加迁移工作量,成本激增,影响整个项目进度;另一方面可能引入一些错误(bug),给系统的正常运行埋下隐患。

(3)日常运维的风险:

进行数据迁移后,由于新旧系统的差异,必须对运维人员进行相关的培训,才能保证系统的稳定运行。一般来说,同种数据库平台在技术上是一脉相承的,因此原有技术人员经过简单的新特性培训就能很好地适应新平台的运维工作。若进行异构迁移,由于不同平台的运维技术差异极大,现有的运维团队必须花费大量的时间和精力进行学习以达到要求,因此在一段时间内很难保证运维质量。这种情况是对原有人力资源的浪费,甚至需要招募新的技术力量,增加了运维成本,相反如果使用同一品牌数据库将规避日常运维风险并使投资得到保护。

2.数据迁移遇到的挑战

(1)最小化业务中断时间:

即使是有计划的业务中断也将会对企业造成巨大的损失,比如电信行业计费系统的停止、营业账务系统的服务中断等,都会直接造成对外业务服务的中断,大大降低服务质量和客户满意度等。据业界估计,80%的停机时间都来源于计划的下线,其中包括硬件迁移等。因此尽量缩短迁移过程所需要的时间是提高系统连续运行的关键,目前普遍要求在 3~5h内完成迁移,并且尽量不影响正在运行的业务系统。因此,如何保证在异构环境下的迁移,并且缩短迁移的时间和业务中断时间是数据迁移的关键环节之一。对数据库的压力要在可控范围内,如果遇到业务高峰可以将迁移过程暂停,保证数据库有充足的计算资源,当峰值过后数据迁移可重新启动。

(2)数据一致性:

当前环境下对数据迁移的要求比较高,在迁移过程中系统可中断时间较短,在这种情况下,在大数据量的迁移过程中数据会更新,就会造成数据不一致,不准确的数据迁移等于无用,必须保证数据一致性。

3.数据迁移的准备

同品牌数据库的数据迁移性价比是最高的,理论上只是在Oracle数据库之间迁移数据,前端程序不需要重写与测试,Oracle数据库在数据迁移之前,需要收集应用系统对应的数据库信息进行调查和分析,综合评估出最适合的迁移方法,涉及的因素包括:①数据库大小;②每天产生的日志量;③业务高峰期时段;④高可用性要求;⑤与其他系统的关联性;⑥应用服务器Oracle客户端升级;⑦与哪些系统有数据交换,如果有是否需要考虑一起升级;⑧网络安全域;⑨可停机时间;⑩可用带宽;⑪数据库版本;⑫主库与备库的配置。

以上这些因素都需要在迁移前重点考虑,基于这些因素制定迁移方案。不同数据量选用不同的迁移策略,根据数据量来划分,5TB以下的数据划分在小数据量范围内,5TB及以上划分在大数据量范围内。针对不同数据量两种策略可以同时存在,以下为两种迁移策略:

策略一:小数据量迁移的情况下,采用数据泵(Oracle Data Pump)+ 软件(Oracle Golden Gate)的方法进行数据迁移,数据泵进行数据初始化,软件进行增量数据追平,这种迁移的优势在于如果数据满足软件挖掘日志的前提,数据访问正常的情况下就可以进行数据迁移,在业务高峰期时,可以暂停数据迁移,保证关键业务不受影响,错峰后可以重启数据迁移,保证数据一致性不受影响,并且两端的操作系统可以是异构的,如:源端是HP小型机架构,目标端是“Oracle Solaris”架构。

策略二:在源端与目标端采用不同主机架构的情况下,选用“Data Guard”+数据泵+软件的方法进行数据迁移,使用“Data Guard”将源端数据镜像至中间库,然后使用数据泵将镜像数据导入目标端,再利用软件将变化数据追平,优势在于即使源端与目标端使用异构操作系统,也可以在保证高性能的同时不影响业务。

(二)数据迁移过程

医院原有影像存储与传输系统的数据量较大,同时新数据又在不断产生,这就要求在作好新旧系统更换的同时又不影响医院业务的正常开展。因此,数据迁移过程非常重要。数据迁移的过程可分为数据迁移前的准备、数据迁移的实施和数据迁移后的校验三个阶段。

1.数据迁移前的准备

(1)分析新旧数据库之间的差异性,明确在数据存储以及字段类型方面不兼容的现象。

(2)将旧服务器系统中的现有应用数据库进行时间点的分割,将时间点以前的数据转移至历史数据库,保证在系统切换时数据库为当前有效的最小容量。

(3)编写数据迁移的测试计划,记录解决在数据迁移过程中出现的技术问题。

(4)针对数据迁移程序方式,进行数据迁移的测试工作,通过严格的测试过程,记录各自的优缺点和效率,确定数据迁移的方式。

(5)制订数据迁移的应急措施和回溯机制,对原有数据做好本机及异地备份,在数据正式转换前,进行测试并校验无误后,再导入正式数据库,发生数据丢失、损坏时可以从原数据库再次迁移。

2.数据迁移的实施

(1)确认停机时间,通知相关部门停止业务。

(2)更改旧服务器连接用户的密码,防止联网产生新的数据,导致迁移过程中数据丢失。

(3)启动数据迁移的批处理,确认每个步骤都正确。

(4)如果出现异常情况,定位问题并解决;如果无法确认问题所在,且无法在短时间内解决,则将服务器的状态回溯至旧服务器系统,恢复旧服务器连接并通知相关部门。回溯机制是当数据迁移的过程失败,导致无法启用新服务器系统时的一种还原机制,保障能够还原到数据迁移前的原始状态。如果发生数据迁移失败的现象,将旧服务器的网线重新连接,并复原IP地址和连接用户及密码;客户端测试连接,恢复旧服务器系统。

(5)如果数据迁移正常,则更改新服务器的IP地址,方便客户端的连接。

(6)进入迁移后的校验程序。

3.数据迁移后的校验

(1)制定相应的数据迁移检验方式,将新旧系统数据对比检查,通过数据库的应用程序,对相同指标的数据进行查询,并比较最终的查询结果。

(2)挑选有代表性的数据表,通过命令检查表的一致性,将新服务器系统的数据库表结构和旧服务器进行比较,确认没有出现数据表断链等现象。

四、系统质量控制管理

(一)质量控制管理的重要性

随着医学影像技术的不断深入及医学影像学、信息学、电子学等学科的不断融合,医学影像成像设备生成的数字化医学影像信息越来越丰富,在临床诊断和疾病治疗中发挥的作用越来越重要。因而影像科对临床医师电子申请单、技师拍片图像质量、技师三维重建图像、一线医师报告、审核报告等方面的质量提出了更高的要求,成为科室质控管理、持续提高科室质量与安全管理水平的主要目标。

(1)医学影像质量控制管理可规范科室人员的操作行为,优化流程,降低科室运行成本,提高科室工作效率、服务质量和管理水平。

(2)医学影像质量控制管理可提高影像检查和诊断的精准性,提高医疗质量和受检者满意度。

(3)医学影像质量控制管理可增强影像科室与临床科室的沟通,促进检查电子申请单、诊断报告单、数字图像的质量提升,做好医技和临床诊疗的交接,双方相辅相成,避免产生差错,提高服务质量和工作效率。

(二)医学影像质量控制系统功能设计

1.设计原则

(1)整体性:

各子系统要做到无缝连接,每个模块都应按照医学信息标准化(HL7和DICOM3.0)的统一标准进行运作,在进行联系时就有“共同语言”,不会因为“语言”不同而造成各子系统间无法沟通。

(2)标准化:

按照国家卫生部2002年发布的《医院信息管理系统规范》的要求以及国家信息管理的标准,医院信息系统(HIS)按HL7数据交换标准;其中CIS(临床信息系统)按ICD-10.SNOMED、结构化电子病历XML设计;影像存储与传输系统按DICOM3.0标准,MPPS通信协议;LIS(检验信息系统)按ASTM协议等国际信息交换标准等,选择符合以上要求并通过国家有关权威部门认证和卫生主管部门评审的标准化软件系统。

(3)开放性:

利用目前已有或即将开发完成的一些比较规范的程序,实现系统的接口,从而提高信息的共享和整合能力。

(4)安全性:

对超级用户实行互相监督和访问、删改的痕迹保留和永久性备份保留的安全机制,以确保有关过程的安全性。

(5)先进性:

系统应该处于国内领先水平,具备在使用后五年内的生存能力,并且在可持续发展性上要具有较大的发展空间和升级空间,无论是对操作平台的选择,还是软件功能的编制,都要有一定程度的超前性。

2.设计方法

(1)采用标准和开放的技术:

系统采用的各种硬件设备和软件系统均遵循国际标准或工业标准及国际流行标准,符合开放性的设计原则,使其具备优良的可扩展性、可升级性和灵活性。

系统所采用的具体实现的技术,应基于行业标准和得到广泛使用并已规范的行业标准的技术和架构,有利于降低技术风险以及对特定供应商的依赖性;有利于保持系统的向后兼容性、可集成性和可扩展性。

(2)采用面向对象的技术:

面向对象方法(object-oriented method)是将面向对象的思想应用于软件开发过程中、指导开发活动的系统方法,简称OO (object-oriented)方法,是建立在“对象”概念基础上的方法学。对象是由数据和容许的操作组成的封装体,与客观实体有直接对应关系,一个对象类定义了具有相似性质的一组对象。而继承性是对具有层次关系的类的属性和操作进行共享的一种方式。所谓面向对象就是基于对象概念,以对象为中心,以类和继承为构造机制,来认识、理解、刻画客观世界和设计、构建相应的软件系统。

面向对象方法作为一种新型的独具优越性的新方法正引起全世界越来越广泛的关注和高度的重视,它被誉为“研究高新技术的好方法”,更是当前计算机领域关注的重点。

面向对象技术的发展已经成熟,基于面向对象技术的开发语言和应用框架已被证明可以大大提高信息系统开发和建设的效率,提高架构的合理性和可扩展性。

(3)采用基于组件的技术:

传统的Client/Server结构、群件、中间件等大型软件系统的构成形式,都将在组件的基础上重新构造。在组件技术的概念模式下,软件系统可以被视为相互协同工作的对象集合,其中每个对象都会提供特定的服务,发出特定的消息,并且以标准形式公布出来,以便其他对象了解和调用。组件间的接口通过一种与平台无关的语言(interface define language,IDL)来定义,而且是二进制兼容的,使用者可以直接调用执行模块来获得对象提供的服务。

3.功能设计

(1)质控内容:

对电子申请单、图像质量、报告质量、审核报告质量等各个环节进行质控评分并及时统计跟踪结果,对科室整体质量的提升及薄弱环节的整改起着重要作用。

1)申请单质控:

①病史内容过于简单或空白申请单质控;②假病史、错误病史、过期病史、与现病情不符;③遗漏重要病史(例如手术史);④检查目的不明确;⑤检查项目申请错误。

2)图像质量质控:

①受检者及检查部位是否正确;②检查技术是否得当、操作是否规范;③影像是否符合诊断要求;④体位设计或定位是否准确;⑤成像参数设置是否恰当;⑥有无伪影;⑦检查序列图像是否齐全,显示方式是否正确。

3)照片排版质控:

①是否显示阳性病变,是否遗漏;②排版图像是否正确;③排版版式是否符合照片排版要求和规范。

4)三维重建质控:

①重建部位或采用重建技术是否符合申请单要求;②三维重建图像有无遗漏需要重建的主要阳性病变;③重建图像能否满足诊断要求;④重建技术是否得当;⑤重建图像是否具有良好的对比度,图像大小合适、美观;⑥重建图像应无假阳性或假阴性病变。

5)医师报告质控:

要求做到①报告用语规范精炼,使用专业术语,无错别字;②病变描述全面,包括大小、部位、解剖关系、强化方式等;诊断内容全面、恰当,(除主要阳性病变外)无漏诊和误诊;③诊断思路清楚,有必要的鉴别诊断和合理建议。应避免:①主要阳性病变漏诊或误诊,报告左右写反,定位错误;②简单套用模板,出现男女性器官写反或受检者有外科术史,但报告中器官仍存在等情况;③报告单出现重要错字、漏字引起歧义或诊断错误;复查片未与上一次检查结果对比描述(无法获得上次的检查结果除外);④诊断项诊断缺失或报告中描述的阳性病变未在诊断项中诊断;⑤报告中受检者的信息或影像存储与传输系统的上传图像与申请单明显不符。

(2)质控方式

1)随机质控:

基于日常影像诊断的随机质控,根据抽样规则及概率标记检查,在影像诊断工作站提交报告时弹出质控窗口,评分完成后方可提交报告。

2)集中质控:

科室按阶段、有组织地进行集中质控。

(3)质控项目评分

1)规范类:

如申请单书写规范。

2)评分类:

如图像质量分析、报告质量、审核报告质量。

(4)质控评分结果查询:

质控评分完成后,可以在检查列表中查看评分结果。

五、系统容错技术

容错技术最早由约翰冯诺依曼(John VON Neumann)提出。所谓容错是指在出现一个或者几个硬件或软件方面的故障或错误的情况下,计算机系统能够检测出故障的存在并采取措施容忍故障,不影响正常工作,或者在能够完成规定的任务的情况下降级运行。

容错最基本的方法是冗余技术,所谓冗余就是超过系统实现正常功能的额外资源。冗余包括硬件冗余、软件冗余、时间冗余和信息冗余。

(一)硬件冗余

硬件冗余包括静态硬件冗余、动态硬件冗余和混合冗余。静态硬件冗余常见的形式是三模冗余(TMR),其基本原理是:系统输入通过三个功能相同的模块,产生三个结果送到多数表决器中进行表决,即三中取二的原则,如果模块中有一个出错,而另外两个模块正常,则表决器的输出正确,从而可以屏蔽一个故障,三模冗余的缺点是,如果三模块的输出各不相同,则无法进行多数表决;若有两个模块出现一致的故障,则表决的结果会出现错误。

(二)软件冗余

由于硬件系统的故障主要来自生产和使用阶段,因此容错可以通过相同部件的重复,即相同资源的累积设置来实现;而软件故障主要来自说明、设计和实现阶段,因此程序的简单重复不能实现容错,它只能防止硬件损坏或者环境干扰等引起的物理性故障,而不能防止软件本身缺陷造成的故障。实现软件容错的基本方法是将若干个根据同一需求说明编写的不同程序(即多版本程序),在不同空间同时运行,然后在每一个设置点通过表决或接收测试进行试验。

(三)时间冗余

时间冗余的基本思想是重复执行指令或者一段程序来消除故障的影响,以达到容错的效果,它是用消耗时间来实现容错的目的。根据执行的是一条指令还是一段程序,分成两种方法:一种是指令复执。当检测出故障时,重复执行故障指令,若故障是瞬时的,则在指令复执期间可能不会出现,程序就可以继续向前运行。指令复执必须保留上一指令结束的状态。另一种是程序回滚。该方法不是重复执行一条指令,而是重复执行一小段程序。在整段程序中可以设置多个恢复点,在程序出现错误的情况下可以从一个个恢复点处开始重复执行程序。首先检验一小段程序的计算结果,若结果出现错误则回滚再重复执行该部分,若一次回滚无法解决则多次回滚直至故障消除。

(四)信息冗余

信息冗余技术是通过在数据中附加冗余的信息位来达到故障检测和容错的目的。通常情况下,附加的信息位越多,其检错纠错的能力就越强,但是这同时也增加了复杂性和难度。信息冗余最常见的有检错码和纠错码。检错码只能检查出错误的存在,不能改正错误,而纠错码能检查出错误并纠正。常用的检错纠错码有奇偶校验码、海明码、循环码等。

六、影像数据备份管理

(一)数据备份的概念

数据备份是对数据库中的部分或全部数据进行复制,形成副本,存放到一个相对独立的设备上,如磁盘、磁带,以备将来数据库出现故障时使用。

数据备份的类型:

1.全备份

指系统中所有的数据都通过备份进程备份。全备份的备份时间最长,这种方法的好处是恢复时间快。恢复时间缩短是因为已经有了所有的数据备份,要做的就是做一次全恢复。

2.差异备份

指系统管理员在一个周期内进行一次全备份,在其他时间做差异备份。这种备份方法的恢复时间较长,不但要从全备份中恢复数据,还需要将每天的变化量恢复到系统中。

3.增量备份

指在一个周期内进行全备份,每天增加备份当天的数据变化。增量备份需要的备份时间最短,但是,恢复时间却很长而且很复杂。在恢复的过程中,不但需要恢复第一次的全备份,还需要使用每天变化量的备份,一次恢复一天的数据,直至最近一次所做的增量备份为止。

(二)备份的基本要求

医疗数据是最重要的系统资源,数据丢失将会使系统无法连续正常工作。数据错误则将意味着不准确的事务处理。可靠的系统要求能立即访问准确信息。将综合存储战略作为计算机信息系统基础设施的一部分实施不再是一种选择,而已成为必然的趋势。数据备份系统应该遵循稳定性、全面性、自动化、高性能、操作简单、实时性等原则。备份系统先进的特性可提供增强的性能,易于管理,广泛的设备兼容性和较高的可靠性,以保证数据的完整性。广泛的选件和代理能将数据保护扩展到整个系统,并提供增强的功能,其中包括联机备份应用系统和数据文件,先进的设备和介质管理,快速、顺利的灾难恢复以及对光纤通道存储区域网(SAN)的支持等。本地完全数据备份至少每天一次,且备份介质需要于场外存放。提供异地数据备份功能,利用通信网络将关键数据定时批量传送至异地备用场地。对于核心交换设备、外部接入线路以及系统服务器进行双机、双线的冗余设计,确保从网络结构、硬件配置上满足不间断系统运行的需要。

备份的基本要求包括:

1.可用性

对数据进行备份是为了保证数据的一致性和完整性,消除系统使用者和操作者的后顾之忧,保证恢复之后的数据可以使用。

2.稳定性

数据备份方法的主要作用是为系统提供一个数据保护的方法,因此该方法本身的稳定性和可靠性就是最重要的。首先,备份软件一定要与操作系统100%兼容,其次,当事故发生时,能够快速有效地恢复数据。

3.全面性

在复杂的计算机网络环境中,可能包括了各种操作平台,并安装了各种应用系统。要保证选用的备份软件支持各种操作系统、数据库和典型应用。

4.自动化

很多系统由于工作性质的原因,对何时备份、用多长时间备份都有一定的限制,在下班后的空闲时间系统负荷轻,适于备份,但这会增加系统管理员的负担,由于精神状态等原因,会给备份安全带来潜在的隐患。因此,备份方案应能提供定时的自动备份。在自动备份的过程中,还要有日志记录功能,并在出现异常情况时自动报警。

5.高性能

随着业务的不断发展,数据越来越多,更新越来越快,在系统空闲时间来不及备份如此多的内容,在工作时间备份又会影响系统性能。这就要求在设计备份时,应尽量考虑到提高数据备份的速度。

6.实时性

有部分关键性的任务要求24h不停机运行,在备份时,有一些文件可能仍然处于打开状态,所以在进行备份时,要采取适当的措施,保证正确备份系统中的所有文件。实时备份将会对业务系统的性能产生一定的影响,如何采取有效的技术手段避免备份对服务器系统、数据库系统、网络系统的影响,是需要重点考虑的问题。

(三)备份介质

1.廉价磁盘冗余阵列(RAID)

廉价磁盘冗余阵列(RAID)提供了相当的基于服务器网络的数据保护和可靠性。RAID同时提供对千兆字节存储信息的快速访问。当其中某个器件(驱动器、磁盘等)出现故障时,RAID的冗余设计可以保证磁盘阵列操作的正常进行。

尽管RAID比光介质存储设备和磁带昂贵,但在任何需要容错性和快速在线数据访问的地方,它都能提供最佳的数据保护,比如在一个在线数据库或业务处理环境中。

RAID能够保护由硬件故障造成的突发数据丢失。然而,RAID并不是一个数据备份工具。RAID数据要定期备份到光介质或磁带上,从而提供一个附加的数据存储安全网络。

2.光盘机

光盘机(MO drive)的准确翻译应为磁光盘机,一般有3.5in和5.25in两种,单片MO的容量从230M到2.6GB,甚至更高。MO的最大特点是读写速度快,相对普通磁带机而言MO采用随机存储方式。此外,MO的数据保存时间长,由于MO只有在极高温度下(如激光照射)才能够修改数据,加上有外壳保护,不像CD-ROM容易被划伤,数据可保存20年以上。

3.WORM(一次刻写多次读取)介质

是永久备份和归档的理想工具。可重写(可擦除)介质能够取代日常备份用的磁带,在数据短期存储的情况下可以进行擦除或修改操作,使记录介质得以重复使用。有多种类型的WORM和可重写光盘可供使用。通常使用的5.25in(1in=2.54cm)介质每盘提供2.6GB的存储容量,12in盘可存储15GB的数据。当需要进行长期数据存储(15年以上存储期)或快速(30s以内,包括自动光盘机 / 自动光盘库操作)访问不足1MB的文档时,使用光存储设备。

4.光盘库

光盘库(MO jukebox)类似磁带库,只是采用光盘机和光盘片,是最佳的自动存储设备,成本较磁带库高。

5.磁带

磁带为各种场合的需要提供了兼顾容量和性能的数据备份。低端Travan级磁带介质,单盒可容纳4GB的数据量,其传送速度为514kB/s。高端数字线性磁带(DLT)每盒能处理35GB的数据量,它每秒提供5MB的数据吞吐量。在其他场合应用的是诸如DAT一类的主流磁带技术。在压缩数据模式下,所有的存储容量和数据吞吐速率都可以加倍。磁带的备份容量远大于其他方式。磁带可通过磁带机进行读写。磁带机是最常见的大容量备份设备,目前存在许多制式,包括QIC、4mm、8mm、3480/3490、DLT、DST 等,所有磁带设备都采用线性数据流存储方式。

6.磁带库

磁带库(tape library)是一种自动存储设备,磁带库设备有多个磁带插槽,一个或多个磁带机和一个或多个由SCSI指令控制的机械臂,存储量大,配合数据存储管理软件实现存储管理的全自动化。

(四)数据库恢复

数据库恢复是指在数据库发生故障时,使用数据库备份还原数据库,使数据库恢复到无故障状态。根据数据库恢复时使用的备份不同,恢复分为物理恢复和逻辑恢复。物理恢复是利用物理备份来恢复数据库,即利用物理备份文件恢复损坏文件,是在操作系统级别上进行的。逻辑恢复指利用逻辑备份的二进制文件,使用导入工具将部分或全部信息重新导入数据库,恢复损毁或丢失的数据。

根据数据库恢复程度的不同,恢复可分为完全恢复和不完全恢复。完全恢复是利用备份使数据库恢复到出现故障时的状态。不完全恢复是利用备份使数据库恢复到出现故障时刻之前的某个状态。

数据库的恢复分3个步骤:首先使用一个完整备份将数据库恢复到备份时刻的状态;然后利用归档日志文件和联机重做日志文件中的日志信息,采用前滚技术重新备份以后已经完成并提交的事务;最后利用回滚技术取消发生故障时已写入日志文件但没有提交的事务,将数据库恢复到故障时刻的状态。

(五)数据保密

数据的保密性指保护数据库,防止不合法地使用而造成数据泄露,一般可通过数据库加密技术实现。所谓数据库加密技术是指借助一定的方式加密计算机传输和存储中的数据,有效保护数据和内容的一种技术。伴随着经济及科技的发展,信息网络在越来越多的领域中得以应用,但如果在网络使用过程中,一些商业或个人信息遭到破坏或盗窃,会造成不可设想的后果,因此应用数据加密技术具有非常重要的现实意义。借助先进的科学技术加密网络传输文件,可以将数据库中的内容转换成密文,这类密文只有极少数的人能够破解,通过这种做法,数据库的安全性可以大大提升,降低了数据被窃取的可能。

数据库加密技术主要分为三大类:前置代理及加密网关技术、应用层加密技术、基于视图和触发器的后置代理技术。

1.前置代理及加密网关技术

该技术的思路是在数据库之前增加一道安全代理服务,访问数据库的用户必须经过该安全代理服务,在此服务中实现如数据加解密、存取控制等安全策略;然后安全代理服务通过数据库的访问接口实现数据在库中的最终存储。安全代理服务存在于客户端应用与数据库存储引擎之间,负责完成库中数据的加解密工作,加密数据存储在安全代理服务中。

2.应用层加密技术

应用层加密的主要技术原理是通过加密API(JDBC、ODBC、CAPI等)对敏感数据进行加密,将加密数据存储到数据库的底层文件中,在进行数据检索时,将密文数据取回客户端,再进行解密。

3.基于视图和触发器的后置代理技术

这种技术的核心思想是充分利用数据库自身提供的应用定制扩展能力,分别使用其触发器扩展能力、索引扩展能力、自定义函数扩展能力以及视图等技术以满足对数据进行存储加密,加密后的数据检索对应用无缝透明等最主要的需求。

七、影像信息系统安全管理

(一)信息安全概述

在信息化社会中,信息技术的广泛应用,互联网和移动互联网的深入普及,使得信息安全成为信息系统规划和建设运营时需要考虑的重要问题。缺乏信息安全保障的信息系统,将会给生产经营、社会管理服务、个人资产、个人隐私等方面带来严重的损害。由于信息泄露和信息系统非法入侵,金融安全、国防安全甚至国家安全都有可能面临非常严重的危险。

当前较为常见的信息安全问题主要表现为:计算机病毒泛滥、恶意软件入侵、黑客攻击、利用计算机犯罪、网络有害信息泛滥、个人隐私泄露、钓鱼网站、电信诈骗等犯罪活动。另外,随着物联网云计算三网融合,大数据等新一代信息技术的广泛应用,也给信息安全提出了新的需求和挑战。信息安全包括以下内容:

1.私密性

信息不被未授权知晓的属性。

2.完整性

信息是正确的、真实的、未被篡改的、完整无缺的属性。

3.可用性

信息可以随时正常使用的属性。

信息必须依赖其存储、传输、处理及应用的载体存在和流转。因此针对信息系统安全可以划分为以下4个层次:设备安全、数据安全、内容安全和行为安全。信息系统的设备安全是信息系统安全的物质基础,是信息系统安全的首要问题,主要包括设备的稳定性、设备的可靠性和设备的可用性。在很多情况下,即使信息系统设备没有受到损坏,其数据安全也可能已经受到了侵害,如数据泄露、数据篡改等,由于危害数据安全的行为具有较高的隐蔽性,数据应用用户往往并不知情,因此危害性很高。内容安全是信息安全在政治法律道德层次上的要求,信息内容在政治上是健康的,符合国家法律法规,符合中华民族优良的道德规范,除此之外,广义的内容安全还包括信息内容保密、知识产权保护、信息隐私和隐私保护等诸多方面,如果数据中充斥着不健康、违法、违背道德的内容,即使它是保密未篡改的,也不能说是安全的,因为这会危害国家安全、社会稳定、精神文明,因此必须在确保信息系统设备安全和数据安全的基础上,进一步确保信息内容的安全。

1.信息安全技术 信息安全技术包括硬件系统安全技术、操作系统安全技术、数据库安全技术、软件安全技术、网络安全技术、密码技术、恶意软件防治技术、信息隐藏技术、信息设备可靠性技术等,其中硬件系统安全和操作系统安全是信息系统安全的基础,密码和网络安全是关键技术。

2.信息安全等级保护 2007年,公安部、国家保密局、国家密码管理局、国务院信息工作办公室发布了《信息安全等级保护管理办法》,根据这个办法,国家信息安全等级保护,坚持自主定级、自主保护的原则,信息系统的安全保护等级应根据信息系统在国家安全经济建设社会生活中的重要程度,信息系统遭到破坏后对国家安全社会秩序公共利益以及公民法人和其他组织的合法权益的危害程度等因素确定,将信息系统的安全保护等级分为以下5级:

第1级:信息系统受到破坏后,会对公民法人和其他组织的合法权益造成损害,但不损害国家安全、社会秩序和公共利益。使用单位应当依据国家有关管理规范和技术标准进行保护。

第2级:信息系统受到破坏后,会对公民法人和其他组织的合法权益产生严重损害,或者对社会秩序和公共利益造成损害,但不损害国家安全。国家信息安全监管部门对该级信息系统信息安全等级保护工作进行指导。

第3级:信息系统受到破坏后,会对社会秩序和公共利益造成严重损害,或者对国家安全造成损害。国家信息安全监管部门对该级信息系统信息安全等级保护工作进行监督检查。

第4级:信息系统受到破坏后,会对社会秩序和公共利益造成特别严重的损害,或者对国家安全造成严重损害。国家信息安全监管部门对该级信息系统信息安全等级保护工作进行强制监督检查。

第5级:信息系统受到破坏后,会对国家安全造成特别严重损害。国家指定专门部门对该级信息系统信息安全等级保护工作进行专门监督检查。

(二)数据安全和隐私保障

1.数据安全

数据安全包括数据独立性、数据安全性、数据完整性、并发控制、故障恢复等方面。

(1)数据独立性:

包括物理独立性和逻辑独立性两个方面:物理独立性是指用户的应用程序与存储在磁盘上的数据库中的数据是相互独立的;逻辑独立性是指用户的应用程序与数据库中的逻辑结构是相互独立的。一般情况下,操作系统中的对象是文件,而数据库支持的应用要求更为精细。通常比较完整的数据库对数据安全性采取以下措施:

1)将数据库中需要保护的部分与其他部分相隔。

2)采用授权规则,如账户、口令和权限控制等访问控制方法。

3)对数据进行加密后存储于数据库。

(2)数据完整性:

包括数据的正确性、有效性和一致性。正确性是指数据的输入值与数据表对应域的类型相同;有效性是指数据库中的理论数值满足现实应用中对该数值段的约束;一致性是指不同用户使用的同一数据是相同的。保证数据的完整性,需要防止合法用户使用数据库时向数据库中加入不合语义的数据。

(3)并发控制:

如果数据库应用要实现多用户共享数据,就可能发生在同一时刻多个用户存取数据的情况,这种事件称为并发事件。当一个用户取出数据进行修改,在修改存入数据库之前如有其他用户再取此数据,那么读出的数据就是不正确的。这时就需要对这种并发操作施行控制,排除和避免这种错误的发生,保证数据的正确性。

(4)故障恢复:

由数据库管理系统提供一套方法,可及时发现故障和修复故障,从而防止数据被破坏。数据库系统应能尽快恢复运行时出现的物理上或是逻辑上的错误故障,比如对系统的误操作造成的数据错误等。

2.数据安全分类

(1)数据存储安全:

建立健全数据备份 / 恢复和应急处理机制,确保网络信息系统的各种数据实时备份,当数据资源受到侵害破坏损失时,及时启动备份恢复机制,能够保证系统快速恢复,从而保障整个网络信息系统的正常运转。

对于一些重要的或敏感的数据,如含有受检者的身份信息的数据(如姓名、地址、身份证号等),含有资金账户、财务信息、受检者电子病历等细节信息,以及其他业务敏感文件资料或敌对势力想方设法获取的医疗专利成果技术信息与数据等,在进行离线存储时,一方面要确保存储设备的物理安全性,另一方面应尽量采取可靠的手段进行加密存储,最大程度地保护核心数据信息不被泄露。

(2)设备冗余和应用备份:

关键业务数据访问路径上的任何一条通信链路、任何一台网关设备和交换设备,与关键业务处理和数据访问有关的任何一台应用服务器、数据库服务器等,都应当采用可靠的冗余备份机制,以最大化保障数据访问的可用性和业务的连续性。

(3)数据传输安全:

采用必要的加密技术对数据进行传输加密,保证所传输的私有信息数据的保密性、完整性、真实性。

(4)管理安全:

如前所述,管理安全主要考虑的是“人”的因素,即在安全建设及维护的过程中,如何通过“人”来对技术进行安全的“操作”和“配置”,在医疗机构信息网络管理方面需要建立完善且可以落地的安全管理体系:

1)需要建立完善的机房管理制度,确保只有授权的人员才能进入重要的安全区域内。

2)需要建立完善的网络与安全人员管理制度。

3)需要定期进行培训,提升网络管理人员的技术水平,还需要对全员进行安全意识的培训。

4)需要对重要的信息资产进行统一的管理,防范信息资产被破坏或窃取。

3.隐私保障

隐私是指公民个人的与公共利益无关的私人事项及其物化资料。在医疗机构中,受检者的个人信息和隐私保护非常重要,所有与受检者关联的信息资料、医疗资料等都只能在信息合法授权的情况下由指定的医务人员浏览,而相关的医务人员有义务为受检者保守隐私。在医院信息系统和医学影像信息系统中,要以统一的方式对受检者的信息资料进行配置授权、执行保护策略、获取记录授权机制。

(1)系统设置基于角色的权限管理。

(2)建立系统日志管理,能够查看用户查询内容、登录退出时间。

(3)系统应具备保证数据安全的功能。重要数据,系统提供有痕迹的更正功能,预防利用计算机犯罪。

(4)重要数据资料的管理要遵守国家有关保密制度的规定。从数据输入、处理、存储、输出等环节严格审查和管理,不允许通过影像存储与传输系统非法扩散。

(5)重要保密数据,要对数据进行加密处理后再存入机内,对存储磁性介质或其他介质的文件和数据,系统提供相关的保护措施。

(6)可根据角色设置控制界面按钮及各种控件显示、失效、隐藏。

(7)引进痕迹学,对所有操作均进行保存。

(三)加密技术

信息加密涉及信息论、计算机科学和密码学等多个领域的知识,它的主要任务是研究计算机系统和信息的保护方法以实现系统内信息的安全性、保密性、完整性和真实性。为了保证信息的安全性需要采用信息加密技术提取信息的特征码或特征矢量,并与有关信息封装在一起,信息的合法拥有者可以利用特征码对信息的完整性进行校验:需要采用加密算法对信息使用者的身份进行认证、识别和确认,以对信息的使用进行控制。加密前的原始数据称为明文,加密后的数据称为密文,从明文到密文的过程称为加密。加密在加密密钥的控制下进行。

由于数据以密文形式存在于信息系统中,且只有合法用户才能掌握密钥。因此,即使密文被非法窃取,未授权者没有密钥也不能得到明文,不能理解它的真实含义,从而达到确保数据保密性的目的。

加密技术包括两个元素:算法和密钥。密钥加密技术的密码体制分为对称密钥体制和非对称密钥体制两种。对称加密以数据加密标准算法为典型代表,非对称加密通常以RSA算法为代表。

1.对称加密技术

对称加密以数据加密标准(data encryption standard,DES)算法为典型代表,对称加密采用了对称密码编码技术,它的特点是文件加密和解密使用相同的密钥,即加密密钥也可以用作解密密钥,这种方法在密码学中称为对称加密算法。对称加密算法使用起来简单快捷,密钥较短,且破译困难。

2.非对称加密技术

非对称加密也被称为公钥密码体系。非对称加密算法使用完全不同但又完全匹配的一对钥匙,即公钥和私钥。在使用非对称加密算法加密文件时,只有使用匹配的一对公钥和私钥,才能完成对明文的加密和解密过程。非对称加密算法的具体工作原理是,如果发信方想发送只有收信方才能解读的加密信息,发信方必须首先获取收信方的公钥,然后利用收信方的公钥加密原文;收信方收到加密密文后,使用自己的私钥才能解密密文。由于不对称算法拥有两个密钥,因而特别适用于分布式系统中的数据加密。

(四)身份认证

身份认证是指用户在访问系统资源时,系统确定该用户是否具有对资源的访问和使用权限,进而使计算机和网络系统的访问策略能够可靠、有效地执行,防止攻击者假冒合法用户获得资源的访问权限,保证系统和数据的安全,以及授权访问者的合法利益。

身份认证技术有以下六种:

1.用户名+口令认证

系统为合法用户建立用户名和对应口令,通常情况下,用户名和口令存放于数据库中,用户登录时,服务器从数据库中读取口令,并验证用户和口令是否匹配。这种认证方式是互联网早期的应用模式。它使用简单,应用广泛,容易被客户接受。然而其安全性依赖于口令的保密性,口令一般较短且是静态数据,容易猜测,且易通过窥探、字典攻击、穷举尝试、网络数据流窃听等方式被攻击。

2.智能卡

智能卡是将微处理器、卡内操作系统、存储器和固有程序固封于基片中的卡片,尺寸较小易于携带,使用简捷。微处理器具有一定的逻辑运算和数据处理能力,可以验证和处理外部提供的信息及卡内的一些操作。存储器用于存储固有程序和信息数据,对外可以提供信息读取,对内可以提供于处理器操作。智能卡可以大量地存储用户信息。

3.动态口令

动态口令采用专用硬件,内置密码生成芯片运行专门的密码算法,根据当前时间或使用次数生成当前密码。认证服务器采用相同的算法计算当前的有效密码。用户使用时需要将动态令牌上显示的当前密码输入客户端计算机,由于用户每次使用的密码都不相同,无法利用这个密码来仿冒合法用户的身份。该方式遵循了用户采用用户名+口令进行身份认证的使用习惯,并采用动态口令的方式解决黑客攻击问题。

4.生物识别方式

生物特征认证是指采用每个人独一无二的生物特征来验证用户身份的技术。常见的有指纹识别、虹膜识别等。目前生物识别技术在军工、矿井、门禁、考勤等方面应用广泛。从理论上说,生物特征认证是最可靠的身份认证方式,因为它直接使用人的物理特征来表示每一个人的数字身份,不同的人具有不同的生物特征,因此几乎不可能被仿冒。但认证时需要单独的生物特征采集设备,如指纹录入设备、虹膜读取设备等,成本较高;生物识别技术也是一种单向认证技术,并且没有数字签名功能。

5.数字证书

数字证书采用公钥体制,即利用一对互相匹配的密钥进行加密、解密。每个用户设定一个特定的且仅为本人所知的私有密钥(私钥)进行解密和签名,同时设定一个公共密钥(公钥),并由本人公开,为一组用户所共享,用于加密和验证签名。当发送一份保密文件时,发送方使用接收方的公钥对数据加密,而接收方则使用自己的私钥解密,这样信息就可以安全无误地到达目的地。通过数字的手段保证加密过程是一个不可逆的过程,即只有用私钥才能解密。公开密钥技术解决了密钥发布的管理问题,用户可以公开其公钥,而保留其私钥。一般情况下证书中还包括密钥的有效时间、发证机关(证书授权中心)的名称、该证书的序列号等信息。数字证书就是网上的数字身份证,基于公钥基础设施(public key infrastructure,PKI)构架的数字证书认证方式可以有效保证用户的身份安全和数据安全。数字证书是由可信任的第三方认证机构颁发的一组包含用户身份信息(密钥)的数据结构,PKI体系采用加密算法构建了一套完善的流程,保证数字证书持有人的身份安全,身份认证时需要输入证书文件的保护口令。

采用了PKI的认证技术,安全性较高,数字证书文件一般为PKCS#12格式,该文件保存在用户的主机上,使用时需要输入文件的使用口令,身份认证过程可以支持单向 / 双向认证模式。

6.“USB Key”

“USB Key”是一种 USB 接口的硬件设备,它内置单片机或智能卡芯片,可以存储用户的密钥或数字证书,利用“USB Key”内置的密码算法实现对用户身份的认证,可以实现强身份认证,支持单向 / 双向认证模式,安全性高。

采用了基于PKI的身份认证方式,使用“USB key”作为证书载体,确保证书无法被复制,从而确保证书的唯一性,对用户的密钥提供高强度的安全保护。

(五)网络防火墙

防火墙是实用性很强的网络安全防御技术,它阻挡对网络的非法访问和不安全数据的传递,使得本地系统和网络免于许多网络安全威胁,在网络安全中防火墙主要用于逻辑隔离外部网络与受保护的内部网络。防火墙技术早在1994年就被RFC1636列为信息系统安全机制不可缺少的一项措施。

1.定义

从狭义上说,防火墙是指安装了防火墙软件的主机或路由器系统,从广义上说防火墙还包括整个网络的安全策略和安全行为。所有的从外部到内部或从内部到外部的通信都必须经过它;只有内部访问策略授权的通信才能被允许通过;系统本身具有很强的可靠性。总之,防火墙是一种网络安全保障手段,是网络通信时执行的一种访问控制尺度。其主要目标是通过控制入出一个网络的权限,并迫使所有的链接都经过这样的检查,防止一个需要保护的网络遭受外界因素的干扰和破坏,在国际上防火墙是一个分离器、一个限制器,也是一个分析器,有效地监视了内部网络和因特网之间的任何活动,保证了内部网络的安全。在物理实现上,防火墙是位于网络特殊位置的一组硬件设备,防火墙可以是一个独立的系统,也可以在一个进入网络互联的路由器上实现防火墙。

2.基本类型

(1)包过滤防火墙:

又被称为访问控制表,它根据定义的过滤规则,审查每个数据包,并确定数据包是否与规则匹配,从而决定数据包能否通过,这种防火墙可以与现有的路由器集成,也可以用独立的包过滤软件实现。数据包过滤对用户透明、成本低、速度快、效率高,但如果为了提高安全性而使用很复杂的规则,效果也会大大降低。

(2)应用网关防火墙:

应用网关是指在网关上执行一些特定的应用程序和服务器程序,实现协议过滤和转发功能,它工作在应用层上,能针对特别的网络应用协议,制定数据工具逻辑。当远程用户希望和一个正在运行网关的网络进行连接的时候,该网关就会阻塞这个远程连接,并对连接的各个域进行检查,若符合指定的要求,就会在远程主机和内部主机之间建立一个桥,这个桥就可以设置更多的控制,并可以提供比较成熟的日志功能,但使用效率不高。

(3)代理服务防火墙:

主要使用代理技术来阻断内部网络和外部网络之间的通信,达到隐蔽内部网络的目的,其主要策略是不允许外部主机连接到内部安全网络,允许内部主机使用代理服务器访问因特网主机,只有那些认为可以信赖的代理服务才允许通过。它包含三个模块,代理服务器、代理客户和协议分析模块。它对于每项服务代理可能要求不同的服务器,且不能保证受保护的内部网络免受协议弱点的限制,并且代理不能改进底层协议的安全性,不利于网络新业务的开展。

(4)状态检测防火墙:

也叫自适应防火墙或动态包过滤防火墙,它具有很高的效率,这种防火墙能通过状态检测技术动态记录维护各个连接的协议状态,并且在网络层和IP之间插入一个检查模块,对IP包的信息进行分析检测,以决定是否允许其通过防火墙。它引入了动态规则的概念,可以动态地打开和关闭网络端口,减少了网络攻击的可能性,使网络的安全性得到了提高。

(5)自适应代理服务:

自适应代理根据用户的安全策略,动态适应传输中的分组流量。它整合了动态包过滤防火墙技术和应用代理技术,本质上是状态检测防火墙,它通过应用层验证新的连接,若新的连接是合法的,可以被重新定向到网络层,因此这种防火墙同时具有代理技术的安全性和状态检测技术的高效率。

3.基本组成

防火墙包括安全操作系统、过滤器、网关、域名服务、函件处理五部分。

(1)安全操作系统:

防火墙本身必须建立在安全操作系统之中,由安全操作系统来保护防火墙的源代码和文件免遭入侵者的攻击。

(2)过滤器:

外部过滤器保护网关不受攻击,内部过滤器在网关被攻破后提供对内部网络的保护。

(3)网关:

提供中继服务,辅助过滤器控制业务流。可以在其上执行一些特定的应用程序或服务器程序,这些程序统称为代理程序。

(4)域名服务:

将内部网络的域名和因特网相隔离,使内部网络中主机的IP地址不会暴露给因特网中的用户。

(5)函件处理:

保证内部网络用户和因特网用户之间的任何函件交换都必须经过防火墙处理。

(六)物理安全标准规范

国家信息安全等级保护制度第三级要求的物理安全技术要求如下:

1.物理位置的选择

本项要求包括:

(1)机房和办公场地应选择在具有防震、防风和防雨等能力的建筑内。

(2)机房场地应避免设在建筑物的高层或地下室,以及用水设备的下层或隔壁。

2.物理访问控制

本项要求包括:

(1)机房出入口应安排专人值守,控制、鉴别和记录进入的人员。

(2)需进入机房的来访人员应经过申请和审批流程,并限制和监控其活动范围。

(3)应对机房划分区域进行管理,区域和区域之间设置物理隔离装置,在重要区域前设置交付或安装等过渡区域。

(4)重要区域应配置电子门禁系统,控制、鉴别和记录进入的人员。

3.防盗窃和防破坏

本项要求包括:

(1)应将主要设备放置在机房内。

(2)应将设备或主要部件进行固定,并设置明显的、不易除去的标记。

(3)应将通信线缆铺设在隐蔽处,可铺设在地下或管道中。

(4)应对介质分类标识,存储在介质库或档案室中。

(5)应利用光、电等技术设置机房防盗报警系统。

(6)应对机房设置监控报警系统。

4.防雷击

本项要求包括:

(1)机房建筑应设置避雷装置。

(2)应设置防雷保安器,防止感应雷。

(3)机房应设置交流电源地线。

5.防火

本项要求包括:

(1)机房应设置火灾自动消防系统,能够自动检测火情、自动报警,并自动灭火。

(2)机房及相关的工作房间和辅助房应采用具有耐火等级的建筑材料。

(3)机房应采取区域隔离防火措施,将重要设备与其他设备隔离开。

6.防水和防潮

本项要求包括:

(1)水管安装不得穿过机房屋顶和活动地板下。

(2)应采取措施防止雨水通过机房窗户、屋顶和墙壁渗透。

(3)应采取措施防止机房内水蒸气结露和地下积水的转移与渗透。

(4)应安装对水敏感的检测仪表或元件,对机房进行防水检测和报警。

7.防静电

本项要求包括:

(1)主要设备应采用必要的接地防静电措施。

(2)机房应采用防静电地板。

8.温湿度控制

机房应设置温、湿度自动调节设施,使机房内温、湿度的变化在设备运行所允许的范围之内。

9.电力供应

本项要求包括:

(1)应在机房供电线路上配置稳压器和过电压防护设备。

(2)应提供短期的备用电力供应,至少满足主要设备在断电情况下的正常运行要求。

(3)应设置冗余或并行的电力电缆线路为计算机系统供电。

(4)应建立备用供电系统。

10.电磁防护

本项要求包括:

(1)应采用接地方式防止外界电磁干扰和设备寄生耦合干扰。

(2)电源线和通信线缆应隔离铺设,避免互相干扰。

(3)应对关键设备和磁介质实施电磁屏蔽。

(七)系统安全标准规范

国家信息安全等级保护制度第三级要求的系统安全(主机安全)技术要求如下:

1.身份鉴别

本项要求包括:

(1)应对登录操作系统和数据库系统的用户进行身份标识和鉴别。

(2)操作系统和数据库系统管理用户身份标识应具有不易被冒用的特点,口令应有复杂度要求并定期更换。

(3)应启用登录失败处理功能,可采取结束会话、限制非法登录次数和自动退出等措施。

(4)在对服务器进行远程管理时,应采取必要措施,防止鉴别信息在网络传输过程中被窃听。

(5)应为操作系统和数据库系统的不同用户分配不同的用户名,确保用户名具有唯一性。

(6)应采用两种或两种以上组合的鉴别技术对管理用户进行身份鉴别。

2.访问控制

本项要求包括:

(1)应启用访问控制功能,依据安全策略控制用户对资源的访问。

(2)应根据管理用户的角色分配权限,实现管理用户的权限分离,仅授予管理用户所需的最小权限。

(3)应实现操作系统和数据库系统特权用户的权限分离。

(4)应严格限制默认账户的访问权限,重命名系统默认账户,修改这些账户的默认口令。

(5)应及时删除多余的、过期的账户,避免共享账户的存在。

(6)应对重要信息资源设置敏感标记。

(7)应依据安全策略严格控制用户对有敏感标记重要信息资源的操作。

3.安全审计

本项要求包括:

(1)审计范围应覆盖服务器和重要客户端上的每个操作系统用户和数据库用户。

(2)审计内容应包括重要用户行为、系统资源的异常使用和重要系统命令的使用等系统内重要的安全相关事件。

(3)审计记录应包括事件的日期、时间、类型、主体标识、客体标识和结果等。

(4)应能够根据记录数据进行分析,并生成审计报表。

(5)应保护审计进程,避免受到未预期的中断。

(6)应保护审计记录,避免受到未预期的删除、修改或覆盖等。

4.剩余信息保护

本项要求包括:

(1)应保证存放在硬盘上或内存中的操作系统和数据库系统用户的鉴别信息所在的存储空间,被释放或再分配给其他用户前已经完全清除。

(2)应确保系统内的文件、目录和数据库记录等资源所在的存储空间,被释放或重新分配给其他用户前已经完全清除。

5.入侵防范

本项要求包括:

(1)应能够检测到对重要服务器进行入侵的行为,能够记录入侵的源IP、攻击的类型、攻击的目的、攻击的时间,并在发生严重入侵事件时提供报警。

(2)应能够对重要程序的完整性进行检测,并在检测到完整性受到破坏后具有恢复的措施。

(3)操作系统应遵循最小安装原则,仅安装需要的组件和应用程序,并通过设置升级服务器等方式使系统补丁及时得到更新。

6.恶意代码防范

本项要求包括:

(1)应安装防恶意代码软件,并及时更新防恶意代码软件版本和恶意代码库。

(2)主机防恶意代码产品应具有与网络防恶意代码产品不同的恶意代码库。

(3)应支持防恶意代码的统一管理。

7.资源控制

本项要求包括:

(1)应通过设定终端接入方式、网络地址范围等条件限制终端登录。

(2)应根据安全策略设置登录终端的操作超时锁定。

(3)应对重要服务器进行监视,包括监视服务器的CPU、硬盘、内存、网络等资源的使用情况。

(4)应限制单个用户对系统资源的最大或最小使用限度。

(5)应能够对系统的服务水平降低到预先规定的最小值进行检测和报警。

(八)网络安全标准规范

国家信息安全等级保护制度第三级要求的网络安全技术要求如下:

1.结构安全

本项要求包括:

(1)应保证主要网络设备的业务处理能力具备冗余空间,满足业务高峰期需要。

(2)应保证网络各个部分的带宽满足业务高峰期需要。

(3)应在业务终端与业务服务器之间进行路由控制建立安全的访问路径。

(4)应绘制与当前运行情况相符的网络拓扑结构图。

(5)应根据各部门的工作职能、重要性和所涉及信息的重要程度等因素,划分不同的子网或网段,并按照方便管理和控制的原则为各子网、网段分配地址段。

(6)应避免将重要网段部署在网络边界处且直接连接外部信息系统,重要网段与其他网段之间采取可靠的技术隔离手段。

(7)应按照对业务服务的重要次序来指定带宽分配优先级别,保证在网络发生拥堵时优先保护重要主机。

2.访问控制

本项要求包括:

(1)应在网络边界部署访问控制设备,启用访问控制功能。

(2)应能根据会话状态信息为数据流提供明确的允许 / 拒绝访问的能力,控制粒度为端口级。

(3)应对进出网络的信息内容进行过滤,实现对应用层 HTTP、FTP、TELNET、SMTP、POP3等协议命令级的控制。

(4)应在会话处于非活跃一定时间或会话结束后终止网络连接。

(5)应限制网络最大流量数及网络连接数。

(6)重要网段应采取技术手段防止地址欺骗。

(7)应按用户和系统之间的允许访问规则,决定允许或拒绝用户对受控系统进行资源访问,控制粒度为单个用户。

(8)应限制具有拨号访问权限的用户数量。

3.安全审计

本项要求包括:

(1)应对网络系统中的网络设备运行状况、网络流量、用户行为等进行日志记录。

(2)审计记录应包括事件的日期和时间、用户、事件类型、事件是否成功及其他与审计相关的信息。

(3)应能够根据记录数据进行分析,并生成审计报表。

(4)应对审计记录进行保护,避免受到未预期的删除、修改或覆盖等。

4.边界完整性检查

本项要求包括:

(1)应能够对非授权设备私自联到内部网络的行为进行检查,准确定位,并对其进行有效阻断。

(2)应能够对内部网络用户私自联到外部网络的行为进行检查,准确定位,并对其进行有效阻断。

5.入侵防范

本项要求包括:

(1)应在网络边界处监视以下攻击行为:端口扫描、强力攻击、木马后门攻击、拒绝服务攻击、缓冲区溢出攻击、IP 碎片攻击和网络蠕虫攻击等。

(2)当检测到攻击行为时,记录攻击源IP、攻击类型、攻击目的、攻击时间,在发生严重入侵事件时应提供报警。

6.恶意代码防范

本项要求包括:

(1)应在网络边界处对恶意代码进行检测和清除。

(2)应维护恶意代码库的升级和检测系统的更新。

7.网络设备防护

本项要求包括:

(1)应对登录网络设备的用户进行身份鉴别。

(2)应对网络设备的管理员登录地址进行限制。

(3)网络设备用户的标识应唯一。

(4)主要网络设备应对同一用户选择两种或两种以上组合的鉴别技术来进行身份鉴别。

(5)身份鉴别信息应具有不易被冒用的特点,口令应有复杂度要求并定期更换。

(6)应具有登录失败处理功能,可采取结束会话、限制非法登录次数和当网络登录连接超时自动退出等措施。

(7)当对网络设备进行远程管理时,应采取必要措施防止鉴别信息在网络传输过程中被窃听。

(8)应实现设备特权用户的权限分离。

(九)应用安全标准规范

国家信息安全等级保护制度第三级要求的应用安全技术要求如下:

1.身份鉴别

本项要求包括:

(1)应提供专用的登录控制模块对登录用户进行身份标识和鉴别。

(2)应对同一用户采用两种或两种以上组合的鉴别技术实现用户身份鉴别。

(3)应提供用户身份标识唯一和鉴别信息复杂度检查功能,保证应用系统中不存在重复用户身份标识,身份鉴别信息不易被冒用。

(4)应提供登录失败处理功能,可采取结束会话、限制非法登录次数和自动退出等措施。

(5)应启用身份鉴别、用户身份标识唯一性检查、用户身份鉴别信息复杂度检查以及登录失败处理功能,并根据安全策略配置相关参数。

2.访问控制

本项要求包括:

(1)应提供访问控制功能,依据安全策略控制用户对文件、数据库表等客体的访问。

(2)访问控制的覆盖范围应包括与资源访问相关的主体、客体及它们之间的操作。

(3)应由授权主体配置访问控制策略,并严格限制默认账户的访问权限。

(4)应授予不同账户为完成各自承担任务所需的最小权限,并在它们之间形成相互制约的关系。

(5)应具有对重要信息资源设置敏感标记的功能。

(6)应依据安全策略严格控制用户对有敏感标记重要信息资源的操作。

3.安全审计

本项要求包括:

(1)应提供覆盖每个用户的安全审计功能,能对应用系统重要安全事件进行审计。

(2)应保证无法单独中断审计进程,无法删除、修改或覆盖审计记录。

(3)审计记录的内容至少应包括事件的日期、时间、发起者信息、类型、描述和结果等。

(4)应提供对审计记录数据进行统计、查询、分析及生成审计报表的功能。

4.剩余信息保护

本项要求包括:

(1)应保证存放在硬盘上或是在内存中的用户鉴别信息所在的存储空间被释放或再分配给其他用户前已经完全清除。

(2)应保证系统内的文件、目录和数据库记录等资源所在的存储空间被释放或重新分配给其他用户前已经完全清除。

5.通信完整性

应采用密码技术保证通信过程中数据的完整性。

6.通信保密性

本项要求包括:

(1)在通信双方建立连接之前,应用系统应利用密码技术进行会话初始化验证。

(2)应对通信过程中的整个报文或会话过程进行加密。

7.抗抵赖

本项要求包括:

(1)应具有在请求的情况下为数据原发者或接收者提供数据原发证据的功能。

(2)应具有在请求的情况下为数据原发者或接收者提供数据接收证据的功能。

8.软件容错

本项要求包括:

(1)应提供数据有效性检验功能,保证通过人机接口输入或通过通信接口输入的数据格式或长度符合系统设定要求。

(2)应提供自动保护功能,当故障发生时自动保护当前所有状态,保证系统能够进行恢复。

9.资源控制

本项要求包括:

(1)当应用系统的通信双方中的一方在一段时间内未作任何响应,另一方应能够自动结束会话。

(2)应能够对系统的最大并发会话连接数进行限制。

(3)应能够对单个账户的多重并发会话进行限制。

(4)应能够对一个时间段内可能的并发会话连接数进行限制。

(5)应能够对一个访问账户或一个请求进程占用的资源分配最大限额和最小限额。

(6)应能够对系统服务水平降低到预先规定的最小值进行检测和报警。

(7)应提供服务优先级设定功能,并在安装后根据安全策略设定访问账户或请求进程的优先级,根据优先级分配系统资源。

八、系统性能管理

(一)性能测试

系统性能测试是指通过特定方式,对被测系统按照一定策略施加压力,获取系统响应时间、每秒钟处理完成的交易数量(transaction per second,TPS)、吞吐量、资源利用率等性能指标,核心原理是通过将生产时的工作量应用于部署系统,以保证生产系统的性能满足用户操作过程的使用。

系统性能包括执行效率、资源占用、稳定性、安全性、兼容性、可扩展性、可靠性等。从用户角度来说,软件性能就是软件对用户操作的响应时间。从开发人员角度来说,主要关注软件性能架构设计是否合理、数据库设计是否合理、代码是否存在性能方面的问题、系统中是否有不合理的内存使用方式。从系统管理员角度来说,软件性能方面主要关注的是系统运行时服务器的状态,如CPU利用情况、内存使用情况、系统是否支持扩展、系统支持多少用户访问。

1.性能测试类型

(1)负载测试:

指通过逐步增加系统负载,测试系统性能的变化,并最终确定在满足性能指标的情况下,系统所能承受的最大负载量的测试。

(2)疲劳强度测试:

指采用系统稳定运行情况下能够支持的最大并发用户数或者日常运行用户数,持续执行一段时间业务,通过综合分析交易执行指标和资源监控指标来确定系统处理最大工作量强度性能的过程。

(3)大数据量测试:

指对特定存储、传输、统计、查询业务的测试。

2.性能测试步骤

(1)确定测试目标:

测试目标一般包含应用系统要达到的性能指标、系统处理的最大并发用户数;系统运行高峰时期响应时间小于多少秒;TPS不小于多少;服务器资源利用率不超过80%;7×24h运行,无明显的内存泄露现象。

(2)测试监控项:

操作系统监控包括CPU、内存、文件系统空间监控;中间件监控包括执行线程数、数据库连接数、查看队列状态、查看Weblogic(一个基于JAVAEE架构的中间件)启动的内存大小、Jvm大小以及输出;数据库监控包括索引监控、资源池监控、避免全表扫描任务监控。

(二)性能分析

性能分析可从以下几方面进行:

1.硬件性能分析

一般指CPU、内存、磁盘I/O方面的问题,分为服务器硬件问题、网络问题、服务器操作系统问题(参数配置)、中间件问题(参数配置、数据库、Web服务器等)、应用问题(SQL语句、数据库设计、业务逻辑、算法等)。

2.应用软件性能分析

一般指对应用服务器、Web服务器等应用软件的性能分析,还包括数据库系统。例如:中间件平台上配置的JDBC连接池的参数设置不合理,造成的问题。

3.应用程序性能分析

指对开发人员新开发出来的应用程序的性能分析。例如,程序架构规划不合理,程序本身设计有问题,造成系统在大量用户访问时性能低下而造成的问题。

4.操作系统性能分析

指对Windows、UNIX、Linux等操作系统的性能分析。例如,在进行性能测试,出现物理内存不足时,虚拟内存设置不合理,虚拟内存的交换效率就会大大降低,从而导致行为的响应时间大大增加,这时认为操作系统上出现性能问题。

5.网络设备性能分析

指对防火墙、动态负载均衡器、交换机等设备的性能分析。

例如,在动态负载均衡器上设置了动态分发负载的机制,当某个应用服务器上的硬件资源达到极限时,动态负载均衡器会将后续的交互请求发送到其他负载较轻的应用服务器上。若在测试时发现动态负载均衡器没有起到分发负载的作用,可以认为是网络方面的问题。因性能测试的原因非常复杂,性能分析的角度也非常多,以上仅涉及了几种性能分析角度,真正的性能测试和分析需要综合考虑各种因素。

(三)性能控制

性能控制也就是性能优化。进行性能控制前,首先要进行性能测试,较为精准地定位问题,并进行性能分析,分析系统性能问题,并根据其性能指标和所处层级决定选择优化的方式方法。

1.性能优化的步骤

(1)确定问题

1)很多程序的性能问题都是通过代码写出来的,因此对于发现问题的模块,应该首先检查一下应用程序代码。

2)数据库配置经常引起整个系统运行缓慢,一般大型数据库都需要DBA进行正确的参数调整后才能投入使用。

3)操作系统配置不合理可能引起系统问题。

4)硬件设置包括硬盘速度、内存大小等都是容易引起问题的原因,因此这些都是分析的重点。

5)网络负载过重导致网络冲突和网络延迟。

(2)分析问题:

确定问题后,首先要明确这个问题影响的是哪些方面,如响应时间、吞吐量。系统资源监控的结果是否正常;CPU的使用是否到达极限;I/O情况如何;是多数用户还是少数用户遇到了问题;如果是少数用户,这几个用户与其他用户的操作有什么不同;问题是否集中在某一类模块中;是客户端还是服务器出现问题;系统硬件配置是否够用;实际负载是否超过了系统的负载能力;通过多方面的分析可以深入了解系统问题,进而分析出真正的原因。

(3)确定调整目标和解决方案:

根据分析问题的原因,制订一个合理的性能提升目标,并有针对性地从执行效率、资源占用、稳定性、安全性、兼容性、可扩展性、可靠性等方面制订切实可行的解决方案。软件性能架构设计的合理性、数据库设计的合理性、代码是否存在性能方面的问题、系统中是否有不合理的内存使用方式、系统运行时服务器的状态(如CPU利用情况、内存使用情况等)、系统是否能够实现扩展、系统支持用户访问数等,都是制订解决方案应考虑的因素。

(4)测试解决方案:

对通过解决方案调优后的系统进行基准测试。基准测试是指通过设计科学的测试方法、测试工具和测试系统,实现对一类测试对象的某项性能指标进行定量的和可对比的测试。

(5)分析调优结果:

系统调优是否达到或者超出了预定目标,系统是整体性能得到了改善,还是以系统某部分性能来解决其他问题。如果达到了预期目标,调优工作就基本完成了。

2.性能优化应注意的问题

(1)在应用系统的设计开发过程中,应始终将性能放在考虑的范围内。

(2)确定清晰明确的性能目标。

(3)保证优化后的程序运行正确。

(4)系统的性能更大程度上取决于良好的设计,优化技巧只是一个辅助手段。

(5)优化过程是迭代渐进的过程,每一次优化的结果都要反馈到后续的代码开发中去。

(6)性能优化不能以牺牲代码的可读性和可维护性为代价。

九、数据挖掘与分析

数据是指某一目标定性、定量描述的原始资料,包括数字、文字、符号、图形、图像以及它们能够转换成的数据等形式。信息是向人们或机器提供关于现实世界新的事实的知识,是数据、消息中所包含的意义,是对事实、概念或指令的一种表达形式。数据处理的基本目的是从大量的、可能是杂乱无章的、难以理解的数据中抽取并推导出对于某些特定的人群来说是有价值、有意义的数据。

医疗数据统计和分析主要是为了提高医务人员诊疗水平、辅助医院管理人员决策、加速科研成果落地、为受检者提供精准化的医疗服务。包括临床辅助决策、单病种大宗病例统计分析、治疗方法与疗效比较、精准诊疗与个性化治疗、不良反应与差错分析提醒、健康预测与预警、精细化管理决策支持、科研结果验证、辅助用药分析与药物研发等。

从大量的医疗数据中通过算法搜索隐藏于其中的信息的过程就是数据挖掘和分析。下面介绍医疗数据挖掘和分析的相关技术:

1.数据仓库设计原则

数据仓库的建设是一个长期的过程,它将伴随医院的整个生命周期,随着业务的发展而不断变化。业务数据的增加、数据分析需求的改变,都将对原有数据仓库的构造形成冲击,因此,在进行数据仓库的设计时应依照以下原则,以确保数据仓库的稳定性、可靠性和可扩展性。

(1)集成性:

数据仓库是多种数据源数据集中后的数据集合,能够将来自多个数据源的数据的浏览和分析集成一体,这就需要在解决统一命名规范、存储格式、度量单位等问题的基础上,提供统一视角入口的体系框架方案。

(2)安全性:

提供比较完善的安全性控制,分别对不同业务领域、不同级别层次的用户提供其权限许可范围的分析信息。

(3)可扩展性:

用户可以从简单易行的体系架构开始实施,并结合后期的扩展要求,轻松、平滑地扩展现有体系架构以适应未来的需求。同时体系框架设计应该和医院信息框架的总体规划相结合,使其具备更好的可扩展性。

(4)开放性:

采用的技术应该支持开放接口或标准的技术,如TCP/IP、ODBC、MOLAP/ROLAP;设计工具应支持各种设计模式,如星型模式、雪暴模式或是标准的ER设计等;数据集中还应该支持医院已有的异构数据源。

(5)高性能:

优异的数据加载和查询 / 统计 / 分析速度,是数据仓库成功与否的标志之一。

2.数据仓库模型设计

(1)建设内容:

数据模型设计是数据仓库构造的最关键内容,决定了数据仓库的结构,数据采集的粒度是数据整理的标准,决定了数据展现的能力和效率。

数据模型设计包括逻辑数据建模、物理数据建模、OLAP立方体建模和数据挖掘建模。设计数据仓库与设计联机事务处理 (OLTP) 系统有很大的不同。数据仓库的设计目的是组织大量的稳定数据以便于分析和检索,实现快速访问信息,便于分析和创建报表。维度建模用于数据仓库的设计中,目的是合理地组织数据,提高分析和汇总大量数据的查询效率。

(2)模型组织:

数据仓库的维度建模需要针对零散的业务进程创建个别的模型,不需要复杂的模型。例如,可以将外资医院类型创建为一个模型,私营医院创建为另一个模型。每个模型捕获事实数据表中的事实,以及那些事实在链接到事实数据表的维度表中的特性。由这些排列产生的架构称为星型架构或雪花型架构,这些在数据仓库设计中很有效。维度建模将信息组织到结构中,这些结构需要对应于分析者希望对数据仓库数据使用的查询方法。

1)维度:

确定对某个事实或者某个量度进行考察和分析的角度或方向,例如“时间”“区域”。

2)粒度:

可以理解为维度的具体体现,用于进一步限定或描述相应的维。维可以按照一定的粒度划分为具有层系的结构,这种结构所包含的层数,是信息表达粒度的一种指征,它反映了对相关数据的表达可以详尽到何种程度,例如“时间” 维度中的粒度可以是年、月、日;粒度是对数据综合程度高低的一个衡量。粒度越小,细节程度越高,综合程度越低,查询的种类越多;反之粒度越大,细节程度越低,综合程度越高,查询的种类越少。

3)指标:

也称关键性能指标、事实或关键事务指标,是多维度衡量数据信息的工具。每一个指标代表了业务对象所固有的一个可供分析的属性。指标是典型的数量、容量或将通过同标准的比较查明的款项。这些数据点可用于业务信息的定量比较。

(3)数据仓库模型:

根据医疗机构数据仓库系统的应用需求,在数据仓库模型的选择上可以采用星型和雪花型两种架构,解决不同的分析要求。

星型模型是一种多维的数据关系,它由一个事实表(fact table)和一组维度表(dimension table)组成。每个维度表都以一个维作为主键,所有这些维则组合成事实表的主键,事实表主键的每个元素都是维度表的外键,可以把事实看成是各个维交叉点上的值。在星型模式的维度进行进一步规范化时,星型模式就演进为雪花模式。在星型架构中,每个维度表都有一个主键直接链接到事实数据表中。在雪花型架构中,一个维度表分解为多个表,每个表都有连接到主维度表的相关性维度表。在主要的设计中,选择星型架构,因为星型架构包含的用于信息检索的连接更少,并且更容易管理。

(4)数据挖掘模型:

数据挖掘模型的内容包括数据挖掘所需的每月的基础性宽表和应用于各个特定数据挖掘模型的数据挖掘模型宽表。要求使用数据挖掘工具完成关联、聚类、分类、预测等方面的分析开发。

1)事实数据表:

每个数据仓库或数据集市都包括一个或多个事实数据表。星型架构或雪花型架构的中心是一个事实数据表,用以捕获衡量单位业务运作的数据。

2)聚合表:

是包含事实数据表的汇总信息的表。当 SQL作为查询机制使用时,这些表可用于提高查询性能。

3)维度表:

包含描述事实数据表中的事实记录的特性。有些特性提供描述性信息;有些特性则用于指定如何汇总事实数据表数据以便为分析者提供有用的信息。维度表包含帮助汇总数据的特性的层次结构。

数据模型维度信息包括所属数据模型名称、维度名称、维度标题、维度类型。其中维度类型有三种,分别是①普通维度:普通描述信息的维度即普通维度,如药品类型、年维度、月维度等;②指标维度:将所有指标看成是一个特殊的维度,维度名称可以定义为一个固定的名称,如“DimTarget”,具体各个指标是这个维度下的具体粒度;③属性维度:将那些描述某个一般维度属性的维度信息独立定义,如药品属于一般维度,但它的属性包括药品类别、药品类型、生产厂商、管制药品、贵重药品、出口药品信息是其他普通维度所没有的,所以将他们区分开来。这些属性维度在“模型粒度信息表”中定义其所具体描述的一般维度的定义。

3.数据加工过程设计

(1)加工原理:

数据加工体系完成的功能是按照预先规定好的规则将数据从各个数据源导入数据中心的数据存储中。数据加工体系包括两个部分:数据加工中心和数据加工规则。数据加工中心主要负责加工任务的管理和调度,按照用户的设定调用相关的加工规则对目标数据进行处理。数据加工规则主要定义了数据的抽取、导入导出规则,是加工体系中的运行实体。

(2)加工流程:

数据加工体系的主要工作流程为数据中心管理员定义数据加工体系所要进行数据抽取的源和目标(数据源创建),用户在创建工作时需要从这些数据源中选定该工作的输入数据源和输出数据源。作为系统初始化步骤,数据中心管理员需要创建工作组,并且为工作组分配用户。经过分配的用户才能在其工作组内选择资源、创建工作和安排任务调度计划。创建了工作以后,用户需要为工作指定运行的时间(任务创建)。定义完成后,加工中心按照任务的优先级将任务加入到相应的运行队列中。当到达指定的运行时间时,加工中心将启动和执行任务中定义的工作(任务调度),并且将工作和任务的处理结果记录生成相关的日志。用户可以查看任务的等待或者执行情况。同时,加工中心也会根据系统工作和任务的运行状况发出预警。

4.OLAP模型设计

(1)OLAP数据组织:

OLAP数据库对各集市数据集作面向业务主题的高密度数据存储,用以OLAP分析处理。从数据的逻辑存储形式看,OLAP数据库一般包括ROLAP(基于关系型数据库建立的多维数据库)和MOLAP(采用专门的多维数据库构建的立方体),以及HOLAP(综合以上两种技术的应用)。

1)MOLAP:

是基于多维数据库的OLAP技术,以多维数据库为核心。数据由度量、维度、维度层次组成,在MOLAP进行数据存放时,数据并不是按照维度表和事实表分开存放,使用主键、外键等进行完整性约束的。在多维数据库中,将所有的数据一起存放,类似于存放着一张包含了维度和事实的大表,并为了使查询更加优化、分析更加有效和实用而汇总并处理了来自业务系统的基本事实。比如,业务系统中原来只有当天某一零售店的销售数量、销售价格和成本。在MOLAP中就会计算并存放每一个时间周期、每一个营销区域的销售量、销售金额和相应的利润。

从物理存储形态看,MOLAP使用多维数组存储数据。多维数据在存储中将形成“立方体(cube)”的结构,在MOLAP中对“立方块”的“旋转”“切块”“切片”是产生多维数据报表的主要技术。

MOLAP的优点是采用专门的多维数据立方体方式分析,分析速度快、效率高;其缺点是构建立方体需要耗费较长时间、并占用大量的存储空间,灵活性较差,一旦分析需求发生变更,需要重新对立方体进行建模、构造。

2)ROLAP:

是基于关系数据库的OLAP实现,以关系数据库为核心来模拟多维数据环境。它有两种基本的模型:星型模型和雪花型模型。星型模型由一个事实表和多个维表组成,各个维表以事实表为中间媒介联系在一起。维表之间没有联系。而雪花型模型可以认为是星型模型的一种拓展。在雪花型模型中和事实表相连的维度表不只是一层。

ROLAP的优点是基于关系数据库生成,较为节省存储空间,可以进行比较灵活的建模和构建;但是查询分析需要对数据库进行SQL查询,速度和效率较差。ROLAP将多维数据库的多维结构划分为两类表:一类是事实表,用来存储数据和维关键字;另一类是维表,即对每个维至少使用一个表来存放维的层次、成员类别等描述信息。

3)HOLAP:

综合采用了ROLAP和MOLAP两种技术,根据不同的分析对象要求,灵活采用这两种分析技术。一般将较为基本、明细的数据放在ROLAP中,而将较为综合的数据放在MOLAP中。

(2)OLAP分析处理:

OLAP分析处理是基于OLAP数据库,利用多维数据建模工具,对装载入OLAP Server数据库中的各种集市高密度数据集,作面向业务主题的高密度数据建模,根据数据集市的应用方向不同建立不同的分析主题模型等。

从技术角度看,OLAP分析工具提供了两种分析功能,即钻取分析(drill-down & roll-up)和交叉分析(slice & dice,也叫切片分析)。钻取分析是指按照同一个维度的不同层次进行分析。交叉分析是指通过转换不同的维度进行多角度的分析。

(3)OLAP分析功能:

OLAP的基本多维分析操作有钻取(roll up和 drill down)、切片(slice)和切块(dice)以及旋转(pivot)、钻过(drill across)、钻透(drill through)等。OLAP的目标是满足决策支持或者满足在多维环境下特定的查询和报表需求,它的技术核心是“维”这个概念。

钻取是改变维的层次,变换分析的粒度。它包括向上钻取(roll up)和向下钻取(drill down)。“roll up”是在某一维上将低层次的细节数据概括到高层次的汇总数据,或者减少维数;而“drill down”则相反,它从汇总数据深入到细节数据进行观察或增加新维。

切片和切块是在一部分维上选定值后,关心度量数据在剩余维上的分布。如果剩余的维只有两个,则是切片;如果有三个,则是切块。

旋转是变换维的方向,即在表格中重新安排维的放置。

5.数据存储管理

每个数据都有其特定的含义与表示的内容,结合时间序列,数据价值的表现有所不同。结合数据生命周期管理,进行数据的存储管理,才能发挥系统性能的最佳状态,保持数据价值最大。

所谓数据生命周期管理,即根据数据的价值不同,将其存储在不同的介质之上。信息的重要性不可否认,由于缺少存储机制等设置因素,数据被保留的时间越来越长,而且被删除的数据也越来越少,造成存储管理的复杂和成本的不断上升。事实上,数据具有生命周期,不同的时期有其存在的不同意义。一般而言,在一个数据诞生的前几周内,数据的价值最高,因而应当将其存储在读取效率较高的磁盘系统之上;而随着时间的推移,该数据的价值将随之降低,此时,应该将其转移到成本较低的介质之上,如磁带系统。

数据中心的建设是一个螺旋上升的过程,随着业务的增长,其应用有可能增加,数据建设方面,从数据积累的角度来看,数据量必然随着时间的推移而日益增加。根据系统实际运行过程中,综合考虑数据的访问量、硬件存储环境等,分析数据的价值,制定数据存储管理策略。实现业务数据包括文件数据、应用数据的基于策略的自动管理,包括数据的分类、数据的备份、数据的发布、数据的迁移、数据的归档、数据的删除,实现全面的数据存储管理自动化。提高现有存储资源的利用率,提高数据的可用性。满足数据保管方面当前和今后的法规要求。自动的数据存储管理减少了人为差错的可能性,提高了数据的安全性和可用性。