并行文件系统.docx

上传人:b****2 文档编号:24414248 上传时间:2023-05-27 格式:DOCX 页数:9 大小:22.59KB
下载 相关 举报
并行文件系统.docx_第1页
第1页 / 共9页
并行文件系统.docx_第2页
第2页 / 共9页
并行文件系统.docx_第3页
第3页 / 共9页
并行文件系统.docx_第4页
第4页 / 共9页
并行文件系统.docx_第5页
第5页 / 共9页
点击查看更多>>
下载资源
资源描述

并行文件系统.docx

《并行文件系统.docx》由会员分享,可在线阅读,更多相关《并行文件系统.docx(9页珍藏版)》请在冰豆网上搜索。

并行文件系统.docx

并行文件系统

摘要

并行文件系统的设计并没有统一的标准,但要使并行文件系统真正高效、实用,就需要通过多种途径加以解决。

PVFS设计有如下特点:

实现了单一的文件映像;采用了条带化(stripe)和分区(partition)技术,支持一个文件数据在多个磁盘之上和多个进程之间的分布;提供系统常用命令工具;提供多种应用接口(API);系统具有可伸缩性,即可根据情况,配置不同数量IPO服务节点。

元数据缓存主要工作是分析PVFS元数据访问操作函数,并在计算节点实现一种无一致性问题的元数据缓存。

计算节点缓存的主要工作是分析共享内存的优点,采用共享内存实现缓存。

存储节点缓存的主要工作则是对一种存储节点缓存系统置换算法的研究。

关键字:

并行文件;元数据;计算机节点;存储节点;缓存

摘要I

1引言1

2并行文件系统的发展和现状1

2.1采用大容量高速缓存,显著提高数据传输速度2

2.2多端口并行技术,消除了I/O瓶颈2

2.3逻辑存储单元提供了高速的磁盘访问速度2

2.4成对的HSTD系统的容错性能3

3并行文件系统研究3

3.1节点性能不断进步3

3.2处理器高速发展4

3.3通信机制稳步前进4

4并行文件系统缓存5

4.1元数据缓存6

4.2计算节点缓存7

5结论7

参考文献9

致谢10

 

1引言

随着计算机技术和网络技术的飞速发展,数据量和服务量都呈几何级数爆炸式增长这种增长速度在未来几年内都无法预测。

各大企业及科研机构所配备的服务器在应对剧增的工作负荷时显得越来越力不从心。

大多数企业和机构都无法承受采用传统MPP(MassivelyParallelProcessing)和SMP(SymmetricMultipleProcessor)超级计算机处理业务所需的巨额费用。

集群技术的适时出现为用户提供了一种处理迅速I/0吞吐量高、容错性能好、可靠性高和可扩展性好的新型解决方案。

集群服务器相对于其所能提供的计算能力可以说是非常廉价的。

随着集群在提高可扩展性、提供完全的单一系统映像等方面做的越来越好,集群有可能在不久后取代MPP、SMP等机器。

近年来,集群计算正成为许多领域内的研究热点,广泛的应用于气象、基因数据处理、多媒体、I/O密集型数据库和语音图像识别等研究领域。

集群作为一种并行或分布式处理系统,由很多连接在一起的独立的计算机组成像一个单独集成的计算资源一样协同工作。

集群需要通过一个并行文件系统实现对分布在集群内各节点上的所有文件、设备和网络资源进行全局访问,并且为用户呈现出单一系统映像。

无论数据存储在集群中哪个节点上,任何用户(远程或本地)都可以通过并行文件系统实现访问,甚至在应用程序从一个节点迁移到另一个节点后,应用程序仍然可以透明地访问。

因此为集群系统设计一个高性能的并行文件系统有着非常重大的意义。

2并行文件系统的发展和现状

从20世纪40年代开始的现代计算机发展历程可以分为两个明显的发展时代:

串行计算时代、并行计算时代。

每一个计算时代都从体系结构发展开始,接着是系统软件(特别是编译器与操作系统)、应用软件,最后随着问题求解环境的发展而达到顶峰。

目前,在计算力学领域内,围绕着基于变分原理的有限元法和基于边界积分方程的边界元法,以及基于现在问世的各种并行计算机,逐渐形成了一个新的学科分支——有限元并行计算。

它是高效能的,使得许多现在应用串行计算机和串行算法不能解决或求解不好的大型的、复杂的力学问题能得到满意的解答,故其发展速度十分惊人。

在国际上已经掀起了利用并行机进行工程分析和研究的高潮。

从1975到1995年的二十年间,有关有限元方法和相应的数值并行计算的文章已发表1000余篇。

有限元并行计算正在向两个方向发展。

