联系我们contact

电话:027-59760188-801

地址:武汉市东湖高新开发区光谷大道120号现代森林小镇A座609室

盛夏的果实2017 -实验室数据自动备份记历

发布时间:2018-05-30 浏览次数:319次

文章标题是仿照《浮生六记》中第五记 “中山记历”而拟定的。目的是记录2017年7/8月间的一次项目经历,项目的历程,遇到的问题,以及对数据管理的一些思考。恰值数据管理规范将落未落之际,数据完整性余热未消,谨以此文与业界同仁共同探讨数据管理之疾患。

七八月份正是一年中最热的季节。从去年三月份用户就开始不断聊起研发实验室的数据管理问题,终于到了六月底,尘埃才落定。我们的客户是国内著名制药企业的研发中心,目的是想建立实验室所有仪器数据的自动备份,减轻实验室运营人员的工作负担,提高数据的安全性和整体的合规性。

客户其实很早就在考虑数据自动备份的事情,而且手头可选的法宝还不少。他们有自己企业级的Veritas 备份一体机,Agilent 的OpenLab ECM。但由于面对的仪器种类太多,加之IT人员面对各种奇形怪状的仪器心里十分发怵,生怕影响了这些仪器正常运行,因此备份工作一直踌躇不前。大路货HPLC就不说了,已经接入Agilent的网络版中,其他的林林总总60多台单机仪器,且重样的不多。细细数来,有岛津的HPLC,GC-MS,Thermo的红外光谱,梅特勒的滴定仪,细胞计数仪,戴安的离子色谱仪,GE Unicorn制备色谱仪,Waters UPLC-QDA液质联用仪,PE的ICP-MS,Agilent QTOF/QTRAP。仪器太多,这里不一一列出,一些高端的质谱仪器,价格不小于一套房子。除了一些因为软件本身原因无法备份的除外,实验室的运营人员需要为50多台仪器逐个进行手动备份,工作量之大可想而知。

盛夏的果实2017 -实验室数据自动备份记历

仪器种类多样首先带来的挑战是多重的。首先,我们面对的操作系统就有Win2000,WinXP,Win7,win10四种。尤其是Win2000,我已经10年没有见过了,所幸没有见到它的前任Win98。其次,数据类型多样化,有普通文件型的,Access数据库的,SQL Server 2005/2008,Oracle9i/11g。以上在我们的职业生涯中还算是见怪不怪,但遇到梅特勒的热重分析仪STARe SW,我还是出离惊讶了。这款仪器竟然用的是IBM DB2数据库。这款不显山,不露水的IBM的独门武器竟然在实验室出现了,拿一位IT专业人士的说法,DB2竟然还装在Win7的系统上。研究过Oracle,MSSQL,MySQL,还真没碰过DB2。稍微有点遗憾的是,我们常规的实验室里MySQL还是比较罕见的,这次依然没有遇见,但做生物信息学的朋友想必是非常熟悉的。由于有一些大型质谱,仪器产生的数据单个文件就非常大。这其中大的可以有2-3个G,小的也有好几百兆。正是由于仪器数据类型的复杂性,导致实现所有仪器数据自动备份的工作一直停滞不前。仪器数据类型我们在实施备份工作前首先就要了解的信息,以及其所依赖的操作系统。

盛夏的果实2017 -实验室数据自动备份记历

数据备份从技术上来讲,特别是对于一个公司成熟的IT部门,并非是困难的事情。但制药行业属于需要合规的行业,与数据完整性,产品质量,患者安全相关的IT行为是需要合规的。这里说说我们如何合规地进行实验室数据自动备份系统的搭建。GMP一个理念是事前有规范可循,事后有记录可查。拿数据备份来说,我们要在备份开始之前,说明备份策略制定地依据,包括备份的频率,备份的方式(增量还是全备),备份冗余数据的清除。这就要求我们对需要备份的系统进行”系统影响性”评估,评估该系统业务和法规符合上的影响强弱,从而决定其备份的强弱。

