云存儲(chǔ)想用于存儲(chǔ)非結(jié)構(gòu)化數(shù)據(jù),就需要提供與企業(yè)存儲(chǔ)系統(tǒng)相當(dāng)?shù)撵`活性、性能和生產(chǎn)力。
云存儲(chǔ)具有的成本效益、規(guī)模和可管理性是連最大的企業(yè)數(shù)據(jù)中心都根本無法與之匹敵的。
像AWS、谷歌和Azure這些超大規(guī)模云存儲(chǔ)服務(wù)提供商在去年將價(jià)格降低了多達(dá)65%,承諾將來會(huì)采用遵循摩爾定律的價(jià)格模式,言外之意就是價(jià)格會(huì)一路走低。AWS提供999999999.99%的耐久性,這意味著如果你用亞馬遜S3服務(wù)存儲(chǔ)10000個(gè)對(duì)象,平均而言每10000000年才會(huì)遇到丟失一個(gè)對(duì)象的情況。此外,亞馬遜S3將對(duì)象存儲(chǔ)在多個(gè)數(shù)據(jù)中心的多個(gè)設(shè)備上,旨在經(jīng)受得住數(shù)據(jù)在兩個(gè)數(shù)據(jù)中心同時(shí)丟失的情況。
遺憾的是,就在不久前,云存儲(chǔ)實(shí)際上只適用于平常使用的數(shù)據(jù),而不是適用于實(shí)際用的數(shù)據(jù)。換句話說,云存儲(chǔ)成本低、容量大,卻無法提供本地存儲(chǔ)具有的性能。云存儲(chǔ)想適用于存儲(chǔ)非結(jié)構(gòu)化數(shù)據(jù),它就需要提供與企業(yè)存儲(chǔ)系統(tǒng)相當(dāng)?shù)撵`活性、性能和生產(chǎn)力。成本優(yōu)勢(shì)本身盡管很吸引人,但是光有這一點(diǎn)還不夠。
為了使用云既用于存儲(chǔ)活動(dòng)數(shù)據(jù),又用于存儲(chǔ)非活動(dòng)數(shù)據(jù),一定要讓人覺得它并不遜色于已經(jīng)部署的本地文件管理器。為了這讓成為實(shí)現(xiàn),就必須滿足下列幾大要求:
* 本地緩存:考慮到用戶期望獲得類似局域網(wǎng)的文件訪問時(shí)間,活動(dòng)數(shù)據(jù)需要緩存在本地,而非活動(dòng)數(shù)據(jù)存儲(chǔ)在云端。雖然大多數(shù)數(shù)據(jù)并不是經(jīng)常訪問,非常適合放在云端,但是活動(dòng)數(shù)據(jù)需要仍然靠近用戶。需要采用基于文件使用情況的機(jī)器學(xué)習(xí)、“固定文件夾”或者結(jié)合使用這兩種方法,以確保合適的文件緩存在本地,而不常用的文件放回到云端。
* 全局性重復(fù)數(shù)據(jù)刪除:全局性重復(fù)數(shù)據(jù)刪除確保,只有一個(gè)獨(dú)特的數(shù)據(jù)塊存儲(chǔ)在云端、緩存在本地。由于數(shù)據(jù)塊常常散布于文件上,全局性重復(fù)數(shù)據(jù)刪除可減少存儲(chǔ)在云端的數(shù)據(jù)量以及在云和本地緩存之間發(fā)送的數(shù)據(jù)量,因?yàn)榇鎯?chǔ)和發(fā)送的僅僅是變化的數(shù)據(jù)塊。比如說,當(dāng)美國(guó)藝電公司(Electronic Arts)使用云存儲(chǔ)來集中組織數(shù)據(jù)后,總的存儲(chǔ)占用空間從1.5PB減少至僅僅45TB。在辦公室之間傳輸50GB大小的游戲版本所花的時(shí)間從多達(dá)10個(gè)小時(shí)縮短到短短幾分鐘,因?yàn)閷?shí)際發(fā)送的僅僅是游戲版本的變化部分。
* 類似NAS的響應(yīng)能力:文件目錄瀏覽的響應(yīng)速度必須跟本地NAS一樣迅即。為了做到這一點(diǎn),不僅活動(dòng)數(shù)據(jù)應(yīng)該緩存在本地,所有文件、而不僅僅是緩存文件的元數(shù)據(jù)也必須緩存在所有站點(diǎn)的固態(tài)硬盤上。固態(tài)硬盤必不可少,因?yàn)橛脩艨梢钥吹秸麄€(gè)文件系統(tǒng)中所有文件的完整表示,盡管不到5%的文件緩存在本地。用戶上下瀏覽網(wǎng)絡(luò)驅(qū)動(dòng)器中的文件和文件夾時(shí),一定要讓人“覺得”所有那些文件就在那里。由于一部分文件元數(shù)據(jù)常常與文件名稱一并顯示,文件鎖定對(duì)任何文件來說一定要瞬時(shí)完成,即便沒有緩存在本地,所以元數(shù)據(jù)的訪問要盡可能快。要是沒有緩存中的所有文件元數(shù)據(jù),用戶以為其計(jì)算機(jī)或網(wǎng)絡(luò)運(yùn)行速度緩慢,因?yàn)闉g覽文件夾是最最基本的功能之一。
* 支持“繁瑣累贅”的應(yīng)用程序:應(yīng)用程序跨站點(diǎn)運(yùn)行時(shí)要與在單一站點(diǎn)時(shí)運(yùn)行時(shí)一樣順暢。許多技術(shù)類應(yīng)用程序(CAD、 PLM和BIM)極其繁瑣累贅,通常會(huì)將打開、保存或同步文件的時(shí)間從本地NAS上的不到30秒增加到云端集中后的超過20分鐘。大多數(shù)人以為這是帶寬問題,但實(shí)際上這是由于應(yīng)用程序非常繁瑣累贅。
比如說,一個(gè)常見的CAD應(yīng)用程序有近16000個(gè)順序文件操作需要在打開文件之前進(jìn)行。如果權(quán)威副本在同一個(gè)局域網(wǎng)上,文件鎖只需要0.5毫秒,那樣打開文件要花8秒(16000 x 0.5毫秒)。然而,如果通過廣域網(wǎng)進(jìn)行操作,繁瑣累贅的應(yīng)用程序會(huì)引起嚴(yán)重延遲。如果集中在錫拉丘茲的某個(gè)文件從圣迭戈打開,文件鎖需要86毫秒(從圣迭戈到錫拉丘茲的往返延遲),所以打開文件要花16000 x 86毫秒――大概是22分鐘。實(shí)際的數(shù)據(jù)傳輸所花時(shí)間只是22分鐘的幾分之一而已。
* 數(shù)據(jù)完整性和跨站鎖定。數(shù)據(jù)駐留在文件服務(wù)器上時(shí),我們只要擔(dān)心維護(hù)一個(gè)一致的副本(只要用戶在編輯文件時(shí),文件被鎖定)。當(dāng)數(shù)據(jù)駐留在云端,但是從許多站點(diǎn)訪問時(shí),這種情況發(fā)生了變化。為了避免使用云存儲(chǔ)時(shí)出現(xiàn)文件受損,你需要兩個(gè)機(jī)制:
云端數(shù)據(jù)權(quán)威副本與每個(gè)站點(diǎn)本地緩存副本之間明確分離。即便出現(xiàn)硬件或電力故障,“事務(wù)一致”的文件系統(tǒng)也可以保持文件完整性,而不依賴文件系統(tǒng)檢查或之前的文件版本。這在分布式環(huán)境下保證了數(shù)據(jù)完整性。
跨站點(diǎn)工作的細(xì)粒度組件級(jí)鎖定,可以鎖定文件的一部分,而不是鎖定全部文件。你在跨站點(diǎn)工作時(shí),云不可能是文件鎖數(shù)據(jù)的中介。站點(diǎn)之間需要有直接的連接,確保數(shù)據(jù)最新,并保持高效的字節(jié)級(jí)鎖定。
* 比本地安全更高的安全:尋找四種安全功能,即跨文件系統(tǒng)加密、安全密鑰管理(密鑰根本不該發(fā)送到云端或存儲(chǔ)在云端)、鎖管理與其他安全工具整合,以及符合相關(guān)的安全標(biāo)準(zhǔn),比如FIPS 140-2。
* 可以靈活地更換提供商:你根本不知道何時(shí)可能需要更換云服務(wù)提供商,還記得Nirvanix這家云存儲(chǔ)服務(wù)提供商嗎?你可能還想要使用兩家云提供商,實(shí)際上使用一家作為輔助站點(diǎn)。全局文件系統(tǒng)應(yīng)該支持這兩種場(chǎng)景。
有許多公司已經(jīng)在使用云作為多個(gè)站點(diǎn)的主存儲(chǔ)。比如說,C&S Companies和Mead &Hunt這兩家公司都為分布式項(xiàng)目團(tuán)隊(duì)支持云端的Autodesk Revit和CAD文件;藝電公司跨40個(gè)站點(diǎn)運(yùn)行其密集的軟件開發(fā)應(yīng)用程序,文件數(shù)據(jù)駐留在云存儲(chǔ)中;Milwaukee Electric Tool使用云服務(wù)來存儲(chǔ)其所有文件,不過其動(dòng)機(jī)是需要在美國(guó)和中國(guó)兩地之間協(xié)作處理CAD和視頻文件。
許多復(fù)雜的應(yīng)用程序和數(shù)據(jù)會(huì)繼續(xù)需要本地SAN或NAS,或者需要行為就像本地SAN或NAS的系統(tǒng)。數(shù)據(jù)完全性、應(yīng)用程序類型、文件大小或復(fù)雜性以及其他問題意味著,一些數(shù)據(jù)需要留在企業(yè)組織里面。但是傳統(tǒng)存儲(chǔ)成本高、缺乏靈活性――應(yīng)用程序數(shù)據(jù)跨多個(gè)辦公室共享時(shí)更是如此,阻礙著許多公司。找到一種滿足本文概述的上述要求的云存儲(chǔ)解決方案,有望讓云還能成為主存儲(chǔ)方案;到目前為止,云主要扮演災(zāi)難恢復(fù)、備份和存檔這一類角色。