计算机程序\(\def\h填{\hskip5em}\def\hfil{\hski p3em}\def\eqno#1{\hfil{#1}}\)

期刊徽标的日志
同步加速器
辐射
国际标准编号:1600-5775

辅助电源数据管理系统

十字标记_颜色_方形_文本.svg

美国伊利诺伊州阿贡市卡斯大道南9700号阿贡国家实验室,邮编60439
*通信电子邮件:sveseli@aps.anl.gov

美国阿贡国家实验室S.M.Heald编辑(2018年5月30日收到; 2018年7月11日接受; 2018年8月15日在线)

随着现代X射线探测器和采集技术的能力增强,同步加速器束线产生的数据速率和体积也在增加。这突出了与在这些设施管理数据有关的一些挑战,包括数据传输、近实时数据处理、自动处理管道、数据存储、处理元数据和远程用户访问数据。高级光子源数据管理系统该软件旨在帮助光束线处理这些问题。本文介绍了该系统的体系结构,并描述了其组件和功能;讨论了该系统的当前用途,提供了使用实例,并概述了未来的开发计划。

1.简介

具体的数据管理要求通常因波束线而异,通常取决于探测器类型、X射线技术和使用的数据处理工具。然而,这些要求大多与所有同步加速器和其他大型数据生成科学用户设施通用的一组任务有关:

(i) 存储区域管理,将采集的数据从本地(短期)存储移动到更永久的位置(中长期存储)。

(ii)使用户和应用程序能够轻松查找和访问数据。这包括使用元数据、副本目录和远程数据访问工具。

(iii)利用自动化或用户启动的处理工作流促进数据处理和分析。

用户设施经常开发内部系统来满足其特定需求。高级光源及其合作者已努力部署现场多条光束线上的一套数据管理工具。数据集在收集后被传输到国家能源研究科学计算中心,并在那里存档在HPSS磁带系统中。在收集数据时,可能会启动一些自动数据处理。元数据被添加到基于MongoDB的目录中,用户可以访问其数据通过门户网站(帕金森等人。, 2016[帕金森,D.Y.,比蒂,K.,陈,X.,科雷亚,J.,达特,E.,道尔,B.J.,德斯利佩,J.R.,赫克塞默,A.,克里希南,H.,麦克道尔,A.A.,迈亚,F.R.N.C.,马塞西尼,S.,帕德莫尔,H.A.,巴顿,S.J.,珀西亚诺,T.,塞提安,J.A.,夏皮罗,D.,斯特罗姆斯内斯,R.,塔穆拉,N.,蒂尔尼,B.L.,塔尔,C.E.&乌西齐马,D.(2016)。AIP Conf。程序。1741, 050001.]; 布莱尔等人。, 2014[Blair,J.、Canon,R.S.、Deslippe,J.,Essiari,A.、Hexemer,A.,MacDowell,A.、Parkinson,D.Y.、Patton,S.J.、Ramakrishnan,L.、Tamura,N.、Tierney,B.L.和Tull,C.E.(2014),《SPIE公报》,9212,92121G。]; 德斯利普等人。, 2014【Deslippe,J.、Essiari,A.、Patton,S.J.、Samak,T.、Tull,C.E.、Hexemer,A.和Kumar,D.、Parkinson,D.和Stewart,P.(2014年)。2014年11月16日至21日,第九届支持大规模科学的工作流研讨会论文集(2014年工作),美国路易斯安那州新奥尔良,第31-40页。】). LCLS为其所有实验终端站的数据管理开发并部署了统一的基础设施。该基础架构包括分层存储方案和快速计算资源。web门户允许用户和员工管理存储和检索数据(Thayer等人。, 2016【Thayer,J.、Damiani,D.、Ford,C.、Gaponenko,I.、Kroeger,W.、O'Grady,C.、Pines,J.,Tookey,T.、Weaver,M.和Perazzo,A.(2016),《应用结晶杂志》第49期,第1363-1369页。】; 达米亚尼等人。, 2016【Damiani,D.,Dubrovin,M.,Gaponenko,I.,Kroeger,W.,Lane,T.J.,Mitra,A.,O'Grady,C.P.,Salnikov,A.,Sanchez-Gonzalez,A.,Schneider,D.&Yoon,C.H.(2016),《应用结晶杂志》第49期,第672-679页。】). NSLS-II使用数据代理工具。数据I/O详细信息由数据代理,向用户公开数据通过numpyPython中的数组。NSLS-II的数据驻留在中央或光束线本地存储系统(Arkilic等人。, 2017[Arkilic,A.、Allan,D.B.、Caswell,T.A.、Li,L.、Lauer,K.和Abeykoon,S.(2017)。同步辐射。新闻,30(2),44-45。]).

直到最近,先进光子源(APS)的光束线还没有其他选择,只能独立处理上述一些任务,而忽略那些需要太多努力或需要光束线科学家可能不具备的技术技能的任务。因此,APS波束线向其用户提供的各种数据管理相关服务的范围因波束线而异。例如,很少有波束线为用户提供对其数据的任何远程访问,没有波束线具有自动原始数据处理的框架,也没有波束线跟踪用户数据或使用可搜索的元数据目录。此外,光束线科学家通常用于管理数据的任何工具大多基于`特别的“如果不付出额外的努力,就无法在其他波束线上重复使用的波束线特定脚本。

APS公司数据管理系统(DM公司)最初只有一个目标:为APS用户提供方便远程访问其数据的方法。随着时间的推移,系统中添加了许多新功能和服务。新的发展过去和现在都是由不断增加的用户请求和新的波束线部署推动的。今天DM公司该软件服务于20多个APS终端,并定期向系统添加新的终端。

在以下部分中,我们将讨论系统架构和功能,描述其用法,并提出未来增强的计划。

2.系统组件和功能

如系统架构图所示(见图1[链接]),的DM公司该软件由几个站点范围和波束线特定的服务组成,这些服务处理数据移动和元数据编目,管理用户工作流和处理作业,以及管理APS存储和用户数据访问。这些服务与各种APS数据库交互,并由Globus支持(https://www.globus.org; Globus工具包文档和下载可在https://toolkit.globus.org/toolkit(工具集))和其他开源软件组件。

[图1]
图1
辅助电源数据管理系统体系结构。

该系统目前使用1.5 PB的数据直接网络(DDN)存储(网址:https://www.ddn.com)使用高性能GPFS文件系统(Schmuck&Haskin,2002[Schmuck,F.&Haskin,R.(2002),《2002年FAST文件和存储技术会议记录》,2002年1月28日至30日,美国加利福尼亚州蒙特雷,第231页。])和两条10 Gbps网络链路。存储器已启用数据冗余。提供只读数据访问通过“aps#data”Globus端点,而用户身份验证由Globus MyPr­oxy和DM公司LDAP服务器。用户访问实验数据文件的授权基于实验LDAP组成员身份。这个DM公司系统允许与任何(外部或内部)计算设施直接集成通过其工作流管理功能。目前,用户定期使用APS 1440-core(2880个超线程)高性能计算(HPC)集群处理数据。

2.1.DM公司现场服务

糖尿病站点范围的服务由PostgreSQL支持(https://www.postgresql.org)DM公司包含用户信息和DM公司实验元数据。在本例中,术语“实验”表示与数据文件集合关联的任意名称。对于APS光束线DM公司实验通常对应于在一个通用用户提案(GUP)或一个实验安全授权表(ESAF)下进行的一组测量。主要DM公司数据库定期与中央APS用户数据库同步。同步是完全自动化的;它包括添加新用户和更新DM公司数据库,以及更新存储在DM公司LDAP服务器。通过与APS用户数据库接口DM公司在用户管理方面,软件将开销降至最低。值得强调的是,该系统设计为完全自给自足,因此它还支持直接管理和维护用户DM公司数据库。

这个存储管理服务在存储头节点上运行,负责管理和提供对DM公司实验数据目录和文件。例如,每当将新文件传输到存储中时,它都会收到通知,并确保对该文件应用适当的权限,从而允许授权用户远程访问数据。这个存储管理服务是用Python实现的(https://www.python.org); 它使用CherryPy web框架(https://cherrypy.org)用于提供RESTful(Fielding,2000[Fielding,R.T.(2000),美国加州大学欧文分校博士论文。])基于JSON数据交换格式的web服务接口(https://json.org)通过HTTPS协议。该服务还使用SQLAlchemy工具包(https://www.sqlalchemy.org)作为访问底层数据库的对象关系映射器。

这个DM公司web门户(如图2所示[链接])提供管理界面,用于管理用户角色、实验和实验类型,以及启用和支持波束线部署。它是作为运行在GlassFish应用服务器中的Java EE应用程序实现的(https://glassfish.java.net网站)并使用Java Persistence API(JPA)、Java Server Faces(JSF)构建(https://www.oracle.com/technetwork/java/javaee/overview/index.html)和PrimeFaces组件套件(https://primefaces.org网站).

[图2]
图2
DM公司门户网站。

2.2.DM公司车站服务

糖尿病每个波束线上的数据管理软件部署(`DM公司Station’)包括几个基于同一组技术(Python、CherryPy、JSON、Fielding,2000)构建的PythonRESTful web服务【Fielding,R.T.(2000),美国加利福尼亚大学和欧文分校博士论文】)由使用存储管理服务.

