HDD, SSD & RAMSAN

首先先來談談 RAMSAN 這個歷史產物好了。這間客戶應該是在多年前(七年以前)開始使用 RAMSAN 這個產品,遙想一下當年的歷史背景,HDD 不夠快,SSD 不成熟又貴 (可靠度應該不怎麼樣),所以就引進了 RAMSAN 這樣子的產品。真要認真分類的話,RAMSAN 應該算是 SSD 的一種,只是 SSD 是以 Flash memory 作為儲存空間,而 RAMSAN 則是以 RAM 作為儲存空間 (不過近年來他也有 SSD 的產品線,所以 RAMSAN 是專指 RAM 或 Flash 的 SSD Storage 要深究也沒什麼特別意義了,不過本文中提到的 RAMSAN 就專指這類用 RAM 堆起來的 SAN)。

一台典型的 RAMSAN 長得像這個樣子:

1

也許你有看到前面有四個硬碟插槽,不過那只是備份用的。一台 RAMSAN 的主要元件有:記憶體、電池 (鉛酸電池)、主機板、Power Supply 和 Fiber channel card。看到電池兩個字,大家可能就想到了,這個 RAMSAN 是要靠電池來維持安全的,身為一台昂貴且號稱是企業級應用的硬體,一旦斷電時,RAMSAN 就可以靠電池供電來把記憶體內的資料儲存當前面板的四台硬碟中,想當然爾,RAMSAN 開機時就會把這硬碟裡的資料寫回到記憶體裡頭。所以儘管是正常的開機關機,RAMSAN 所耗費的時間也要比一般的伺服器要來得長很多。

由於出品 RAMSAN 的這間 Texas Memory Systems 公司已於 2012 年被 IBM 併購,對 RAMSAN 這產品有進一步興趣的 (至少人家還有繼續在出 SSD 的機種),可以自己去 Google 看看。

稍微有點 IT 背景的人應該都知道,RAM 再怎麼慢還是比 Flash 快上一大截,那為何又說 RAMSAN 是個歷史的產物呢?讓我們先看一份資料:

Type HDD Mix HDD & SSD SAS SSD RAMSAN Flash SSD RAMSAN RAM SSD
Config 14 HDDsRAID 10 14 RAID 101 SAS SSD CacheCade 4 SLC SSDRAID 10 RamSan-720SLC RamSan 440DDR2
IOPS 5.5K IOPS 20.45K IOPS 76.27K IOPS 500K R/W IOPS 600K R/W IOPS
Capacity ~ ~ ~ 6-12TB 512GB (maximum)

猛一看,哇,RAMSAN 的 RAM 機種真是強大啊,IOPS 可以到 600K (600,000),用 4 個 SLC SSD 做 RAID 10 也才只能到 76.27K IOPS,用 14 顆硬碟去做 RAID 10 才只有 5.5K,真的是 xx 比雞腿,但仔細看一下他的容量,啥,最大只能到 512GB,有沒有搞錯?現在我連隨身硬碟也就已經是 1TB 起跳的年代了,512GB 是要拿來裝什麼。

沒錯,這就是他的致命傷了,你也不要小看他只有 512GB 的容量,他的身價可能要超過他的 SSD 同門小弟 – RAMSAN 720。這麼貴,容量又小,那唯一可以看的就是速度了吧?對,沒錯,就是速度上快了一截,但… 各位有幹過 DBA 的去 monitor 一下貴公司資料庫硬碟的  IOPS 看看好了,誰需要這麼快的速度?就連我們自己去監控客戶線上 RAMSAN 的速度,也離極限有很大的距離。

在當年那個 SSD 又貴又沒有可靠度的環境下,當 HDD 的速度跟不上的時候,用 RAMSAN 大概是個明智的抉擇,不過隨著 SSD 的不斷進步,價格不斷的下降,RAMSAN 這個原本就存活於利基市場的產品的市場就越來越小了。君不見連他自己現在都不產 RAM 做的 RAMSAN 了,就可以知道目前的的市場需求有多小了。

除了市場需求面太小之外,現在也跑出很多類似功能的的解決方案出來,例如 SQL Server 2014 的 In-Memory OLTP,或是 SAP HANA,更別說是現在的 Non-relational database 這種根本不同型態的資料庫應用,雖然都或少或多的需要針對應用系統進行修改,但從價格/效益比來看,只能說 RAMSAN 真是時代的眼淚了(至少 2015 年的現在看起來是這樣子)。

2022/08/22 更新:今天看到 Samsung 990 PRO Gen 5 M.2 SSD 發表的消息,規格上的 IOPS 已經達到 2,500K 了,容量也是 1TB 起跳(沒看到是 Read or Write IOPS),距離我當初寫這篇文章也才 7 年,SSD 就進步成這樣子了。