备份策略确定好之后,接下来还要调查备份的对象。备份的对象既有法规要求的,也有用户自己要求的。法规要求的是原始数据和相关审计追踪记录,应用软件的相关事件记录,例如用户的登陆,登出,密码修改,权限变动等等。用户自己从业务角度要求的,包括仪器配置信息,分析方法,报告模板,导出的报告等等。在我们这次实际的备份数据调查中,发现研究人员不会去关注那些法规要求的审计记录,而对于方法,报告这些与其日常工作相关的比较关心,希望能进行自动的备份。我想这其实很正常,研发人员建立这些模板其实是花了非常多时间的。没有这些模板,日常的分析工作甚至都无法开展。如果将来更换电脑或系统恢复,大家当然不希望去重新建一遍。那些已生成的分析报告有现成的总比将来重新从系统里生成一遍来得简单,更何况将来还不知道会发生何种变化,当初的分析方法是不是还在,软件版本是不是一致等等。讲这些,其实是希望大家在做备份时,不要只顾及法规监管的要求,我们还要考虑业务的需要。

业务上需要备份的数据易于识别,但法规要求的数据却不那么容易发现。很多采用文件存储数据的仪器工作站一般都会将数据操作的审计追踪记录与原始文件放在一起,而软件的事件记录采用单独文件存放。在这种情况下,我们就需要准确定位这些存放应用系统日志的文件。总的说来,主要在三个目录下:一是软件的安装目录,二是C盘下的ProgramData下,三是在Users的目录下。以我们做的一台戴安离子色谱为例,变色龙7.2的系统,数据分为SQL Server 2008数据库和原始数据。Chromeleon 的数据审计追踪都存放在数据库里,而仪器的使用日志则在C盘下的ProgramData里。由此决定备份时需要备份三个位置的数据。对于合规的数据备份来讲,在实施备份之前需要对每台仪器进行备份数据调查,说明法规要求的数据以及业务需要的数据的存放位置,出具备份数据调查报告;这样后期的备份计划才是有根据的。调查的过程请大家可以咨询厂家,毕竟只有厂家最熟悉自家的系统,并且还要对获得的信息进行再确认。除了上面讲的数据备份,大家不要忘了产生数据的软件也要备份。今后系统崩溃后恢复重建要用,做数据恢复测试时也要用到。翻箱倒柜找安装光盘的经历还是记忆犹新的。找东西,往往在搬家之后变得尤为戏剧化。找不到光盘,找厂商可能也没用。太古老的东西,别人要么也没有,或者不想给你而想重新卖给你。在这个炎热的夏日,几台基于Oracle 9i的旧Empower版本的安装光盘就找不到了,托了一些关系也没有弄到。实在没有办法,基于我们对Oracle技术的掌握,冒险在原机上做的恢复测试。很多Waters单机的用户会采用软件本身提供的导入导出工具来进行简单的备份与还原测试,但这种测试是建立在原机使用环境还完好存在的情况下。实际上,如果存储介质出现问题,Empower软件可能根本打不开,也不会给你导入的机会。在这个项目中,我们为客户实现的是所有Empower单机的全部数据自动备份。由于备份方式不一样,所以软件提供的导入,导出功能我们用不到。不巧的是,其中有一台Empower的电脑每次启动需要半个多小时,想将其虚拟化出来也总是失败,已经处于十分危险的境地。

一套分布式的备份系统,从GAMP5的角度划分,可以归到第4类,属于可配置的软件。验证第四类的软件,我们最好拟定一个验证计划,说明验证的策略,相关的职责,交付文件以及维持合规状态的必要措施和流程。考虑到这种软件为分布式部署的方式,需要在仪器终端电脑上安装,需要根据系统影响性评估和备份数据调查结果进行备份任务的配置。备份任务的配置参数将影响到数据是否按照计划,有效地复制到备份设备上。作为第4类地软件,我们有必要针对其功能进行风险分析。风险分析的点包括备份客户端在仪器工作站的安装是否会干扰仪器的正常运行,备份任务是否会失效,备份任务是否会受到实验人员有意无意的更改,仪器工作站电脑在备份时间段被意外关机,备份任务是否能应对网络临时中断以及备份服务器宕机,服务器的备份数据是否受到不受限制的访问,以及备份数据的有效性等等。以上风险点,一方面要通过后续的备份系统验证流程进行确认,另一方面要通过相关的SOP进行规范管理,以期将风险降到最低。风险识别是一个不断递增的过程,初次的风险分析必然不能涵盖所有的风险点,并且根据选择的备份工具的不同,同样会存在一些风险细节上的差异。就拿我们这次的做的自动备份来说,为了应对数据库备份而产生的冗余备份数据,原本我们用Dos命令写了一个按照时间段进行冗余数据清除的批处理程序。也就是下面的代码,自动删除7天以前的备份数据。

