Design and Implementation of a Non-volatile RAM Disk in the SAN Environment
The mechanical nature of the magnetic disks limits the possibility of significant improvement of the I/O performance of the magnetic disk storage systems currently in use. The use of magnetic disk storage system has become an obstacle to the performance development of critical applications. This paper describes an implementation of a remote non-volatile RAM disk (abbreviated as NVDisk) over Fiber Channel network. Read and write latencies are drastically reduced and thus the I/O performance of the storage system is improved by order of magnitudes. We implemented an NVDisk target driver to provide full standard SCSI command set support, so a virtual disk can be constructed for use in the storage area network. NVDisk does not engage the foreground server’s CPU and main memory resources, so it can undertake extremely heavy workloads. In addition, we implemented a Virtual Disk (VD) module in the Linux kernel, which used a memory pool and backup disks to form a virtual transparent appliance and achieved the encapsulation of the ramdisk. With this, snapshot-based online backup mechanisms can be carried out.The whole system was built in the FC SAN environment, so the NVDisk is fine scalable and can be shared easily between servers.
KeywordsStorage System Consistent State Target Node Magnetic Disk Storage Network
Unable to display preview. Download preview PDF.
- 2.Hu, Y.M., Yang, Q.: DCD Disk Caching Disk - A New Approach for Boosting IO Performance. In: The 23rd International Symposium on Computer Architecture, Philadelphia, Pennsylvania, May 22-24 (1996)Google Scholar
- 3.Baker, M., Asami, S., et al.: Non-Volatile Memory for Fast, Reliable File Systems. In: Proceedings of Proceedings of the 5th Symposium on Architecture Support for Programming Languages and Operating Systems, October 1992, pp. 10–22 (1992)Google Scholar
- 4.Dionisios, P., Evangelos, P.M., Maglis, G., Ioannidis, S.: On Using Network RAM as a non-volatile Buffer (1998). Cluster Computing, Special Issue on I/O in Shared-Storage Clusters 2(4), 295–303 (1999)Google Scholar
- 5.Michael, W., Willy, Z.: eNVy - A Non-Volatile, Main Memory Storage System. In: Proceedings of the Sixth Symposium on Architectural Support for Programming Languages and Operating Systems, October 1994, pp. 86–97 (1994)Google Scholar
- 6.Michail, D.F., Evangelos, P.M.: The Network RamDisk - Using Remote Memory on Heterogeneous NOWs. Cluster Computing, Special Issue on I/O in Shared-Storage Clusters 2(4), 281–293 (1999)Google Scholar
- 7.Ethan, L.M., Scott, A.B., Darrell, L.: HeRMES: High-performance reliable MRAMenabled storage. In: Proceedings of the 8th IEEE Workshop on Hot Topics in Operating Systems (HotOS-VIII), Schloss Elmau, Germany, May 2001, pp. 83–87 (2001)Google Scholar
- 8.Desikan, R., Keckler, S.W., Burger, D.: Assessment of MRAM Technology Characteristics and Architectures Technical Report TR-01-36, Department of Computer Sciences, University of Texas at Austin (2001)Google Scholar
- 9.Nathan, K., Ethan, L.M., Karl, S.B.: Measuring the compressibility of metadata and small files for disk/NVRAM hybrid storage systems. Technical Report UCSCCRL- 03-04, Storage Systems Research Center, University of California, Santa Cruz (July 2003)Google Scholar
- 11.Shu, J.W.: Technical Report: Design and Implementation of TH-MSNS (In Chinese), Computer Science Department, Tsinghua University, P.R.China (2003), http://storage.cs.tsinghua.edu.cn/
- 12.Iometer, J.S.: The I/O Performance Analysis Tool for Servers, http://www.intel.com/design/servers/devtools/iometer/index.htm