一种数据本地化存储与处理系统
2020-07-31
来源:易榕旅网
Computer Engineering and Applications计算机工程与应用 7 一种数据本地化存储与处理系统 菁1,2孙功星 徐永士 ,霍XU Yongshi。~,HUO Jing ~,SUN Gongxing 1.中国科学院高能物理研究所计算中心,北京100049 2.中国科学院研究生院,北京100049 1.Computing Center,Institute of High Energy Physics,Chinese Academy of SciencesBeijing 1 00049,China ,2.Graduate University of Chinese Academy of Sciences,Beijing 1 00049,China XU Yongshi,HUO Jing,SUN G.ongxing.Node-local ̄ed data storage and processing system.Computer Engineering and Appli- cations,2012,48(5):7-11. Abstract:The large data centers apply the modularized architecture that the computing cluster and storage systems are isolated and connected by the high speed network.A few of the popular implements are listed.On the basis of analyzing the independent structured data feature,a node localized data storage and processing system is proposed,which has better TCO(1bta1 Cost ofOwnership)and Can save much more network bandwidth for huge data transfer than these existing systems.The distributed file metadata manager is impor- tant orf the job schedule,and the feature of the manager is discussed.The PBS(Poaable Batch System),as the cluster resource manag. er,is briefly introduced.How to query the file metadata manager is discussed in detail.The system of computing nd staorage merged to one node leads to the different ways how the user submits he tjobs.The test results of three mechanisms on the prototype system are dis— cussed in short,and show that the ilfe metadata manager is stable and all of three solutions are acceptable. Key words:Portable Batch System(PBS);high physical energy data nalayses;file metadata manage;data storage localization 摘要:简述了当前大型数据中心普遍采用的计算节点集群与存储系统模块化设计的系统结构,说明了部署在各模块上的主要 集群系统。分析了具有独立性的结构化数据本地化存储于计算节点的可能性,给出了系统基本框架,从总体拥有成本(TCO)的 角度分析了其价值。结合高能物理研究的原始数据特点,认为数据本地化存储在节点上,有利于提高整体利用率,指出了关键部 件——文件元数据管理系统的设计要点,分析了PBS作业批处理系统集成文件元数据管理系统的三种方案,给出第一种方案的 详细设计,相应的用户提交作业方式的改变。在测试环境下,初步部署了文件元数据管理系统,测试了三种集成方案,给出了简 要的分析比较。 关键词:作业批处理系统(PBS);高能物理数据分析;文件元数据管理;数据存储本地化 DOI:10.37788.issn.1002.8331.2012.05.003 文章编号:1002—8331(2012)05.0007—05 文献标识码:A 中图分类号:TP393 1 引言 随着技术的进步、设备精度的提高、时问的累积,各行业 收集的原始数据越来越多。在这众多行业中,高能物理研究 是个典型代表。 LHC(Large Hadron Collider)是当前世界上最大的,也是 2 当前主流解决方案 大型数据中心的管理涉及到方方面面非常多的问题。但 是通常情况下,从软件的角度考虑,主要问题有:资源管理、数 据管理和作业管理。作业运行需要合适的操作系统、处理器 和内存等资源。数据存储方面,通常使用海量存储系统。而 高速局域网成为沟通各子系统的桥梁。 能量最高的粒子加速器,正常运行情况下每年大约产生15PB 的实验数据,需要约20万个频率为1 GHz的CPU核进行数据 分析和处理u 。 中科院高能物理研究所的BESIII实验产生的数据包括原 2.1当前的架构 、 结构化、功能化的设计理念贯穿计算机发展的历史。图1 是冯诺依曼体系的个人计算机的系统结构简图,模块化的运 算部件CPU和存储部件主存、磁盘之间通过总线交换控制信 息、数据等。 始数据、重建后的数据和蒙特卡罗模拟的数据等,预计总量将 达到5.732PB。在西藏羊八井的中.意ARGO实验,中美合作 的大亚湾中微子实验,以及与CERN(欧洲粒子物理研究中心) 合作的LHC上的ATLAS和CMS实验也将产生大量的数据。 预计物理学家要处理和分析这些数据需要大约1 5 000最新的 CPU核,以及6.8PB的大型磁带库系统作为近线的海量存储系 统。同时,为了加快数据的访问速度,系统采用大约5PB容量 的磁盘作为数据缓冲,缓存经常使用的数据,以加速数据的访 问,消除大型数据处理系统的I/O瓶颈 。 基金项目:国家自然科学基金资助重点项目(No.90912004)。 图1 基于总线的计算机系统结构简图 秉承相同的设计理念,大型数据中心通常采用如图2所示 的系统结构,由集群系统组成、磁盘缓存和海量磁带库组成。 计算机集群简称集群,是一种多计算机系统,它通过计算机软 作者简介:徐永士(1979一),男,博士研究生,研究方向:网格计算技术;霍菁,男,博士研究生;孙功星,男,博士,研究员,博士生剥币。E-maihxuysh@ihep.ac.cn 收稿日期:2011-09—27;修回日期:2011-11-27 徐永士,霍菁,孙功星:一种数据本地化存储与处理系统 9 东北大学的高性能集群也采用了PBS的一个开源版本 TORQUE作为资源管理软件。 算节点内部。图5即为数据存储本地化后的系统结构简图。 3.3磁带库管理系统 CASTOR是CERN开发的分级存储管理系统,其基本思 网 嗣存储 想是使用磁盘和磁带两级存储。由于文件平时存储在磁带 图5数据存储本地化示意图 中,CASTOR提供了专门的命令查询和修改文件状态。 为了能够高效读取,当用户发出读请求时,系统首先检查 文件是否在磁盘缓存中。如果文件在磁盘缓存中,则直接将 很显然,图5所示的系统结构,需要引入一些辅助控制系 统,其中比较重要的是文件元数据管理系统。对于大规模数 据中心来说,该文件元数据管理系统,应该具有分布式、动态 性、健壮性和良好的访问效率。 如图6所示,由于用户提交的作业所依赖的文件的存储模 磁盘文件地址返回给用户。如果不在,则先请求从磁带上提 取文件,等文件提取到磁盘缓存后再返回用户 。CASTOR特 有的数据迁移功能,做到了跨介质的存储虚拟化,使存储资源 的使用更加合理,也提高了整个存储资源的利用率。 3.4集群文件系统 许多共享文件系统都能够用作大型数据中心的存储管理 系统,但是比较优秀的集群文件系统除了提供共享访问的能 力,还需要: (1)负载均衡。 (2)高性能,在I/O级和数据吞吐率方面能满足大规模的 聚合访问的需求。 另外,为了便于使用和进一步的开发,一般都提供:(3)良 好的编程接口,便于集群应用程序的编写。 现在比较著名的系统有PVFS、GPFS、zFS、GFS、Lustre 等,下面将着重介绍在Linux平台上比较广泛使用的开源系统 PVFS和Lustre。 PVFS[ (Para1lel Virtual File System)项目是Clemson大 学为了运行Linux集群而创建的一个开源项目。目前已被广 泛地用作临时存储的高性能的大型文件系统和并行I/0研究 的基础架构。PVFS主要有以下不足:(1)单一管理节点,管理 节点很容易成为系统瓶颈。(2)对数据的存储缺乏容错机制。 (3)静态配置 。 Lustre是第一个基于对象存储设备的开源并行文件系统, 被广泛应用于各大型数据中心。目前可以支持1 000个客户 端节点的I/O请求。Lustre采用分布式的锁管理机制来实现并 发控制,元数据和文件数据的通讯链路分开管理 。与PVFS 相比,Lustre在性能、可用行和扩展性上略胜一踌。 3.5不足之处与讨论 这样的架构设计的优点显而易见,然而随着业务的增加, 对网络性能的要求越来越高,网络有可能成为集群环境的瓶 颈。从图3中可以看出,连接计算节点的是千兆以太网,而用 于存储系统内部节点连接的是万兆以太网。 微软研究院的Jim Gray早在2003年的一篇《分布式计算 经济报告》 】中指出在CPU速度、磁盘空间、数据库访问、磁盘 I/0、局域网带宽各项中,CPU性能提高最多,因此,应该尽量 提高其他各项的利用率。 从成本的角度看,当前架构中,一方面是计算节点的本地 磁盘空间没有得到充分利用的;另一方面,如果降低对局域网 带宽的依赖,现有的局域网带宽能够进一步支持业务的增长。 4数据存储本地化 高能物理领域,由探测器获取的原始数据,按照一定的格 式存储,每个事例都具有独立性,并且存储大小是特定的。因 此符合上述讨论的结构化数据,能够将数据分散地存储在计 式的改变,资源调度器需要访问文件元数据管理器,以定位合 适的执行节点。 作业执行器 。’ 、 }文件系统{ 汁算节点 图6作业流程图 因此,文件元数据管理器在资源的使用过程中起到关键 的作用,也成为系统结构设计的重要部分。文件元数据管理 器必须有效地管理分布在集群中的众多文件,同时提供的接口 应该能满足资源管理器简洁、高效的访问需要的数据的要求。 从安全的角度考虑,文件元数据的信息需要设置合适的 访问级别,以防止用户的恶意攻击,也需要鉴别用户身份,以 限制用户取得适合的文件信息。 § ______-1 龠奄.式 § \ 憩 雠÷蘩 \ 毒\l |窀罐|_ — 黪■ 毫缝l %髓镪糍 蕊 %戮麟瓣臻 图7设计影响因素 文件元数据管理器相关各部件主要功能列表见表1。 表1功能简要列表 客户端 选择合适的元数据管理器实例 节点监测 文件元数据管理器 文件副本管理 数据冗余 节点信息、节点虚拟根目录、统计信息 节点代理 文件、目录操作 文件stat操作 由于文件元数据管理器的功能较复杂,详细设计不展开 讨论。 5系统集成 由于高能物理分析依赖的软件环境比较复杂,在现有的 基础上,分析各个子系统,逐步改进或更新各个子系统以实现 最终目标。 5.1 PBS作业处理系统的处理流程 PBS作为计算节点集群的资源管理系统,负责管理被提 Computer Engineering and Applications'}'l"算机工程与应用 交的作业的具体调度。用户可以通过它提交作业、管理各个 度器无法保证作业被调度到的节点上存在被处理对象。 资源节点,并调度批作业在各计算节点上运行。PBS作业处 理系统的结构如图8,通常情况下集群使用的是开源版本 Torque或Open PBS,相应的运行的调度器使用Maui/Moab。 ㈡H…ost…C-…Exe…cut…ion…Ho…st— ……Hos…t D…-Cl…ien 一6_ … 综合分析后,可以发现作业处理步骤中,有三处比较适合 植入名字映射功能。这三处已标注在图8中(红色粗线),分别 阐述相应的原理如下。 (1)作业提交(qsub)的时候,可以限定执行节点的集合。 在用户提交作业的时候,提取处理对象,查询所在的存储节点 集合,选择合适的副本位置,在向服务器(pbs_server)正式提交 的时候,同时限定计算节点。 (2)理论上调度器Maui只能获得作业属性信息,无法访问 作业脚本。但是Maui限定自身只能和PBs服务器(pbs server) 运行在同一台物理节点上,因此Maui可以利用pbs在服务器 图8系统整体结构图 如图8所示,PBS的作业调度逻辑大致如下:(1)调度器 (scheduler)从服务器(server)读取计算节点、作业信息;一(2)调 度器读取作业信息;一(3)调度器调度作业;一(4)调度器更新 作业信息,计算节点mOlTl运行作业 】。 在图8中涉及作业调度的主要步骤为: (1)步骤1,用户使用qsub,或者其他方式,透过头文件 pbs if1.h定义的接口pbs submit提交作业;pbs server接收作 业,返回作业号。 (2)步骤7,调度器Maui调度作业;步骤8,服务器pbs server 发送作业给相应计算节点的pbs mom 。(3)代理pbs mom执行作业,返回相应的执行结果,将相 应的输出写到指定的目录下。 从PBS的角度来看,用户提交的作业,有两部分信息:一 部分是作业本身,以脚本的形式存在;另一部分是作业的限制 性信息,包括节点、时间、权限、用户、组、优先级等,以作业属 性的形式存在。调度器从服务器pbs server 读取后一部分信息,并结合计算节点的状态等信息,按照一定的调度算法做出 决策。 5.2文件的逻辑名字到物理名字的映射 显然,集群存储的文件,由于多种因素的限制,暴露给最 终用户的并非物理名字,而是逻辑名称。一般情况下,用户提 交的作业指明的被处理对象,引用的都是相应文件的逻辑 名。因此,系统需要在合适的步骤,提供名字映射的功能,并 选择合适的副本。 通过以上对PBS作业处理逻辑的分析,可以发现,调度器 Maui使用的调度信息不包含被处理对象的存储信息,因此调 上存储脚本副本的规则,直接访问作业脚本,提取足够的信 息,从而决定合适的计算节点。 (3)代理pbs mom在设计的时候,已经考虑到某些复杂的 作业,可能需要多个计算节点的联合。因此,pbs mom可以在 服务器的指示下自行沟通,组成一卟临时的虚拟组。换种说法, 也就是pbs mom Tlom 有重新定位作业运行节点的能力。pbs 1能够收到作业脚本信息,分析脚本,重新提取足够信息,再次 定位计算节点,完成二次调度。 5.3三种方案的比较及选择 方案的选择,不仅需要考虑用户的使用习惯,还要考虑已 有系统的变更范围。就现在的集群而言,用户习惯的变更,不 仅涉及到的用户范围大、层次多,而且极为容易造成作业脚本 书写错误。同样的道理,方案的选择,也应该以尽量少改动已 有系统为原则。 再次分析以上的三种方案,显然,第一种方案相对变更最 少;第二种和第三种方案虽然用户习惯的变更也较小,但是对 PBS作业管理系统做较大的变更,尤其是第三种方案。 但是直观上可以发现,后两种方案,由于调度因子包含了 计算节点的负载指数,可以进一步利用集群的计算能力。 5.4第一种方案的算法 以下仅给出第一种方案的详细设计。 (1)分析作业提交信息,得到被分析对象的逻辑名字,设 置标 ̄EbSpawn为真。 (2)生成作业提交唯一序号,记录相应作业信息入数据 库:提交序号、作业名、提交人、提交时间、状态。 (3)访问分布式文件元数据管理器,映射逻辑名,并将以 下信息记入数据库:作业提交序号、文件逻辑名、存储节点名、 脚本临时文件名。 (4)拷贝作业脚本,并修改被处理对象参数,数据库更新 “脚本临时文件名”。 (5)修改作业属性,限定计算节点。 (6)向服务器(server)提交作业。 (7)如提交成功,将以下信息记入数据库:作业号、作业状 态、提交序号、作业名;否则,报错。 5.5用户作业提交 在保留用户大部分的使用习惯的前提下,提供一个能够 和文件元数据管理系统配合的作业提交命令。 如图9所示,作业提交命令,根据用户的命令行参数,查询 元数据管理器,解析数据文件描述的数据集,拆分脚本文件, 并提交作业到作业服务器pbs server,同时记录相应的信息到 作业信息数据库中。 徐永士,霍菁,孙功星:一种数据本地化存储与处理系统 2012,48(5) 11 700毫秒左右(取右侧较大的值),即每次查询的消耗约为70毫秒。 文件元数据管理系统性能良好,初步满足了设计要求。 在此基础上,进一步实现了文中分析的三种PBS作业批 处理系统集成方案,并进行了部署测试。 在测试环境下,作为基础的分布式文件元数据管理器,运 图9作业提交的逻辑结构 行稳定,在数百个作业同时提交的情况下,性能良好。 三种集成方案在测试过程中,第一种方式的性能最稳定, 但集群性能利用率偏低。第二种方式对PBs服务器(pbs server) 物理节点的性能消耗较大,内存消耗有明显增加。测试过程, 对以后实际选择集成方案以及具体部署给出了指导。 由于图9中的作业提交器对用户提交的脚本有所修改,造 成用户逻辑中的作业信息与pbs服务器提供的信息有所不同, 因此,需将相应的信息存储以备用户查询。 6分析与讨论 实验在设计完成的分布式文件元数据管理系统的基础 上,初步部署了一个测试环境。测试环境操作系统为slc5.5, SAS硬盘,CPU为Intel ̄Xeon0E5620,2.40 GHz,双核。每一 参考文献: [1]Noels C.The LHC project[EB/OL].hIcp://lhc.web.ccm.ch. [2]孙功星,陈刚.海量数据处理系统的设计和实现[J】.高性能计算发 展与应用,2008,23(2):34—37. 万次操作作为一组(横坐标单位为一千次操作),记录客户端 操作时间,典型测试结果如图1O所示,系列1为新增操作,系 [3】程耀东,马楠,于传松,等.海量存储系统中磁带文件缓存管理[J】. 核电子学与探测技术,2006(4). [4】Cams P H.PVFS:a Parallel File System for Linux clusters[C]// Proceedings of the 4th Annual Linux Showcase and Conference, 2000. 列2为查询操作(连续做十次复合条件查询),可以发现,每一 万次新增操作的时间在330~350秒之间,即每次元数据新增 操作的时间在33毫秒到35毫秒之间;每十次查询的时间在 [5]Zhu Yifeng.CEFT:a Cost-Effective,Fault-Tolerant parallel virtual file system[J].Journal of Parallel and Distributed Computing,2006,66. 【6]汪璐,石京燕,程耀东.基于Lusrte的BES集群存储系统[J].核电子 学与探测技术,2010(12). 【7】Gray J.Distributed computing economics[R].Microsoft Research, San Francisco,Caliomifa,USA,2003. [8]Bayucan A,Lesiak C.MRJ technology solutions[EB/OL].http:// Www.mcs.an1.gov/research/projects/openpbs/docs/v2_2_ids.pdf. [9】Bayucan A,Henderson R L.MRJ technology solutions[EB/OL]. http://ece.gmu.eduflucite/manuals/PBSPro5.0/pbs ers.pdf. 图1O文件元数据管理系统性能测试 (上接6页) l585一l592. 高。从实验结果来看,布匹瑕疵检测系统有较好的检测效 果。下一步工作是把算法加入到实时系统中,检测算法的实 时性和分类性能。 [7]Kumar A.Automated inspection of textured web materials using real Gabor function[C]//Proc 2nd SPIE ICIG,Hefei,China,2002: 59—62. [8]8 Kumar A.Defect dectction in textured materials using gabor fil— ters[J].IEEE Transactions on Industry Applications,2002,38(2): 参考文献: [1]1 Srinivasan K,Dastoor P H,Radhakrishnaiah P,et a1.FDAS:a knowledge—based framework for analysis of defects in woven 425.440. 【9]周涛,张继业.视频图像的车辆检测与识别[J].计算机工程与应用, 2011,47(19):166—169. 『101 Shen Linlin,Ji Zhen.Gabor wavelet selection and SVM classiif— textile stmctures[J].J Text Inst,1992,83(3):431-448. f21 Sari—Sarraf H,Goddard J S.Vission systems for on—loom fabric cation for object recognition[J].Acta Automatica Sinica,2009,35 (4):350.355. inspection[J].IEEE Trans on Ind Appl,1999,35:1252—1259. 【3】Kumar A.Computer-vision-based fabric defect detection:a survey[J]. IEEE Transactions on Industrial ElectronCS,2008,55(1):348—363. [11]梁竞敏.Adaboost ̄II信息瓶颈算法在图像检索中的应用[J】l计算机 工程与应用,2010。46(35):215-218. 【12】Han Deguang.The existence of tight Gabor duals for Gabor 【4】Mark K L,Peng P.An automated inspection system for textile fabric based on Gabor filters[J].Robotics and Computer-Integrated Manufacturing,2008,24:359—369. rfames and subspace Gabor frames[J].Journal of Functional Analysis,2009,256:129—148. 【5】吉祥,郭雷,陈大海,等.指纹亚像素频率的滤波方法[J].计算机工 程与应用,2011,47(12):177・179. 【6】Mak K L,Peng P,Yiu K F C.Fabric defect detection using morphological filters[J].Image and Vision Computing,2009,27: [13】Unser M.Local linear transforms for texture measurements[J]. Signal Process,1986,l1(1):6l一79. [14】Fukunaga K.Statistical pa ̄em recognition[M].2nd ed.San Diego, CA:Academic.1990.