forfiles /p E:\DataBackup\OnlineBackup /m *.* /d -7 /c “cmd /c del @file”

初看起来没有问题,但在实际操作过程中发现,这个命令是建立在备份系统一直处于平稳运行的前提条件下。如果一旦备份系统运行出现问题,例如超出7天都没有产生新的备份,那么之前所有的备份文件都会被删除,一份都不会留下。为了应对这个问题,我们考虑编写更复杂的Dos命令,但考虑到可维护性,最后采用Windows自带的PowerShell写了一个保留最新的N份数据的程序,其余的则删除,避免了备份数据全部被清空的风险。说了这么多,其实就是要求我们在做GxP数据备份时需要进行风险评估,并将风险点体现在后续的验证方案和SOP中。

从GAMP5的V模型出发,除了验证计划,风险评估,还需要有FS,即功能说明规范。对于成熟的商业化系统,我们的建议是不需要专门去起草功能说明。功能说明应该是厂商做的事。厂商的技术白皮书,功能设计说明,用户手册都可以视作GAMP5中的FS(功能规范)的体现。相比FS,我们将CS(配置说明)视为一个非常重要的文件。这份文件应该说明备份系统的架构,相关的基础软硬件配置,包括涉及的仪器工作站计算机的配置以及备份服务器的配置,备份数据所对应的备份任务名称,备份策略,邮件通知等。

自动备份的实现多半是技术性的工作。文件型的数据可以采用全备+差异/增量的方式。采用SQL Server数据库存储的数据,则采用我们备份软件自带的数据库自动备份功能,导出为bak文件后就可等同一般的文件进行处理了。这里值得一提的是,实验室各种仪器用的SQL Server数据库都是SQLServer Express版,完整版的SQL Server是自带自动备份功能的。我们在国内很多企业看到实验室的分析人员经常对数据库类型的仪器采用了错误的备份方法。有些实验室的管理员不清楚数据放在什么地方,而找到数据存放位置的却采用强行拷贝数据库文件.mdf的方法进行备份。在数据库处于连接读取的状态进行拷贝,拷贝出的文件大概率是不可用的。

在实施自动备份方案的过程中。我们发现一台戴安的离子色谱的原始数据和数据库文件有两处。询问之后是因为重新装过软件。原来不知道怎么处理,就封存在原来的路径下。新装软件重新选择数据存储的路径。打开变色龙工作站只能看到重新安装软件后样品检测数据,而老数据被凝固在角落里,无人问津。用户不知道如何去查看这些之前的旧数据。看到这里,实在于心不忍,数据迁移虽然不在本次的项目工作范畴内,我们还是将老数据挂到了变色龙系统下面。打开Chromeleon7,根目录下多了个新柱子。其实对变色龙的CDS,我一直还是很认可的,上手容易,用户界面友好,合规性也不错,在三足鼎立的形势下,堪称性价比之良器。