一是对系统方程组实施并行求解的各种算法。

二是并行分析方法,包括有限元并行算法和边界元并行算法,前者趋向成熟,而后者的研究较少。

对这一方面的研究,是为了挖掘有限元计算自身潜在的并行性,是有限元并行计算的根本问题。

2.1采用大容量高速缓存,显著提高数据传输速度

缓存是存储系统中广泛采用的位于主机与存储设备之间的I/O路径上的中间介质。

当主机从存储设备中读取数据时,会把与当前数据存储位置相连的数据读到缓存中,并把多次调用的数据保留在缓存中;当主机读数据时,在很大几率上能够从缓存中找到所需要的数据。

直接从缓存上读出。

而从缓存读取数据时的速度只受到电信号传播速度的影响(等于光速),因此大大高于从硬盘读数据时盘片机械转动的速度。

当主机向存储设备写入数据时,先把数据写入缓存中,待主机端写入动作停止,再从缓存中将数据写入硬盘,同样高于直接写入硬盘的速度

2.2多端口并行技术,消除了I/O瓶颈

传统的FC存储设备中控制端口与逻辑盘之间是固定关系,访问一块硬盘只能通过控制它的控制器端口。

在对称式虚拟存储设备中,SANAppliance的存储端口与LUN的关系是虚拟的,也就是说多台主机可以通过多个存储端口(最多8个)并发访问同一个LUN;在光纤通道100MB/带宽的大前提下,并行工作的端口数量越多,数据带宽就越高。

2.3逻辑存储单元提供了高速的磁盘访问速度

在视频应用环境中,应用程序读写数据时以固定大小的数据块为单位(从512byte到1MB之间)。

而存储系统为了保证应用程序的带宽需求,往往设计为传输512byte以上的数据块大小时才能达到其最佳I/O性能。

在传统SAN结构中,当容量需求增大时,唯一的解决办法是多块磁盘(物理或逻辑的)绑定为带区集,实现大容量LUN。

在对称式虚拟存储系统中,为主机提供真正的超大容量、高性能LUN,而不是用带区集方式实现的性能较差的逻辑卷。

与带区集相比,PowerLUN具有很多优势,如大块的I/Oblock会真正被存储系统所接受,有效提高数据传输速度;并且由于没有带区集的处理过程,主机CPU可以解除很大负担,提高了主机的性能。

2.4成对的HSTD系统的容错性能

在对称式虚拟存储系统中,HSTD是数据I/O的必经之地,存储池是数据存放地。

由于存储池中的数据具有容错机制保障安全,因此用户自然会想到HSTD是否有容错保护。

象许多大型存储系统一样,在成熟的对称式虚拟存储系统中,HSTD是成对配制的,每对HSTD之间是通过SANAppliance内嵌的网络管理服务实现缓存数据一致和相互通信的。

在SANAppliance之上可方便的连接交换设备,实现超大规模Fabric结构的SAN。

因为系统保持了标准的SAN结构,为系统的扩展和互连提供了技术保障,所以在SANAppliance之上可方便的连接交换设备,实现超大规模Fabric结构的SAN。

3并行文件系统研究

并行计算机是由一组处理单元组成的。

这组处理单元通过相互之间的通信与协作,以更快的速度共同完成一项大规模的计算任务。

因此,并行计算机的两个最主要的组成部分是计算节点和节点间的通信与协作机制。

并行计算机体系结构的发展也主要体现在计算节点性能的提高以及节点间通信技术的改进两方面。

3.1节点性能不断进步

20世纪60年代初期,由于晶体管以及磁芯存储器的出现,处理单元变得越来越小,存储器也更加小巧和廉价。

这些技术发展的结果导致了并行计算机的出现。

这一时期的并行计算机多是规模不大的共享存储多处理器系统,即所谓大型主机。

IBM360是这一时期的典型代表。

到了20世纪60年代末期,同一个处理器开始设置多个功能相同的功能单元,流水线技术也出现了。

与单纯提高时钟频率相比,这些并行特性在处理器内部的应用大大提高了并行计算机系统的性能。

伊利诺依大学和Burroughs公司此时开始实施IlliacⅣ计划,研制一台64颗CPU的SIMD主机系统,它涉及到硬件技术、体系结构、I/O设备、操作系统、程序设计语言直至应用程序在内的众多研究课题。

不过,当一台规模大大缩小的原型系统(仅使用了16颗CPU)终于在1975年面世时,整个计算机界已经发生了巨大变化。

首先是存储系统概念的革新,提出虚拟存储和缓存的思想。

