CSNS实验数据存储管理系统初步设计介绍 中国科学院高能物理研究所 中国散裂中子源 报告人:唐明 2013.7
目录 背景介绍 ICAT元数据管理系统 CSNS数据存储管理系统设计 总结
目录 背景介绍 ICAT元数据管理系统 CSNS数据存储管理系统设计 总结
1. 背景介绍 CSNS 中国第一个散裂中子源,与同步辐射光源互补 面向用户的大科学装置,对世界用户开放 大数据量:数据核心 数据:要求查询、取回、分析、上传、保护、引用跟踪等服务 要求:数据可靠存储、有效管理、易于操作、方便引用。。。 数据就是生命
1. 背景介绍 实验流程 提案提交 提案审核 提案人 样品评估 实验调度 实验 数据评估 数据存储 数据取回 数据分析 文献出版 束线科学家、同行 谱仪管理员、用户办公室 用户、DAQ ICAT 用户 通用的实验流程
1. 背景介绍 目的 建立一套完整的软硬件环境,对实验的各个环节进行完整、有效管理,实现实验信息自动抓取、实验数据自动存储和编目、数据在线分析和跟踪、数据检索、下载上传、引用追踪、分析库发布等功能 总体框架 以元数据管理系统ICAT为基础,联接相关系统 在线提案系统 用户办公系统 (用户数据库、 实验调度、 安全管理、 用户管理、 提案管理、 权限控制) 单点登录系统 用户注册系统 ICAT元数据目录 数据获取系统 存储局域网 数据访问入口
目录 背景介绍 ICAT元数据管理系统 CSNS数据存储管理系统设计 总结
2. ICAT元数据管理系统 What:一个数据库;一套API;一个web service;管理实验信息 开发:STFC(eScience、ISIS、DLS)主导、多方(ORNL、ILL、ESRF、PanData等)合作 基础:CSMD、关系型数据库(Oracle、MySQL等) 用途 应用:ISIS、SNS、PanDATA。。。 ICAT将一次实验的相关信息联系起来,形成完整的实验信息描述。 一个数据库,一套操作数据库的API,以web service的形式向外部提供服务。 ICAT提供从实验提案到实验、到数据分析、到文献出版过程的完整管理。
2. ICAT元数据管理系统 结构 功能 核心数据库:存储元数据,不存储实际的数据文件 API:封装数据库操作;提供web service 装置管理:谱仪、科学家 用户管理:用户、组 会话管理 权限控制:基于规则的组管理 出版跟踪 实验管理:提案管理、数据管理、 样品管理、分析跟踪 上层应用(客户端、GUI界面)可以通过HTTPS、SOAP协议调用ICAT web service,操作底层的数据库,实现数据的持久化。 ICAT只存储元数据(数据信息),实际的数据存储在存储局域网(NFS、Luster等网络文件系统)
CSMD——核心科学元数据模型 2. ICAT元数据管理系统 What:对科研活动的抽象描述;一个跨领域的通用模型;尤其适用于结构科学;支持科学工作流程 开发:STFC,历时8年, 当前 V 3.0 基本单元:Investigation Topic Publication Keyword Authorization Investigation Investigator Sample Parameter Dataset Dataset Sample 在CSMD模型中,调查(investigation)是基本单元,调查者(investigator)执行调查,主题(topic)和关键词(keyword)对调查进行注释和索引,出版物(publication)表示与该调查有关的出版物,样品(sample)用来描述调查所用到的样品信息。数据集(dataset)表示不同的运行或分析,一个调查可以关联一个或多个数据集。数据文件(datafile)实际保存数据(data),数据集包含到数据文件的链接。参数(parameter)描述跟调查有关的实验信息,例如温度、压强、数据采集环境、样品参数等等。样品、数据集、数据文件都有相关联的参数。授权(authorisation)在调查和数据集级别控制用户的访问权限。CSMD的核心实体如图 2所示。CSMD有关实体所包含的主要内容如表 1所示。CSMD模型中,一个数据集可以包含其他的数据集,一个数据文件也可以包含到其他数据文件的链接。 实体 主要内容 Investigation 标题、摘要、日期、装置、谱仪 Investigator 单位、角色 Sample 名称、化学式、安全信息 Dataset 原始数据集、分析数据集 Datafile 名称、版本、位置、格式、创建修改时间 Parameter 名称、值、单位、允许范围 Dataset Parameter Datafile Parameter Datafile Parameter Datafile
2. ICAT元数据管理系统 TopCAT——ICAT web前端 ICAT的Web GUI前端,简化ICAT Web Service的使用 单点登录、浏览、检索、下载上传 ICAT (SNS) ICAT (ISIS) TopCAT ICAT API Data Server 用户 1 2 4 3 5 6 7 8 10 9 11 12 通过TopCAT执行查询时的数据传递过程如图 9(1 - 4)所示。用户通过TopCAT(或其他应用程序)发起查询请求,TopCAT通过调用ICAT API执行查询ICAT数据库,ICAT API将查询结果发送回TopCAT,TopCAT通过web界面将结果呈现给用户。 通过TopCAT下载时的数据传递过程如图 9(5 - 12)所示。用户通过TopCAT在ICAT中搜索要下载的数据,ICAT API将数据的实际地址通过TopCAT呈现给用户,用户通过点击TopCAT中的数据下载地址将下载请求提交给持有实际数据的数据服务器,数据服务器调用ICAT API在ICAT中查询用户权限,ICAT将权限检查结果发送回数据服务器,数据服务器根据该结果决定是否允许用户下载数据。 TopCAT ICAT (CSNS) ICAT (DLS)
2. ICAT元数据管理系统 TopCAT界面
目录 背景介绍 ICAT元数据管理系统 CSNS数据存储管理系统设计 总结
3. CSNS存储管理系统初步设计 总体设计 以ICAT管理实验元数据 谱仪本地和中央两级方式存储实验数据 连接相关系统,如用户办公系统、HPC集群网络、开发网络和公共服务网络等连接,实现设计目的 CSNS的数据采用两级存储。谱仪本地数据存储系统存储有私密信息,不对用户开放,各个谱仪可开放的数据将会同步到统一的中央数据存储系统,用户可对中央数据存储系统中的数据进行检索和取回。中央数据存储系统具有归档和备份功能,采用SAN结构,以方便系统的升级与维护。中央数据存储系统设计一个缓存区,用户可在此对数据进行打包/解包,并采取一定的策略缓存数据,提升系统服务性能。可以通过VPN登录主数据服务器进行远程管理。中央数据存储系统通过主数据服务器与ICAT系统、HPC集群等应用交互。 中央数据存储系统只存储实验数据,不允许用户上传分析结果及其他相关数据,用户可以存储分析数据至分析数据存储系统中。
3. CSNS存储管理系统初步设计 各系统互联 基本纽带: InvestigationID以ProposalID表示 元数据自动抓取 UserID InvestigationID以ProposalID表示 元数据自动抓取 以DOI唯一标识数据对象
3. CSNS存储管理系统初步设计 DOI——数字对象标识符 使用DOI 传统URL缺点:位置相关、修改相关,容易失效 Dataset 独立于数据 惟一标识 永不改变 永不失效 直接引用数据对象 跟踪使用情况 Investigation Datafile 使用DOI DOI CSNS DOI设计: 三种级别: Investigation Dataset Datafile 格式: 10.CSNS惟一机构号/CSNS.谱仪名.数据类型.标识串 如:10.8546/CSNS.SANS.E.50948125 Landing Page Location DOI:下一代URI,独立于文件名、文件属性、存储位置、修改无关 传统URL的缺点:修改了URL,则原先的URL失效 Metadata
3. CSNS存储管理系统初步设计 公共服务区 对外部用户提供必要服务 单点登录 CSNS Portal 数据检索、浏览、下载上传 数据分析及可视化 实验模拟 用户培训 提案召集 。。。 开发CSNS Portal,集成数据检索、浏览、上传下载、数据分析、可视化、模拟、提案召集等功能。
3. CSNS存储管理系统初步设计 谱仪本地网络 私有网络 本地存储网络 主——从结构 工作桌面 控制 数据存储 在线分析 模拟 开发工作桌面,提供统一的操作体系 谱仪本地网络是私有网络,每一台谱仪都有自己的本地网。在本地网内部,采用主服务器-从机的服务结构,控制、模拟、数据采集、数据分析、状态显示等各个功能分别由专门的软硬件负责,通过主服务器上的工作桌面将各个功能有机地联系起来。主服务器实现总控,用户可以通过VPN登录主服务器,实现谱仪的远程控制。 本地网络具有一个本地存储系统,谱仪的所有相关信息如谱仪配置、实验环境、日志、谱仪调试、实验数据等都存储在该系统中。本地数据包含私密数据,特权用户如谱仪科学家或管理员可以查看,但不对其他用户开放,任何情况下用户都应该从中央数据存储获取数据。本地存储网络通过数据服务器与ICAT元数据目录系统、中央数据存储系统交互,实现元数据和实验数据的传递和同步。
3. CSNS存储管理系统初步设计 中央存储网络 SAN 分布式 通过IDS与ICAT交互 长期存储 仅实验数据 服务用户 缓存区:打包/解包 CSNS的数据采用两级存储。谱仪本地数据存储系统存储有私密信息,不对用户开放,各个谱仪可开放的数据将会同步到统一的中央数据存储系统,用户可对中央数据存储系统中的数据进行检索和取回。中央数据存储系统具有归档和备份功能,采用SAN结构,以方便系统的升级与维护。中央数据存储系统设计一个缓存区,用户可在此对数据进行打包/解包,并采取一定的策略缓存数据,提升系统服务性能。可以通过VPN登录主数据服务器进行远程管理。中央数据存储系统通过主数据服务器与ICAT系统、HPC集群等应用交互。 中央数据存储系统只存储实验数据,不允许用户上传分析结果及其他相关数据,用户可以存储分析数据至分析数据存储系统中。
3. CSNS存储管理系统初步设计 HPC分析集群 在线数据分析 分析库管理与同步 分析数据存储 与ICAT交互,记录分析过程 分析结果缓存 分析系统 标准工作流分析 自定义分析 HPC集群应该包含作业管理系统、CSNS分析函数库、分析系统、计算结果缓存系统等功能。作业管理系统管理用户提交的作业,需要与作业提交系统交互。CSNS分析函数库持有通用的、第三方的、专用于CSNS的数据分析库函数,并对分析函数库进行管理,能够保证HPC的分析库跟谱仪本地分析机器上的库一致。分析系统用于执行实际的数据分析过程,应该至少提供工作流分析和自定义分析两种功能。工作流分析是CSNS推荐的、通常的分析流程,提供给普通用户使用,简化分析复杂度。通常每个谱仪都有一个工作流分析。自定义分析提供给高级用户使用,可以按照需要选用分析函数库、分析步骤,以实现特定的目的。缓存系统用于缓存用户计算结果及日志。
3. CSNS存储管理系统初步设计 元数据处理 ICAT提取并管理元数据 维护元数据的完整 以NeXus文件提交给用户 ICAT与SAN保持一致性 元数据管理是CSNS实验数据存储管理系统的核心部分,设计采用ICAT数据库作为元数据管理工具,如图 14所示。ICAT从用户办公系统、用户数据库、样品数据库、实验配置、数据分析日志等抓取元数据,以NeXus文件的形式跟原始数据文件一起提供给用户查询、下载与分析。ICAT需要跟踪在HPC中的数据在线分析过程,记录重要信息如分析步骤、分析参数、重要分析结果等。ICAT需要保持与数据存储系统一致,当数据存储系统的内容发生改变时,ICAT能够随之更新。
3. CSNS存储管理系统初步设计 软件开发网络 版本库管理 项目管理 自动构建 持续集成 分析库发布与同步 分析软件开发
3. CSNS存储管理系统初步设计 与DAQ接口 数据转存:XML元数据描述文件 在线数据分析:DAQ数据流 一个数据流接到临时数据存储,再转存到中央数据存储 一个数据流直接用于在线实时数据分析 一个数据流留作以后升级
目录 背景介绍 ICAT元数据管理系统 CSNS数据存储管理系统设计 总结
4. 总结 CSNS正式运行后将会产生大量的数据,数据的有效存储和管理至关重要 介绍了ICAT元数据管理系统,由于其完善的管理功能及成功的应用实例,将之用于CSNS存储管理系统是可行的。 介绍了CSNS数据存储管理系统的初步设计方案,力争将实验数据相关方面做一个整体考虑,尽可能设计出一套有效的系统。
谢 谢 !