中国石油存储案例分析:用NAS寻找沙漠中的黑金

    对于三五年就要更新的石油地质勘探资料处理,中国石油对国内各个分公司都要求技术先行:地震资料处理搞好了,可以减少打空井的风险。过去,由于较少使用科学的方法研究地下构造,经常出现打空井的情况,造成几千万甚至上亿元的投入浪费。


    因此,中石油内部提出:“宁可少打一口井,也要把资金投入到计算机装备上”的口号,用高质量的勘测和运算技术发现更可靠的地下构造。 
  
    中国石油新疆地球物理研究所的高性能计算平台,主要用于勘测数据的汇集和运算,也就是石油勘探地震资料处理,把地下地质的地震信号通过地面提取后,用大型计算机进行处理,形成地下构造以及地下成像,发现地下的油气构造,为打井提供更加可靠的勘探数据。 
  
    从上个世纪80年代初应用计算机开始,研究所已经经历了好几代的更新,从早期应用的向量级服务器到UNIX服务器,一直到现在的IBM刀片机群。 
  
    由于地质原始数据文件很大,集群运算需要巨大的运算存储空间,不但要求存储设备的I/O吞吐性能可以满足IBM机群服务器的运算要求,并且尽可能做到低成本实施。 
  
    选购与实施 
  
    性能、价格、容量的平衡点 
  
    由于数据占用空间巨大,存储设备的需求量多,石油勘探高性能计算对于存储系统有着三方面的要求:性能、价格和容量。而这三方面又是互相牵制,特别是价格和另外两个因素之间始终存在着矛盾。 
  
    为了满足高性能计算存储系统这三方面的要求,新疆地球物理研究所总工程师贾亚军选择了NAS产品来构建整个高性能计算平台的存储环境。 
  
    因为单纯依靠服务器中的硬盘根本不可能满足容量要求,采用DAS直连存储既不能实现网络化,维护又很不方面。 
  
    而光纤SAN架构虽然性能高、容量大,但是成本太过昂贵,并不适合于高性能计算所采用。 
  
    贾亚军谈到,目前研究所中NAS设备的总容量已经达到了100TB,其中基于SATA的NAS设备40T,基于IDE的设备为60T。而这些空间仍旧不能满足应用的需求,研究所还在不断对系统进行扩容。 
  
    亲自测试才会采用 
  
    业界对于存储系统性能的评估标准很多,测试方法也是多种多样。为了保证存储系统能够达到石油勘探高性能计算的要求,特别是要能够应对高性能计算服务器长时间、大容量的访问要求,贾亚军每次采购前都会对入围的设备在实际应用环境中进行测试。据他介绍,在此次存储系统选型时,研究所前后共选择了九个品牌的NAS进行测试。 
  
    一般的BenchMark测试对NAS产品而言,只能用来参考。因为高性能计算、特别是石油行业的应用对于NAS的要求比较特殊。 
  
    此次系统扩充选择了网虎公司的NAS8500作为高性能计算服务器集群的存储池,为地质勘探数据提供存储空间。研究所采集的原始数据上传至集群服务器,运算的中间结果及最终结果数据均保存在NAS上,每台NAS8500目前可提供的存储容量为2TB。 
  
    将存储化整为零 
  
    看到这个小标题也许会让人觉得有些奇怪,许多行业现在都在大谈数据大集中,为什么研究所要把存储系统化整为零呢? 
  
    贾亚军谈到,以前数据的存储有很大一部分放置在直联的DAS盘阵当中,因为高性能计算对于硬盘部件的消耗非常高,采取DAS方式很不灵活,维护起来也不太方便。 
  
    因此研究所将逐渐把这部分设备进行淘汰,不再对其进行维护的资金投入,逐步将这些数据转移到网络中的NAS上。这么做有两大好处: 
  
    首先,采用NAS方式后,不同业务的存储就可以分离放置在不同的NAS服务器中,有可能几个NAS就是一个项目所有的数据资料,实现了数据的小“集中”,这样维护和管理都会非常简单。 
  
    其次,此次采购的网虎的NAS产品每一款数据存储容量为2TB,将存储系统化整为零后,即使某一台NAS发生问题,也不会对整个存储系统造成影响,提高了系统的冗余度。 
  
    创新的“磁盘库”归档方式 
  
    当记者问到如此海量的数据怎么进行备份时,贾亚军介绍了自己的“高招”:研究所以前曾经购买过大型的磁带库系统,累计投资也已经在几十万以上,但现在整个磁带库的空间已经基本满了。 
  
    出于成本的考虑,研究所将不会再对磁带库进行投资。贾亚军给记者算了这样一笔账:一盘容量为80GB磁带的价格要近千元,和一块100GB左右的硬盘价格相仿。 
  
    如此看来,硬盘不但单TB成本比磁带更低,而且还拥有着磁带无法比拟的速度优势。用贾先生的话说,“把磁盘直接放进仓库都比购买磁带划算得多”。 
  
    因为研究所经过计算得出结果后的数据,一般在2~3年之后才会取出复用。而且由于NAS存储设备是根据项目进行分散配置的,每个项目都被绑定在相应的存储设备中。 
  
    一个项目完成后,可以直接把硬盘从NAS中取出进行保管,有新的项目上线时,直接购买空白硬盘补充即可,这点确实为许多高性能计算的用户提供了备份的新思路。 
  
    这样保存的数据还能时刻处于近线状态,如果突然需要访问,只需要把硬盘安装回NAS即可,不用花费漫长时间等待数据从磁带恢复到磁盘。 
  
    管理难题尚未解决


    贾亚军在接受采访时,还对硬盘的质量表示出了自己担忧。因为现在在研究所的系统中,每个月都有硬盘损坏的情况发生。这种情况的频繁出现不但维护成本较大,而且更换硬盘后的重建数据过程,也会对生产系统造成性能影响,甚至影响某个项目的时间进程。


    对待这种问题,贾亚军无奈地告诉记者,自己和同事只能像救火队一样,哪里出现“险情”就解决哪里。 
  
    贾亚军也为部门制定了详细的工作流程制度,尽可能利用标准化的处理方式,减少因硬件损坏而对业务造成的影响。虽然这种方式不能根本解决问题,但是也算是起到了一定的作用,如果读者有什么更好的办法,不妨跟我们联系,一同探讨。 
  
    用户感言: 
  
    存储绊了高性能计算的腿 
  
    在采访中,贾亚军坦率地告诉记者,现在国内高性能计算领域的发展呈现出了不平衡的态势。在国内,服务器以及机群技术已经非常成熟,但是与之配套的存储设备却面临很大的问题,计算环境和存储环境的不匹配牵制了高性能计算的发展。 
  
    多不如少 
  
    不了解高性能运算的读者肯定会认为服务器堆得越多,得到结果的速度就越快,但事实并非如此。 
  
    据贾亚军介绍,在系统进行运算的时候,高性能计算所采用的unix或者linux操作系统的瓶颈主要体现在nfs文件系统上,常规的mount链路数会有一定的限制。当这个数量超过一定的级数时,系统的性能反而会更差。 
  
    主要的原因是在nfs文件结构中,数据块的空间一般为4k或者8k,数据在传输中进行打包与拆包所造成的系统性能消耗非常大。 
  
    这种情况好像用卡车运货,每跑一趟,卡车自身重量的移 动做功都会耗油,但真正有效的只是货物的移 动。 
  
    根据研究所实际的测试来看,如果有16台计算节点同时mount一个存储资源的话,系统的性能还能比较稳定。但是如果更多,性能就会出现衰减,出现多服务器比少服务器性能更差的结果。 
  
    与中科院合作找到突破口 
  
    为了解决这个问题,贾亚军带领自己的团队尝试过不少方法,例如对nfs系统进行调优,但是收效甚微。 
  
    经过调优之后,系统的性能仅仅提升了10%左右,而这对于高性能计算而言,顶多能够提前计算出结果1天左右,距离满意仍旧保持一定的差距。 
  
    国外通常采用的方法是将nfs文件系统中的数据包进行分解,把造成系统开销的部分分解出去。 
  
    据贾亚军介绍,在国内也找到了问题的解决者?D?D中科院,所采用的方式也是将nfs系统中的数据包进行分解,采用dnfs(分布式nfs)的方式进行数据传输,使系统消耗得以大幅降低。 
  
    根据在新疆地球物理研究所进行的测试来看,应用了这一技术之后,mount 128个节点群后的i/o性能都能够呈现出线性分布。也就是说,采用了这一技术之后,高性能计算得出结果的时间能够比原来缩短一倍甚至几倍。 
  
    得出这一实际测试结果令贾亚军非常兴奋,目前研究所已经把原有服务器上的das存储系统全部采用了这种技术。并且规划平稳运行一段时间之后,将该项技术推广到整个后台存储系统。 
  
    另外,新疆地球物理研究所也将对其它公司的类似技术,如netapp dass技术、ibm gpss技术和panasas公司相关技术进行测试,选择出更适合的解决办法。 
  
    链 接 
  
    中国石油新疆地球物理研究所 
  
    中国石油新疆地球物理研究所拥有世界先进的sgi超级并行计算机、近百套sgi/sun工作站,是地震勘探资料数据处理、地质综合研究和计算机软、硬件技术开发为一体的高科技单位。1995年被国务院发展研究中心命名为“中国西北地区最大的地震资料处理解释中心”,并载入《中华之最》。 
  
    建所20几年来,中国石油新疆油田分公司地球物理研究所先后多次从国外进行计算机系统、配套设备及其应用软件系统的大规模引进工作。在2004年应用了ibm刀片服务器高性能计算机群后,三维处理能力提高到6000到7000平方公里。(文 / 《中国计算机用户》)