以IBM360/85和IBM360/91为例,两者是属于同一系列的两个机型,IBM360/91的主频高于IBM360/85,所选用的内存速度也较快,并且采用了动态调度的指令流水线。

但是,IBM360/85的整体性能却高于IBM360/91,惟一的原因就是前者采用了缓存技术,而后者则没有。

其次是半导体存储器开始代替磁芯存储器。

最初,半导体存储器只是在某些机器中被用作缓存,而CDC7600则率先全面采用这种体积更小、速度更快、可以直接寻址的半导体存储器,磁芯存储器从此退出了历史舞台。

与此同时,集成电路也出现了,并迅速应用到计算机中。

元器件技术的这两大革命性突破,使得IlliacⅣ的设计者们在底层硬件以及并行体系结构方面提出的种种改进都大为逊色。

3.2处理器高速发展

1976年Cray-1问世以后,向量计算机从此牢牢地控制着整个高性能计算机市场15年。

Cray-1对所使用的逻辑电路进行了精心的设计,采用了我们如今称为RISC的精简指令集,还引入了向量寄存器,以完成向量运算。

这一系列技术手段的使用,使Cray-1的主频达到了80MHz。

微处理器随着机器的字长从4位、8位、16位一直增加到32位,其性能也随之显著提高。

正是因为看到了微处理器的这种潜力,卡内基梅隆大学开始在当时流行的DECPDP-11小型计算机的基础上研制一台由16台PDP-11/40处理机通过交叉开关与16个共享存储器模块相连接而成的共享存储多处理器系统C.mmp。

从20世纪80年代开始,微处理器技术一直在高速前进。

稍后又出现了非常适合于SMP方式的总线协议。

而伯克利加州大学则对总线协议进行了扩展,提出了Cache一致性问题的处理方案。

从此,C.mmp开创出的共享存储多处理器之路越走越宽。

现在,这种体系结构已经基本上统治了服务器和桌面工作站市场。

3.3通信机制稳步前进

同一时期,基于消息传递机制的并行计算机也开始不断涌现。

20世纪80年代中期,加州理工学院成功地将64个i8086/i8087处理器通过超立方体互连结构连结起来。

此后,便先后出现了InteliPSC系列、INMOSTransputer系列,IntelParagon以及IBMSP的前身Vulcan等基于消息传递机制的并行计算机。

20世纪80年代末到90年代初,共享存储器方式的大规模并行计算机又获得了新的发展。

IBM将大量早期RISC微处理器通过蝶形互连网络连结起来。

人们开始考虑如何才能在实现共享存储器缓存一致的同时,使系统具有一定的可扩展性。

20世纪90年代初期,斯坦福大学提出了DASH计划,它通过维护一个保存有每一缓存块位置信息的目录结构来实现分布式共享存储器的缓存一致性。

后来,IEEE在此基础上提出了缓存一致性协议的标准。

20世纪90年代至今,主要的几种体系结构开始走向融合。

属于数据并行类型的CM-5除大量采用商品化的微处理器以外,也允许用户层的程序传递一些简单的消息。

CrayT3D是一台NUMA结构的共享存储型并行计算机,但是它也提供了全局同步机制、消息队列机制,并采取了一些减少消息传递延迟的技术。

随着微处理器商品化、网络设备的发展以及MPI/PVM等并行编程标准的发布,集群架构的并行计算机出现开始。

IBMSP2系列集群系统就是其中的典型代表。

在这些系统中,各个节点采用的都是标准的商品化计算机,它们之间通过高速网络连接起来。

4并行文件系统缓存

文件系统缓存是一种尽量减少文件系统访问磁盘次数的机制,用提高文件系统性能的方法来弥补磁盘性能的不足。

缓存设计遵循了计算机系统设计的最广泛的准则——加快经常性事件,基本思想是将应用程序所需的文件块保存在内存中。

这样,被请求的文件块只有在第一次被访问时需要从磁盘中读取,以后的访问就可以直接从缓存中读取,读操作的性能因此得到了大幅度提高。

此外,由于被应用程序修改后的数据块只需保存在缓存中,由系统在适当时候再将它们写回磁盘,写操作的性能也因此得到了提高。

与本地文件系统把数据存储在本地磁盘上不同,并行文件系统把数据最终存储在远端磁盘上,并行文件系统的数据检索层次也因此与本地文件系统不同,计算节点缓存、存储节点缓存和存储节点磁盘构成了并行文件系统的三级检索和存储层次。

计算节点把访问过的数据块缓存在本地内存中,力求减少应用程序访问存储节点的次数,将网络通信开销降至最低。

集群中众多的存储节点都有自己的主存,并行文件系统在存储节点上实现缓存,可以进一步推迟对低速磁盘的访问。

