在一個論壇上找到的虛擬帶庫與陣列的區別的解釋

        一個典型的例子就是卷管理軟件。許多操作系統平臺上都有一種甚至多種卷管理軟件層,常見的有AIX平臺上的Volume Group,Solaris平臺上的Volume Manager,Linux平臺上的LVM等。這些卷管理軟件的功能就是模擬物理磁盤的結構,把多個磁盤組或者多個磁盤條帶組織起來,虛擬成一組統一的數據塊集,這樣操作系統就可以統一而方便的使用所有的磁盤了。這類軟件的工作機制和管理思想,是現今虛擬存儲技術的一個重要組成部分。
說了這麼多,到底什麼是虛擬存儲的確切定義呢?這個問題真是很難回答。原本虛擬存儲技術是作爲存儲管理的一個子集產生的,但是發展到現在,其目的方向已經擴散得非常廣泛。有些部分是爲了提高存儲系統性能,有些部分是爲了提高系統容量,有些部分是爲了改變設備使用方式,有些部分甚至是針對存儲安全發展出來的。如此內容龐雜,頭緒衆多的技術概念,一時間還真是無法精準的描述。

儘管如此,總結一些虛擬存儲的共同特性還是可以做到的。總體上看,雖然虛擬存儲的目標包羅萬象,但是實現手段卻相對集中。我們不妨可以將虛擬存儲技術看作一門武術流派,雖然演練者的目的各不相同,有爲強身健體,有爲報仇雪恨,但是其基本套路卻大致相同。虛擬存儲的套路以“抽象”、“模擬”、“隱藏”和“整合”這四個方面爲主。抽象就是提取各種存儲技術和存儲設備的共性,將多個資源抽象成爲單一資源;模擬就是突破傳統技術的限制,將一種資源模擬成爲另外一種資源;隱藏就是將設備或服務等資源的無關特性細節屏蔽,從而隱藏資源的部分或全部特徵;整合就是通過組織,將不同類型的資源整合成爲一種資源。

現在,我們可以看一看國際存儲工業協會對虛擬存儲這一概念的定義。爲了不帶入筆者的誤解和侷限,這裏引用的是原文。在定義之後,國際存儲工業協會的技術委員會還補充了一個例子,用以進一步補充說明這個頗富詩意的定義,這裏也一併引用了。

Storage Virtualization:

1 - The application of virtualization (q.v.) to storage services, devices or resources that results in storage services, devices or resources.

2 - The act of abstracting, hiding, or isolating the internal function of a storage (sub) system or service from applications, host computers or general network resources.

Example: Using virtualization to provide storage and data management that is transparent to users, applications or network; Using virtualization to group different block storage systems into one or more virtual storage pools.

說實話,這個定義並沒有對虛擬存儲的概念,給出清晰而精準的描述。依照這個定義,許多現有的技術,仍然難以確定是否屬於虛擬存儲領域。這個定義更主要的意義是在於,它爲虛擬存儲概念設定了一個相對固定的範圍。但願各個廠商能夠遵守這一規定範圍,不會將虛擬存儲的概念進一步擴大。

虛擬存儲三大問題

在一個模糊的定義下進一步討論虛擬存儲顯然是十分困難的。爲了言之有物,我們主要討論三個基礎性的問題:

虛擬的對象是什麼?

在什麼位置進行虛擬?

如何虛擬?

第一個問題比較容易回答。虛擬存儲所虛擬的對象就是一些存儲資源,磁盤、磁帶、文件、文件系統、數據塊等等,這些統統包括在內。其虛擬的結果就是虛擬磁盤、虛擬磁帶、虛擬文件、虛擬文件系統、虛擬數據塊等等。可以看出,虛擬存儲的對象並不一定是物理的設備,而可能是一些純邏輯的對象。實際上,虛擬存儲即可以將物理設備虛擬成物理設備,也可以將物理設備虛擬成邏輯對象。

