NAS是一臺服務器,有自己的核心,如CPU、內存、操作系統、磁盤系統,而磁盤陣列只是一個存儲介質。NAS直接接到交換機或集線器上,磁盤陣列接到服務器后端。NAS不依賴于服務器,NAS有自己的文件管理系統,把服務器管理文件的包袱卸掉,提高服務器性能,磁盤陣列沒有自己文件管理系統,完全依托于服務器,當數據流量很大時,給服務器造成的壓力很大,易形成I/O瓶頸,使整個網絡系統性能降低。磁盤陣列技術的出現,是為了提高數據存儲的可靠性。它用效率來換取可靠性。NAS把磁盤陣列技術融合在它的文件系統中,這樣既提高了數據的可靠性,又利用磁盤的并行操作,提高了系統的整體性能。 由上可基本看出NAS比磁盤陣列速度快的原因,下面就讓我們來具體對NAS和磁盤陣列速度做一個比較。
控制普通磁盤的是通用操作系統,如UNIX或NT, 控制磁盤只是其職能中的一部分,I/O操作算法效率不高。而NAS的操作系統是專用的,它只管磁盤I/O,算法效率最高。
通用文件服務器的CPU當進行I/O操作時,系統發生中斷,等待I/O完成后才能恢復應用運行。在有NAS的系統中,應用程序需要進行磁盤I/O操作時,I/O操作由NAS完成,在磁盤I/O操作中最費時間的是寫操作,NAS將寫請求先寫到NVRAM(不掉電內存)中,這個動作完成后,應用程序即可恢復運行,所以要比磁盤陣列速度快得多,不但速度提升,效率也明顯高于磁盤陣列。
磁盤陣列速度慢的根本原因在于磁頭臂的查找是機械動作,所以減少磁頭臂的移動次數是提高效率的關鍵。NAS對磁盤的I/O操作算法,尤其是寫操作,比通用操作系統做了極大的改進,它最大限度地減少了磁頭臂的移動次數。其算法保證磁頭總是停留在一個可寫的位置上,并從這個位置連續寫下去。
通常的RAID(磁盤陣列)系統,對于通用操作系統來說是外加的,是額外負擔。人們使用RAID是為了得到高可靠性,但這是以犧牲一定的系統效率做前提的。NAS的RAID系統是設計在它的專用操作系統中的,它不僅不是額外負擔,相反由于多個磁盤的磁頭臂可以同時并行讀寫,所以I/O速度更高了。