所有的基于SQL Server的工作站通过我们的自动备份软件都好解决。唯独Waters的一系列单机版Empower让我们泪奔。Empower网络版是支持自动备份的,但单机版不提供该项功能,只能手动导出原始数据。从数据存储格式上来说,Empower属于Oracle数据库+文件类型的。以前做过Oracle真实集群,对Oracle的备份还是比较了解的。要解决单机Empower的自动备份问题,就只能从Oracle 数据库层面做备份。作为关系数据库领域的龙头企业,Oracle本身提供了非常完善的备份工具,那就是RMAN。客户本身购买了企业版的Veritas NetBackup备份工具。虽然Veritas NBU针对Oracle本质上也是使用RMAN,但其提供了备份参数配置模板,便于初学者上手。我本人还是比较喜欢自由的编码方式。令人不解的是,客户处的Veritas NBU针对自身企业级的OA,ERP等基于Oracle的大型信息管理系统备份手到擒来,但对6台单机Empower却怎么也连不上。做RMAN备份的前提是要将Oracle设置为归档模式。在设置过程中,我们发现Oracle无法启动到Mount状态,数据库连接直接中断,从而无法开启归档模式。接连几台UPLC,HPLC,ACQUITY QDa都出现这种问题。查遍了中文网络中的资料无法搞定,Google又被废了,Bing了一个周末,国外资料查了一圈也没有头绪。这都是没有系统深入学习过Oracle惹的祸,遇到新问题时一筹莫展。经过周末两天的煎熬,周日夜幕快落下的时候,我差不多快要放弃了,考虑用expdp命令了。Expdp本身是我无法接受的,一则这个命令并非Oracle官方认可的数据库备份方式,二则前几年我用Expdp导出的数据再导入时发生了严重的报错,导致用户数据无法恢复。很多IT人员喜欢用Expdp命令来做数据的备份,但恰恰就属于误用,Expdp本身是用来做数据迁移的,并非用来做备份,且数据导出的效率不高。对于比较大的数据导入存在失败的风险,至少本人就经历过。如果有实验室用这种方式做基于oracle数据库仪器的备份,还请尽快更换成Oracle建议的方法。抛除杂念,观照内心有时候就是解决问题的良方。在遍寻仙方无果,只能靠自身修为做最后一搏。梳理数年来学到的点点滴滴,编织推演,恍然大悟,改动几个参数之后,顺利启动为归档模式,自动备份水到渠成。现在想来,出现这种问题是因为Empower的Oracle安装并非标准化的,而是属于Empower的一个子安装包,里面的配置参数是经过特殊设置的。是不是Waters有意为之不得而知。国内如此多的单机版Empower是不是都有这个问题亦不知。

技术的问题讲了这么多,我们还是回到合规的问题上来。按照V模型,CS确定之后,就要进行安装确认。IQ对于一套备份系统来说是比较简单的,主要是确认备份软件的安装环境,安装后的启动正常,备份服务器的配置确认以及备份计划任务的实际配置与CS中的要一致。

OQ 主要包含了三个方面的内容。一是确认数据是否按照设定的时间自动上传,二是数据的恢复验证,检查恢复后数据文件在宏观上是否一致(包括大小,数量),是否能由原软件读取而且信息与原工作站上一致。对于前者,我们进行了一个任务周期的备份跟踪检查。例如备份任务是每天一个差异备份,每周日一个全备份。那么我们需要确认每天产生了一个差异备份,到了周日这天产生了一个全备份。对于后者,数据是否能够恢复不仅取决于所备份的数据,还与支持数据运行的环境有关,包括操作系统和应用程序以及相关的配置信息。经此一役,客户已经将软件的纳入了管理计划。同时,客户采用 Veritas备份工具对各个仪器工作站都进行了运行环境镜像的备份,通过这些镜像可在物理机上直接恢复原系统。考虑到风险和系统重建的难易程度,数据恢复我们采用原机恢复和异机恢复两种方式进行。

对于纯文件型的数据,可以直接恢复到原机进行读取测试。在确认备份两端的一致性时,我们和客户起了小小的争议。客户是IT部牵头的,对于这种比较大小和数量是否一致的方式觉得太Low了,采用MD5码进行对比会更精确。MD5码在数据识别方面确实非常有效,只不过在一个封闭的网络环境里,用MD5码去确认有些过于谨慎了。事实上,备份软件的文件传输和传输结尾会检查和确认数据的完整性。最终妥协的结果是,我们对抽取的最早,中间和最近三个时间段的三份数据进行MD5码比对,并采用原软件进行读取测试。MD5码一致,然后软件能打开就OK,不需要像以前一样还要在打开的数据中去比较信息是不是一致。

