尽管网络存储器由可变的存储器组成,但由于它分布在许多独立的工作站上,所以能提供较好的数据可靠性,如果一台工作站崩溃了,存在其他工作站内存中的数据依然完整,通过某种形式的冗余,如数据复制,可以重构崩溃工作站内存中的数据。
4 网络存储器的性能分析
网络存储器有杰出的性价比。表l是一个有100台工作站、20微秒延迟和15兆字节/秒带宽的工作站网络的存储器各层次性能表。假设集群中至少有50%的网络存储器是空闲的,可看出网络存储器比硬盘性能好得多,比本地内存甚至硬盘容量大得多,而实际上几乎没有什么成本。这种性价比使得网络存储器成为一个非常好地解决计算机系统I/O性能瓶颈的可行方案。
5 网络存储器的设计方法
根据网络存储器的不同应用形式,网络存储器的设计方法可以分为以下三种:
1)网络存储器调页:由于网络存储器性能介于硬盘与本地内存之间,因此在存储器层次关系中,可以看作是硬盘和本地内存之间的一个中间层。这个附加的存储层将给应用程序带来好处,因为网络存储器的页交换速度比硬盘快,所以总的访问内存时间就会小很多。
2)网络存储器文件系统
a)网络存储器作为文件缓存:在集群工作站中,网络文件系统在多个工作站上运行,当许多工作站通过文件系统如VFS访问相同文件时,文件就会被高速缓冲到多个客户机上,形成多个缓冲副本,浪费了缓存空间。为了提高文件缓存的调度,在各个工作站已有一个本地文件缓存的情况下,创建一个全局网络存储文件系统缓存相当重要。这种本地缓存统一成为一个全局缓存,增强文件缓存性能的技术叫做协作缓存。采用协作缓存技术,缓存所有本地协调交换信息,从而可以消除缓存文件副本,在必要时也可以共享内容。
b)网络存储器作为存储设备:另一种解决磁盘I/0性能问题的方法是使用可靠的网络存储器来直接存储临时文件。采用这种方法的设备,称为网络随机磁盘Network RamDisk(NRD)。NRD是块设备,它通过虚拟磁盘接口统一了N0W中所有空闲的主存,它像一个传统磁盘,允许在上面创建文件和文件系统,由于它是在主存RAM中实现的,因而提供了比大多数传统磁盘低的延迟和高的带宽。
3)网络存储器数据库:网络存储器可以作为一个大的(分布式的)数据库高速缓存和作为一个快速的非易变数据缓存来存放数据库敏感数据。事务处理虽然在原子性和可恢复性方面已得到好的评价,但由于大多数基于事务处理的系统要存储大量的数据,因此性能受到限制。使用网络存储器能将基于事务的系统性能与磁盘性能分开,从而增强系统性能。对事务处理系统的开发原型进行实验测试显示:网络存储器的应用可以提高两个数量级的性能。
6 结束语
网络存储器设计方法的基本思想就是尽量使用网络存储器来代替磁盘访问,用以提高系统I/O性能。这些设计方法可在一般硬件上用软件来开发。除此之外,有许多硬件组件,如SCI、Telegxaphs和SHRIMP,提供了特别的原始操作,增强了网络存储器系统的性能。网络存储器技术使用网络空闲内存作为存储介质,改变了传统的计算机系统I/O访问的层次结构,提供了远远高于磁盘的访问速度,具有良好的应用前景。