1.2.3 存儲的內部結構
典型的存儲內部結構如圖1-8所示,主要由前端控制器、緩存、后端控制器以及通道組成。
前端控制器也叫通道導向器,主要負責給主機提供通道并處理讀寫請求。主機的寫I/O到達前端控制器的端口后,前端控制器會立即將寫I/O寫入緩存,并立即給主機返回確認信息,從而完成一個寫I/O的過程。
緩存是存儲最關鍵的部分之一。緩存可以分為寫緩存(write cache)和讀緩存(read cache)。所有主機寫入的信息都會先存放在寫緩存當中,寫緩存一般也具有斷電保護,保障寫入數據不丟失。讀緩存主要是存儲主機預讀取的信息。如果將更多信息放入到緩存中,那么無疑整個存儲系統以及主機都會有性能上的提升。
后端控制器主要負責將寫入緩存的數據按照一定的策略規則存入磁盤中,并在前端控制器需要讀取數據時從磁盤中讀取數據,將數據發送給前端控制器,進而由前端控制器將數據發送給主機。
通道對于存儲系統的性能意義重大。主機的讀寫請求數據、存儲系統的控制信息、監控信息都會從不同通道進行傳輸。高端存儲的前端控制器到主機之間,前端控制器與緩存之間,緩存與后端控制器之間,后端控制器與磁盤之間,以及前后端控制器與控制器之間都會有很多通道。通道的帶寬和數量在很大程度上會影響存儲系統的性能。
存儲從物理結構上來看也會有電源、線纜和UPS等組件,如圖1-9所示。存儲為了保證高可靠性,一般最少都會有雙路電源供電。有些高端存儲為了保障斷電情況下,數據不丟失,內部有著很多大容量的UPS。存儲的各部件之間有許多線路進行連接,連接的線一般都是由銅線、光纖、串口線組成。具體選用什么類型的連接線,主要是由不同物理結構的設計特點來決定的。