对于数据库类型的数据,一般建议重新搭建一个测试环境,再将数据库文件导入进行测试。环境搭建的方式可在一个新系统中重新安装软件,也可采用将原系统转换成虚拟机的方式进行。Waters的单机Empower工作站最早是通过转换虚拟机做恢复测试的,但后来应客户要求,我们采用Oracle RMAN备份出来的数据集在另外一台计算机上从软件安装开始,再进行数据导入,恢复成跟原机一模一样的的系统,包括所有的数据,用户,权限,配置,证书都是一模一样的,而采用手动导出数据的备份无法做到这一点。这种仅通过备份数据得到跟之前一致的应用系统已经接近灾难恢复了。当然,我想用户考虑这么做还是非常有意义的,因为一旦出问题,多半就是灾难性的。

OQ到此并未结束,我们之前在风险评估时所识别到的风险,也要在OQ 中去体现,这一块并不困难,在此不再赘述。

OQ结束之后我们就起草了验证总结报告。验证总结报告的编写应该与验证计划中要做的事情进行对应。

备份系统的PQ事实上并不需要起草专门的验证方案去验证,因为我们在OQ中就已经对每台仪器的做了备份任务的运行确认。相对OQ 而言,PQ应该从OQ结束备份系统放行,一直持续到备份系统的退役。性能确认是一个长期的过程。在验证计划中,需要就如何维护备份系统处于合规状态进行规定,其中就要说明PQ如何执行,其他的诸如变更管理,人员培训,偏差处理,需要的支持性SOP一一列出。PQ基本的做法是进行日常的监控,异常事件报告,变更的执行和评估,定期的恢复测试,包括将系统设置为备份任务成功后或失败时自动发送邮件通知,以上均是PQ的表现形式。

实验室电子数据的备份管理,是保障数据安全和完整性的重要方面之一。一个成功的备份系统是由备份的软件,硬件以及备份策略构成的。同时,一个备份系统运行得好不好还与这个系统的可管理性密不可分。例如国内药厂很多采用手动备份,就是可管理性比较差的典型。我们看到很多客户的仪器的手动备份工作并未按预定的计划进行。而且手动备份往往间隔时间比较长,因此无法应对在间隔期内发生的数据丢失问题。加之仪器的数据日积月累,数量不断增加,备份人员采用增量备份还要对数据进行挑选,工作量也大大增加,容易出现遗漏。备份的执行是一个方面,备份数据的管理则会更加混乱。而采用自动备份,可管理性则会大大增强,一则系统会自动地进行全备,增量和差异备份(不出意外地话),对备份数据进行管理和冗余的计划性清除,并且会有日志记录备份的情况。在备份成功或失败也会有相应的邮件提醒,备份的可控性得到有效提高。随着信息化,以及计算机系统应用水平的提升,手动备份将会成为历史,监管部门也会对采用手动备份提出更多的挑战,一些国外的客户甚至已经完全不接受手动备份的操作方式。

在备份的工具的选择上,客户把Veritas备份一体机定位在企业级大型信息管理系统的备份上,例如公司的财务系统,文档管理系统,LIMS系统以及CDS系统等,各单机版仪器的备份则采用我们提供的备份系统。

最后提一提SOP,客户在项目开始的时候并没有数据备份相关的SOP。在备份项目实施的过程中我们与客户一起逐步地建立了这些操作规程,包括“实验室数据备份与恢复管理规程“,计算机软件管理规程,以及各台仪器的恢复规程用于发生数据丢失时或系统崩溃时,如何利用备份数据恢复系统的操作步骤。

从去年9月项目结束到现在已经有大半年的时间,我们这套LabSync实验室数据自动备份系统运行一直都非常稳定,各类仪器的数据都能自动地上传,消除了长久以来隐患。

对于此文,有任何建议或疑问,也可写信与我们联系bob.yang@labwind.com