隨着技術的發展,甚至出現了將邏輯對象虛擬成物理設備的技術,例如將一個邏輯分區虛擬成一個物理磁盤。當然,從邏輯對象到邏輯對象的虛擬技術也在發展中,但相對而言,這部分的技術難度較大,而且目前的需求並不十分迫切,所以類似把一個文件系統虛擬成另外一個文件系統之類的技術,進展還非常緩慢。

第二個問題的回答也不困難。虛擬是一個處理過程,這個處理過程一定是在主機和存儲設備之間完成的。那就只可能有三個位置:主機、存儲設備和存儲網絡。事實上是,在三個位置上都有相應的虛擬存儲技術存在,根據處理所在的位置,虛擬存儲技術被分爲“基於主機端的虛擬存儲”、“基於存儲設備的虛擬存儲”以及“基於存儲網絡的虛擬存儲”這三種類型。





其中基於主機端的虛擬存儲,幾乎都是通過純軟件的方式實現的。這種實現機制不需要引入新設備,也不影響現有存儲系統的基本架構,所以實現成本很低。但是其難以克服的困難是平臺依賴性太重,開發商要爲每一種操作系統平臺甚至每一個版本,開發一套軟件產品,其勞動量是可想而知的。而基於存儲設備的虛擬技術雖然有效率高,性能好等特點,但是在現實中,幾乎所有的廠商都只提供對自身產品的支持,其開發性大打折扣。基於存儲網絡的虛擬技術目前還處於起步階段,一些獨立廠商已經涌現出來,這些廠商即不生產主機,也不提供磁盤陣列或磁帶庫等存儲設備,專門提供面對開放存儲網絡的虛擬存儲產品。雖然在現階段這些產品或在性能方面,或在安全性方面,存在一些問題,但是其開放性的優勢是這一類產品得以發展的強大動力所在。

第三個問題看起來也不深奧,但是當我們試圖回答時,卻發現無從說起。實際上這個問題的提出,是爲了引出對虛擬存儲的一個分類標準。根據實現的機制,虛擬存儲可分爲“帶內”和“帶外”兩種基本類型。這兩種類型的區別就在於,實現虛擬的過程是否與正常的數據讀寫過程同時進行。更具體的說,帶內虛擬技術,是在數據讀寫的過程中,在主機到存儲設備的路徑上實現虛擬存儲;而帶外虛擬技術,是在數據讀寫之前,就已經做好了虛擬工作,而且實現虛擬的部分並不在主機到存儲設備的訪問路徑上。因此,帶內虛擬技術也稱爲“同步虛擬”,而帶外虛擬技術自然就稱爲“異步虛擬”。

         打個比方說,如果我們把虛擬過程看作汽車上路的繳費過程,那麼帶內虛擬就相當於在公路上設置收費站,司機不上路就不需要繳費,而一旦上路,就必然要通過收費站,也就是在上路的同時繳費。而帶外虛擬技術像交管所,司機在上路之前就已經在交管所辦理了繳費手續,然後纔可以上路,但是並不一定在繳費之後就馬上上路,而且在公路上飛奔的汽車也不需要穿過交管所。明白了這個蹩腳的比喻,又看了圖示的說明,下面這個結論就很容易得出了:帶內虛擬技術,可能是基於主機實現的,可能是基於存儲設備實現的,當然也可能是基於存儲網絡實現的,而帶外虛擬技術則只能是基於存儲網絡實現
蓬勃發展的虛擬存儲

虛擬存儲技術在3年的時間裏已經取得了堪稱輝煌的成就。其中的磁帶虛擬、磁盤資源管理、跨卷多級管理等技術,已經發展出了一大批相當成熟的產品和解決方案,並逐步完善和豐富着今天的存儲系統。隨着廠商、用戶和技術標準機構各方面,對這一技術方向與日俱增的關注,相信這一領域一定會長出累累的碩果。

http://space.doit.com.cn/html/41/t-36441.html

發表評論
所有評論
還沒有人評論,想成為第一個評論的人麼? 請在上方評論欄輸入並且點擊發布.
相關文章