并行文件系统同样也可以把文件的元数据缓存起来,实现元数据的高速访问。

不过,在没有非常严格的一致性保证策略情况下,多数并行文件系统都不在计算节点上实现元数据缓存。

4.1元数据缓存

元数据是文件系统中最为重要的特征信息,应用进程对元数据的操作非常频繁。

实现高速元数据访问是提高文件系统性能的关键因素之一。

在计算节点上建立元数据缓存可以有效减少访问元数据服务器带来的大量网络通信开销。

对于分布式环境中的并行文件系统,元数据管理是管理数据的关键。

首先,元数据是最重要的系统数据。

应用程序在访问一个文件的数据之前,首先需要定位数据的存储位置。

在并行文件系统中用户在访问一个文件时,首先向元数据服务器发出请求,元数据服务器把要访问的文件的元数据应答给用户。

用户在元数据中获取文件所在的存储节点位置信息,从而可以和这些存储节点建立起连接。

因此从系统稳定性和可靠性的角度来说,文件元数据的正确性和可靠性是至关重要的。

其次,元数据文件的访问速度影响着整个文件系统的访问性能。

在并行文件系统中,对元数据的访问是非常频繁的。

用户对文件的任何操作都需要事先访问文件的元数据,对文件所做出的系统的性能非常重要。

提高元数据访问的速度有两种方法。

一种是提高元数据的管理效率。

例如改进元数据的存储方式,变集中式元数据管理方式为分布式元数据管理方式,即在系统中设立多个互为镜像的元数据服务器。

这样,这些服务器既可以同时向不同的用户提供服务,以避免单个元数据服务器造成的访问瓶颈;同时由于这些元数据服务器互为镜像,也可以提高元数据的可靠性。

另一种方式是简化元数据的访问网络协议。

在并行文件系统中,元数据存放在元数据服务器上由元数据服务器统一管理,用户需要与元数据服务器进行网络通信来获取元数据。

因此过于复杂的元数据访问网络协议会严重影响元数据的访问速度,从而成为系统的又一个性能瓶颈。

在计算节点建立元数据缓存是简化元数据访问协议的方法之一。

文件的元数据本身占用的空间并不大,通常一个文件的元数据所占用的空间大概只有一百个字节到两百个字节,因此,在计算节点建立元数据缓存并不会占用太大的内存空间。

当应用程序访问一个文件时,首先试图从本地元数据缓存中获取被访问文件的元数据,一旦命中,将无需与元数据服务器进行网络通信,即使没有命中由于访问本地内存的速度远高于网络带宽,对于系统性能也不会造成太大的影响。

4.2计算节点缓存

计算节点是实现文件系统缓存的最直接、效果最明显的位置。

计算节点缓存的命中直接消除了计算节点到存储节点间的网络消耗,对系统性能的提高是最明显的。

在计算节点上实现文件系统缓存是最直接,效果也是最明显的。

计算进程可以直接从本地缓存中获取数据,从而可以省略计算节点与存储节点之间的通信开销,尽可能的推迟对存储节点磁盘的访问。

共享内存是最有效率的进程间通信方式,也是进程间最快的通信方式,使用共享内存方式进行通信,可以省略至少两次进程间的内存拷贝。

采用共享内存实现文件系统计算节点缓存,应用进程在映射共享内存空间之后,可以像自己的内存空间一样直接访问共享内存缓存,实现同一计算节点上多个进程对缓存数据的共享,这种共享称为节点内的缓存合作。

5结论

并行文件系统具有单一文件映像,采用条带化(stripe)和分区(partition)技术,提供系统常用命令工具,提供多种应用接口(API),系统具有可伸缩性。

本文对并行文件系统缓存技术进行了初步研究,但还不够充分。

⑴访问组的统计算法。

明确访问组统计求解公式中具体应用与参数的取值之间的关系,这将是下一步研究的重点。

⑵缓存预取策略。

文件系统缓存并不能提高数据块首次被访问的速度,预取策略有助于解决这个问题。

⑶探讨缓存的其他实现方法。

磁盘与主存是两种矛盾的存储层次:

磁盘容量大、安全,但速度慢;主存则高速,但容量小且不安全。

因此可以找寻介于两者之间的存储介质来实现缓存。

闪存就是一种这样的存储设备,并且闪存特别有利于实现元数据缓存,这就需要研究闪存的存储特性,文件系统与闪存之间的底层接口特性等。

展开阅读全文
相关资源
猜你喜欢
相关搜索

当前位置:首页 > 农林牧渔 > 林学

copyright@ 2008-2022 冰豆网网站版权所有

经营许可证编号:鄂ICP备2022015515号-1