这个数据采集服务实现了一个基于插件的灵活处理框架。其主要作用是在用户实验期间监控本地波束线存储,并启动实验数据到APS现场存储的文件传输。然而,它也可以定制,以满足部署它的特定波束线的需要;这可以通过配置服务以使用一些现有的处理插件来实现,也可以通过开发符合beamline需求的新插件来实现。例如,所有光束线都使用相同的文件编目插件,但在某些光束线上,该插件被配置为使用自定义可执行文件读取文件元数据;类似地,所有光束线都使用插件将数据传输到APS现场存储器。但是,一些波束线也使用其他文件传输插件,这些插件被配置为将数据移动到其他目的地,例如内部或外部HPC集群。在大多数情况下数据采集服务使用GridFTP进行文件传输,但如果GridFTP不可用,也可以使用rsync实用程序。

文件元数据存储在波束线元数据目录中,该目录由MongoDB支持(https://www.mongodb.com). 除了特定于用户和实验的信息外,系统还将文件大小、校验和、处理时间和文件副本列表等信息记录在DM公司-托管存储。可以访问、更新和删除元数据通过这个DM公司编目服务REST接口。也可以查看通过Mongo Express应用程序(Mongo快递版本可在GitHub上找到:https://github.com/mongo-express/mongo-express网站)在Node.js JavaScript运行时环境上运行的(https://nodejs.org)并由Nginx web服务器提供服务。

这个DM公司 处理服务提供了对管理用户定义的工作流以及基于这些工作流提交和监视用户处理作业的支持。工作流定义保存在束线工作流数据库(MongoDB)中。A类DM公司工作流被定义为按顺序执行的一组处理步骤;每个步骤都涉及一个任意命令或脚本。只要可能,服务执行引擎就会负责并行化处理步骤的执行。系统还支持工作流定义中的输入和输出参数。输入参数由用户或系统本身提供(例如输入文件路径),而输出变量定义为期望与处理步骤输出匹配的正则表达式。为给定步骤找到的任何输出变量都可以用作工作流中任何后续处理步骤的输入参数。

图3[链接]通过显示定义以下阶段的简单三阶段处理工作流的定义来说明这些功能:

[图3]
图3
样品DM公司工作流定义文件。

(i) 运行给定输入文件的工作流启动脚本;作为脚本输出的结果,定义了两个新变量,并在第二阶段即第三阶段中使用。

(ii)在指定的远程机器上处理输入文件。

(iii)将处理结果上传至APS现场存储。

在本例中,工作流定义本身嵌入在Python字典中。系统还支持JSON格式的工作流定义。

这个处理服务可以单独使用,也可以与其他糖尿病支持全自动波束线数据采集和处理管道的台站服务。例如数据采集服务可以配置一个集成插件,该插件将基于用户工作流的作业提交给处理服务。除了REST接口之外处理服务提供ZeroMQ(https://zeromq.org)适合与其他波束线应用程序或软件系统集成的作业提交接口。

2.3.DM公司监控基础设施

DM公司该服务具有内置的监视接口,使外部应用程序能够了解其状态。这些接口由自定义Nagios使用(https://www.nagios.org)插件提供关于所有人健康状况的最新信息DM公司站点部署。就像光束线元数据目录页面一样,糖尿病Nagios web内容由Nginx服务器提供服务(https://nginx.org(英文))(见图4[链接]).

[图4]
图4
DM公司nagios服务组视图。

2.4.DM公司用户界面

用户和管理员可以访问DM公司门户网站,DM公司Nagios网页或使用其web浏览器的光束线元数据目录页面。

这个DM公司REST web服务接口可以通过编程方式访问通过Python和Java API。该系统还提供了一组丰富的命令行接口和工具,这些接口和工具是在其Python API的基础上构建的。所有命令行接口都是完全可脚本化的;它们共享一个共同的基础,从而产生一个共同外观。用户对REST接口的访问是基于会话的DM公司命令行工具利用了此功能。

除了命令行工具和API之外,DM公司用户还可以选择使用DM公司工作站GUI,使用PyQt工具箱实现(https://riverbankcomputing。com/software/pyqt/intro). GUI允许用户创建实验(手动或使用GUP或ESAF数据)、修改实验用户、开始监视新文件的数据目录或将现有文件上载到存储器。它还能够显示实验文件集合以及单个文件元数据。GUI实验管理页面如图5所示[链接].

[图5]
图5
DM公司工作站GUI。

APS现场用户可以使用DM公司下载命令行实用程序,或使用环球在线(见图6[链接]). 后一个选项需要Globus Connect个人Globus Connect服务器软件(https://www.globus.org). 非现场用户必须始终使用Globus在线将文件传输到个人笔记本电脑或远程站点。APS收集的数据的使用权受美国能源部阿贡国家实验室运营商与设施用户之间的用户协议管辖。在大多数非专有用户协议中,设施用户和美国政府有权使用这些数据。

[图6]
图6
访问APS数据通过 Globus在线.

3.软件安装

APS的每个波束线都有自己的数据管理软件安装,所有波束线计算机都可以看到。除了DM公司软件,部署区域还包含支持软件包、波束线数据库和配置文件,以及各种运行时和日志文件。通过这种方式,所有波束线彼此完全独立,这在APS环境中工作良好,其中波束线机器通常具有不同的维护周期。这个DM公司软件具有完全脚本化的安装、升级和部署测试过程,由于独立的波束线软件安装,这将维护开销降至最低。

DM公司服务通常运行在指定的beamline服务器机器上,可以是虚拟的,也可以是物理的。所有服务都受到控制通过适用于APS中使用的RHEL操作系统的标准控制脚本集。

尽管DM公司该软件旨在APS使用,其开发方式不禁止在不同地点安装。除了可以在任何地方复制的一组支持软件包,以及包含指向各种支持服务的URL的配置文件之外,基本软件功能不依赖于其他任何东西,这些支持服务也不是特定于站点的(例如LDAP、MongoDB、GridFTP、,)。所有APS特定的模块,例如那些能够与各种APS数据库集成的模块,都可以禁用或替换为提供同等功能的新模块。

4.系统使用

的数量DM公司站点部署从2016年12月的5个增加到2017年12月21个,仅2017年12月份就有5个新安装上线。系统用户数量的增加反映在APS现场存储使用量的相应增加中,如图7所示[链接]。自2016年12月以来,系统存储空间使用量从略高于250 TB增至近1 PB(总存储容量为1.5 PB)。我们应该注意到,APS存储启用了数据冗余,以便将数据丢失的可能性降至最低,从而有效地将用户数据的大小加倍。

[图7]
图7
APS现场存储使用。

该系统的自动处理能力的一个例子是在8-ID波束线使用的工作流中发现的。APS 8-ID光束线将X射线光子相关光谱(XPCS)技术应用于研究小角度X射线散射(SAXS)几何中凝聚态向平衡演化的平衡波动和波动。此光束线使用规格软件(https://certif.com/spec.html)用于仪表控制和数据采集。对于每个原始数据文件规格脚本启动DM公司基于以下工作流处理作业:

(i) 运行自定义shell脚本以准备处理环境(这包括创建数据输出目录并确定适当的批处理队列和作业名称)。

(ii)使用GridFTP将原始数据文件复制到APS HPC集群(全球通用命令)。

(iii)通过运行自定义8-ID-I实用程序将XPCS元数据附加到数据文件。

(iv)向SGE批调度程序提交处理作业(https://arc.liv.ac.uk/trac/SGE网站)通过这个qsub(qsub)命令。此作业运行一个自定义的8-ID-I处理可执行文件。

(v) 通过运行与SGE交互的shell脚本来监视批处理作业通过这个质量控制小组命令。

(vi)使用GridFTP(全球通用命令)。

APS 8-ID-I光束线可能有数十个活动DM公司处理用户实验期间任何给定时间运行的作业。这些作业正在APS HPC集群上运行,并由员工和用户进行监控通过运行cron作业生成的静态web页面DM公司实用程序。

5.未来计划

这个数据管理软件开发在很大程度上是由波束线用户的需求以及提高系统长期可维护性和减少操作开销所需的改进所驱动的。下面详细介绍了未来计划的一些软件功能:

(i) 使光束线管理器能够以最适合其光束线的方式组织存储中的实验数据。目前,APS存储器中的所有实验目录都直接包含在顶级束线数据文件夹下。该方案不一定对应于波束线在其本地存储区域中维护的目录结构。

(ii)进一步开发DM公司工作站GUI(例如改进文件元数据和集合视图,并添加工作流和处理作业管理功能)。

(iii)开发数据采集服务处理与外部编目和数据发布系统(如DOE data Explorer)集成的插件(https://www.网址。osi.gov/数据浏览器/)和材料数据设施(Blaiszik等人。, 2016[Blaiszik,B.,Chard,K.,Pruyne,J.,Ananthakrishnan,R.,Tuecke,S.&Foster,I.(2016).JOM,68,2045-2052.]). 利用DOE科技信息办公室的DOI建模服务为数据集分配永久数字对象标识符(DOI)(https://www.osi.gov/data-services网站).

(iv)增强DM公司系统监控基础设施:()开发自我诊断错误或警告条件以及发出警报和(b条)改进对性能测量的支持(例如数据传输速率、文件处理速率,.).

(v) 进一步开发中可用的波束线管理功能DM公司web门户(例如添加检查正在进行的上传状态和启动新数据上传的功能)。

(vi)开发一套标准的工作流程定义,可在不同的光束线上重复使用,以自动化处理管道。

(vii)开发一个策略引擎,用于存储和归档旧数据中实验数据的自动化管理,.

除了上述软件改进之外,该系统还需要硬件方面的升级:额外的存储空间、存档系统、用于托管的额外虚拟机监控程序DM公司虚拟机,。添加存档功能还需要制定关于旧实验数据存储时间长度的明确APS范围政策。

6.结论

与光束线数据管理相关的问题并不新鲜,但随着X射线设备产生数据的速度和数量不断增加,这些问题变得越来越具有挑战性。APS系统数据管理系统最初的目标是让非现场用户能够远程访问其数据。近年来,该系统在使用和功能方面都经历了显著增长。在本文中,我们描述了系统架构和当前功能。我们还讨论了它的用途,并提出了未来发展的计划。

鸣谢

我们要感谢APS IT团队,特别是R.Sersted和D.Wallis,感谢他们在构建和维护APS现场存储和用于承载光束线的虚拟机方面所做的工作DM公司服务;APS IS小组F.Lacap和Y.Huang,感谢他们在访问APS数据库方面的帮助和合作;以及APS SDM小组B.Frosik和A.Glowacki进行了许多有益的讨论。我们还要感谢APS 1-ID、J.-S.Park和P.Kenesei;以及8-ID-I、S.Narayanan,感谢他们自早期原型以来在系统测试和故障排除方面的耐心、支持和帮助。

资金筹措信息

以下资金得到认可:根据合同DE-AC02-06CH11357,阿贡国家实验室的工作得到了美国能源部科学办公室基础能源科学办公室的支持。

参考文献

第一次引用Arkilic,A.、Allan,D.B.、Caswell,T.A.、Li,L.、Lauer,K.和Abeykoon,S.(2017)。同步辐射。新闻,30(2), 44–45. 交叉参考 谷歌学者
第一次引用Blair,J.、Canon,R.S.、Deslippe,J.,Essiari,A.、Hexemer,A.,MacDowell,A.A.、Parkinson,D.Y.、Patton,S.J.、Ramakrishnan,L.、Tamura,N.、Tierney,B.L.和Tull,C.E.(2014)。程序。间谍活动,9212,92121G。 谷歌学者
第一次引用Blaiszik,B.,Chard,K.,Pruyne,J.,Ananthakrishnan,R.,Tuecke,S.&Foster,I.(2016)。JOM公司,68, 2045–2052. 交叉参考 谷歌学者
第一次引用Damiani,D.,Dubrovin,M.,Gaponenko,I.,Kroeger,W.,Lane,T.J.,Mitra,A.,O'Grady,C.P.,Salnikov,A.,Sanchez-Gonzalez,A.,Schneider,D.&Yoon,C.H.(2016)。J.应用。克里斯特。 49, 672–679. 科学网 交叉参考 中国科学院 IUCr日志 谷歌学者
第一次引用Deslippe,J.、Essiari,A.、Patton,S.J.、Samak,T.、Tull,C.E.、Hexemer,A.和Kumar,D.、Parkinson,D.和Stewart,P.(2014)。第九届支持大规模科学的工作流研讨会论文集(2014年)2014年11月16日至21日,美国洛杉矶新奥尔良,第31-40页谷歌学者
第一次引用Fielding,R.T.(2000)。美国加州大学欧文分校博士论文谷歌学者
第一次引用Parkinson,D.Y.、Beattie,K.、Chen,X.、Correa,J.、Dart,E.、Daurer,B.J.、Deslippe,J.R.、Hexemer,A.、Krishnan,H.、Macdwell,A.A.、Maia,F.R.N.C.、Marchesini,S.、Padmore,H.A.、Patton,S.J.、Perciano,T.、Sethian,J.A.、Shapiro,D.、Stromsness,R.、Tamura,N.、Tierney,B.L.、Tull,C.E.和Ushizima,D.(2016)。AIP确认程序。 1741, 050001. 谷歌学者
第一次引用Schmuck,F.&Haskin,R.(2002)。FAST’02文件和存储技术会议记录2002年1月28日至30日,美国加利福尼亚州蒙特雷,第231页谷歌学者
第一次引用Thayer,J.、Damiani,D.、Ford,C.、Gaponenko,I.、Kroeger,W.、O'Grady,C.、Pines,J.,Tookey,T.、Weaver,M.和Perazzo,A.(2016)。J.应用。克里斯特。 49, 1363–1369. 科学网 交叉参考 中国科学院 IUCr日志 谷歌学者

这是一篇根据知识共享署名(CC-BY)许可证它允许在任何介质中不受限制地使用、分发和复制,前提是引用了原始作者和来源。

期刊徽标的日志
同步加速器
辐射
国际标准编号:1600-5775
遵循J.Synchrotron Rad。
注册电子通知
在推特上关注J.Synchrotron Rad
在脸书上关注我们
注册RSS订阅源