#astro-ph# N久没介绍arXiv文章了,之前提过有空的时候想聊聊Vera Rubin天文台牛逼在哪。今天正好有一篇介绍Vera Rubin的数据传输模型的小文章:/http://t.cn/A6kY7UxW 在大数据管理上,Vera Rubin在天文学项目里绝对是相当规范的,但天文学本身在这方面是比较落后的。通过文章我们可以看到Rubin经过多年筹备,向业界(Amazon、Google)和高能物理界(CERN)取经后,基于开源软件系统给出的一个设计。文章非常概括,有很多我也看不懂的地方 ,但依然很值得学习。
作为将为宇宙拍延时电影的天文台,Rubin将在未来十年里每年都获取5PB左右的数据,虽然可能从数据量上不如SKA,但依然非常可怕,需要很详细的管理方案。Rubin世界最大的相机每次曝光都能生成200个左右的文件,这些数据在智利进行备份后,也会同时传输回美国SLAC国家实验室的数据库,并会在1分钟内被即时处理管道(Prompt Processing pipline) 分析,并生成暂现天体和移动天体的Alerts;之后,在80个小时的“管制期”(美国需要确保涉密军事卫星的信息不泄漏)后,数据会传输到法国里昂的CC-IN2P3数据中心,并且部分数据还会传输到英国进行备份。
Rubin的图像数据传输使用了Amazon的S3数据协议。考虑到为了时域天文需要,每4GB压缩数据传输端到端的延迟希望小于7秒钟,其中包含了数据解压缩时间等Overhead。关于数据传输,从美国向欧洲的数据传输使用了美国能源部的能源科学网络系统ESNet;欧洲部分的数据传输使用了GEANT欧洲国家研究与教育网络。而不需要随时更新的校准数据和台站观测条件监测数据等将单独进行,频率不需要特别高。
每年Vera Rubin积累的图像数据都会使用美国SLAC、法国IN2P3、以及英国的三个计算中心联合进行。所有的处理好的数据和中间产物每年都会进行统一的汇总,提供给科学社区。所有的数据都是由专门开发的LSST Science Pipelines进行的。面对这么海量且复杂的数据,LSST科学软件管道使用了一个叫Rubin Data Butler(简称Butler,或者“管家”)的 middleware 系统,使用户不需要掌握底层C++软件管道的细节和各种科学文件的位置、格式,可以直接使用Python进行交互。
最终,每年处理好的数据会被分发到全世界范围内15-20个国际数据分析中心(IDAC)开展具体科研。这个数据分发过程是一个阶梯式、高度协调的过程。有些IDAC将负责从数据中心接受数据并向下游IDAC进行数据传输。
这个复杂的过程里使用了大量专有工具。其中数据传输深深受益于高能物理学实验,采用了欧洲核子中心CERN开发的Rucio开源软件框架和FTS(文件传输服务)软件。每个Rubin的数据端点都运行着两个Rucio Storage Elements (RSEs),支持不同的数据传输协议。比如美国和英国的数据中心使用的是XRootD软件框架,而法国使用了dCache系统,但都是使用webDAV(Web Distributed Authoring and Versioning)协议进行传输。每个数据中心接收到的输入数据和数据处理的产物采用了两个不同的RSE节点管理,其中输入数据还需要进行磁带备份。不同数据中心的RSE节点都使用完全相同的Logical-to-physical文件名映射,保证数据管道的Butler系统能够匹配好所有的文件路径。
当数据需要被备份或者传输的时候,Rubin会使用一个文件登记工具(rucio_register)对需要传输的文章进行记录,并将元数据以JSON的形式整理好,最终形成一个Rucio Datasets,通过提前指定的规则,使用FTS进行传输。在整个流程里,Rubin会产生大量JSON或者YAML格式的附属文件,数量和存储科学数据的FITS和Parquet格式文件差不多,但文件大小小了很多(图二)。为了避免过高的Overhead,Rubin会提前对所有附属文件以ZIP格式进行打包。
在文件传输完成后,Rubin使用Rucio框架下的Hermes守护进程(进行了修改,叫HermesK),通过Kafka来向传输重点的数据中心传递信息。在接受数据的中心,Rubin还有一个叫ingestd的守护进程,负责在接收到Kafka的信息后,开始向本地的Butler进行数据注入。在这个过程中,Rubin还做了专门的设施来保证每个接收数据的中心只看到那些已经确认成功完成传输的文件。
- 关于AmazonS3协议:http://t.cn/A6kY7UxH
- 关于Rucio数据管理框架:http://t.cn/A6kY7Uxj
- 关于FTS文件传输服务:http://t.cn/A6kY7UxY
- 关于XRootD数据传输软件:http://t.cn/A6kY7UxT
- 关于dCache数据存储系统:http://t.cn/A6kY7UxQ
