當(dāng)今社會是一個(gè)數(shù)據(jù)社會,從2010 年開始,全球數(shù)據(jù)總量已經(jīng)進(jìn)入ZB 時(shí)代,隨著視頻監(jiān)控向高清化、智能化的發(fā)展,隨著移動互聯(lián)網(wǎng)和物聯(lián)網(wǎng)的興起,由各類傳感器產(chǎn)生的數(shù)據(jù)量和數(shù)據(jù)種類正在加速增長,根據(jù)IDC 監(jiān)測,全球數(shù)據(jù)量大約每18 個(gè)月就會翻一番(這大概也可以稱之為數(shù)據(jù)摩爾定律吧),預(yù)計(jì)到2020 年,全球數(shù)據(jù)量將達(dá)到或超過40ZB,人類社會正處于一個(gè)數(shù)據(jù)爆炸的時(shí)代,或者大數(shù)據(jù)時(shí)代,對這些海量數(shù)據(jù)的存儲、管理和利用,促進(jìn)了云計(jì)算技術(shù)的發(fā)展,而云存儲作為云計(jì)算概念的一種具體表現(xiàn)形式,也得到了極大的發(fā)展。
相對傳統(tǒng)存儲而言,云存儲改變了數(shù)據(jù)垂直存儲在某一臺物理設(shè)備的存放模式,通過寬帶網(wǎng)絡(luò)(比如萬兆以太網(wǎng)或Infiniband技術(shù))集合大量的存儲設(shè)備,通過存儲虛擬化、分布式文件系統(tǒng)等技術(shù)將位于各單一存儲設(shè)備上的物理存儲資源統(tǒng)一管理,構(gòu)成邏輯上統(tǒng)一的存儲資源池對外提供服務(wù),從而在存儲容量上得以從單設(shè)備PB 級擴(kuò)展至數(shù)十PB乃至數(shù)百PB,并且,由于云存儲系統(tǒng)中的各節(jié)點(diǎn)能夠并行提供讀寫訪問服務(wù),系統(tǒng)性能隨著業(yè)務(wù)節(jié)點(diǎn)的增加而獲得顯著提升。同時(shí),通過數(shù)據(jù)冗余編碼技術(shù)、業(yè)務(wù)快速接管技術(shù),提供相對傳統(tǒng)存儲設(shè)備更高的系統(tǒng)可用性。容量和性能的可擴(kuò)展性、系統(tǒng)高可用性,是云存儲系統(tǒng)最核心的技術(shù)特征。
通常,從云存儲的技術(shù)實(shí)現(xiàn)層次上看,從底層向上,可以分為存儲層、管理調(diào)度層、訪問接口層、業(yè)務(wù)應(yīng)用層等四個(gè)層次,如上圖所示:

云存儲技術(shù)實(shí)現(xiàn)層次
其中存儲層是云存儲的基礎(chǔ),存儲設(shè)備可以是FC 光纖通道設(shè)備,也可以是基于IP的ISCSI 存儲設(shè)備或者NAS 系統(tǒng),在一個(gè)云存儲系統(tǒng)中,底層物理存儲設(shè)備數(shù)量龐大,而且設(shè)備形態(tài)理論上也允許異構(gòu),在物理存儲設(shè)備之上是一個(gè)統(tǒng)一的存儲設(shè)備管理層,實(shí)現(xiàn)對物理存儲設(shè)備的邏輯虛擬化管理、狀態(tài)監(jiān)控和維護(hù)等功能。
管理調(diào)度層是云存儲最核心的部分,這一層次協(xié)調(diào)各底層存儲設(shè)備實(shí)現(xiàn)對數(shù)據(jù)的多副本或冗余編碼計(jì)算、分散存儲、負(fù)載均衡等功能,在常見的云存儲系統(tǒng)中,通常采用分布式文件系統(tǒng)或者對象存儲來實(shí)現(xiàn)。不過,在具體實(shí)現(xiàn)時(shí),該層的功能也可能上移,位于訪問接口層和應(yīng)用服務(wù)層之間,甚至直接嵌入到業(yè)務(wù)應(yīng)用層中,和業(yè)務(wù)應(yīng)用緊密結(jié)合,形成業(yè)務(wù)專用云存儲。
訪問接口層是業(yè)務(wù)應(yīng)用和云存儲平臺之間的一個(gè)橋梁,提供應(yīng)用服務(wù)所需要調(diào)用的函數(shù)接口,由于云存儲系統(tǒng)往往需要支持多種不同的業(yè)務(wù)系統(tǒng),往往需要提供多種訪問接口,例如ISCSI、NFS、CIFT、FTP、REST 等。
業(yè)務(wù)應(yīng)用層通過云存儲系統(tǒng)提供的各種訪問接口,對用戶提供豐富的業(yè)務(wù)類型,例如公有云存儲提供的網(wǎng)盤服務(wù)、數(shù)據(jù)歸檔服務(wù)、高清視頻監(jiān)控服務(wù)等。部分云存儲系統(tǒng)也會在這一層實(shí)現(xiàn)管理調(diào)度層的功能,將業(yè)務(wù)數(shù)據(jù)的冗余編碼、分散存儲、負(fù)載均衡、故障保護(hù)等功能和各種業(yè)務(wù)的實(shí)現(xiàn)緊密結(jié)合,提供非常極具特色的業(yè)務(wù)應(yīng)用,和云存儲系統(tǒng)的核心功能在管理調(diào)度層實(shí)現(xiàn)的通用云存儲相對應(yīng),此類云存儲系統(tǒng)的核心功能在應(yīng)用層實(shí)現(xiàn),可以歸類為應(yīng)用云存儲,例如宇視公司的視頻監(jiān)控云存儲CDS(Cloud DirectStorage)解決方案,可以為用戶提供極其豐富的視頻監(jiān)控業(yè)務(wù)。
CDS 解決方案繼承了宇視科技視頻ISCSI塊直存高性能的優(yōu)點(diǎn),采用宇視最先進(jìn)的裸數(shù)據(jù)存儲技術(shù),可極大程度發(fā)揮存儲設(shè)備讀寫性能,實(shí)現(xiàn)云存儲中的秒級檢索和回放,通過采用標(biāo)準(zhǔn)的IPSAN 設(shè)備,通過CDV 存儲虛擬化組件,構(gòu)成全局統(tǒng)一的虛擬存儲空間,系統(tǒng)支持海量的云存儲節(jié)點(diǎn)管理能力,可管理高達(dá)2048 個(gè)存儲節(jié)點(diǎn),支持動態(tài)擴(kuò)容和縮容,通過云存儲管理服務(wù)器對物理存儲資源進(jìn)行實(shí)時(shí)動態(tài)監(jiān)控,支持節(jié)點(diǎn)間負(fù)載均衡和故障業(yè)務(wù)重新調(diào)度,提供不間斷的視頻和圖片存儲服務(wù)。同時(shí)也能提供視頻實(shí)況、視頻點(diǎn)播回放、報(bào)警管理、布防撤防、地圖應(yīng)用等多種視頻業(yè)務(wù)。
應(yīng)用云存儲和業(yè)務(wù)深度結(jié)合,針對業(yè)務(wù)特點(diǎn)選擇適合的存儲模式,往往能提供非常優(yōu)異的業(yè)務(wù)訪問性能,但通常各廠家實(shí)現(xiàn)方式各有不同,難以互通或者供第三方開發(fā)新的數(shù)據(jù)處理業(yè)務(wù),因此,應(yīng)用云存儲系統(tǒng)比較適合業(yè)務(wù)種類較少,業(yè)務(wù)模型相對固定的應(yīng)用場合。而一個(gè)云存儲系統(tǒng)中,不僅會存儲海量的數(shù)據(jù),而且需要對這些數(shù)據(jù)進(jìn)行分析和利用,這往往需要集合多個(gè)專業(yè)廠商來進(jìn)行各自擅長領(lǐng)域的業(yè)務(wù)開發(fā),因此,系統(tǒng)的開放性、接口的標(biāo)準(zhǔn)化,則成為云存儲系統(tǒng)建設(shè)的重要需求,在這種云存儲系統(tǒng)中,由管理調(diào)度層實(shí)現(xiàn)的云存儲的核心功能則直接在存儲層之上實(shí)現(xiàn),再通過訪問接口層為業(yè)務(wù)平臺提供通用的訪問接口,如ISCSI塊存儲訪問接口、POSIX 文件訪問接口、RESTFUL 接口等,而業(yè)務(wù)應(yīng)用開發(fā)則無需再考慮數(shù)據(jù)冗余、分散存儲、負(fù)載均衡等存儲專屬特性,而集中在業(yè)務(wù)應(yīng)用本身的功能特性方面,例如視頻監(jiān)控系統(tǒng)中的智能識別、卡口計(jì)數(shù)等,這種云存儲系統(tǒng)與具體的應(yīng)用耦合程度較低,具有更好的通用性,可以認(rèn)為是一種通用云存儲。目前通用云存儲的應(yīng)用主要以分布式文件系統(tǒng)和對象存儲的方式出現(xiàn),由于人類發(fā)展過程中產(chǎn)生的數(shù)據(jù)絕大部分都是以文件形式存在,因此云存儲系統(tǒng)以分布式集群文件系統(tǒng)的方式出現(xiàn)是一個(gè)必然的選擇,而隨著寬帶移動互聯(lián)網(wǎng)、WEB 技術(shù)的發(fā)展,對象存儲系統(tǒng)也越來越多地出現(xiàn)在網(wǎng)盤、數(shù)據(jù)歸檔等應(yīng)用中。
在一個(gè)通用云存儲系統(tǒng)中,都需要通過橫向擴(kuò)展存儲節(jié)點(diǎn)來解決大量數(shù)據(jù)的存儲容量和讀寫訪問性能問題,而其中最關(guān)鍵的問題,是解決記錄數(shù)據(jù)邏輯位置和物理位置之間的映像關(guān)系的可靠性存儲和高性能訪問問題,也就是元數(shù)據(jù)的存儲與訪問問題,當(dāng)然,元數(shù)據(jù)還記錄著文件或者對象的訪問權(quán)限、屬性、訪問時(shí)間等其他信息。元數(shù)據(jù)的處理好壞,將極大地影響系統(tǒng)的整體性能和可擴(kuò)展性。一般而言,根據(jù)對元數(shù)據(jù)的管理模型,可以將通用云存儲系統(tǒng)分為三種類型,即集中式元數(shù)據(jù)、分布式元數(shù)據(jù)和無元數(shù)據(jù)三種類型的系統(tǒng)。
集中式元數(shù)據(jù)云存儲系統(tǒng)是一種典型的非對稱式系統(tǒng),在系統(tǒng)中,通常具有一個(gè)中央元數(shù)據(jù)管理服務(wù)器,負(fù)責(zé)元數(shù)據(jù)的存儲和處理查詢與修改請求,例如,在HDFS 系統(tǒng)中,該元數(shù)據(jù)管理服務(wù)器即為名字節(jié)點(diǎn)Namenode,同時(shí),存在大量的數(shù)據(jù)存儲節(jié)點(diǎn)提供客戶I/O數(shù)據(jù)的并行存儲與訪問。這種架構(gòu)中,客戶端每次對數(shù)據(jù)流的I/O 操作,都需要先向元數(shù)據(jù)管理服務(wù)器進(jìn)行元數(shù)據(jù)查詢,客戶端在獲得需要讀寫的數(shù)據(jù)塊物理位置等信息后,對于數(shù)據(jù)的I/O 操作則直接在客戶端和數(shù)據(jù)存儲節(jié)點(diǎn)之間進(jìn)行。相對傳統(tǒng)存儲系統(tǒng),集中元數(shù)據(jù)云存儲系統(tǒng)將控制流和數(shù)據(jù)流進(jìn)行了分離,系統(tǒng)在擴(kuò)展性和處理性能方面獲得了較大的提升,同時(shí),由于元數(shù)據(jù)集中在一臺服務(wù)器上進(jìn)行管理,整個(gè)系統(tǒng)架構(gòu)比較簡單,降低了系統(tǒng)設(shè)計(jì)的復(fù)雜性,目前業(yè)界采用這種架構(gòu)的系統(tǒng)主要有GFS、HDFS、Lustre 等。
不難看出,雖然集中元數(shù)據(jù)云存儲系統(tǒng)架構(gòu)簡單,但會存在兩個(gè)主要的問題:
性能瓶頸問題。元數(shù)據(jù)的基本特性要求任何時(shí)候?qū)τ脩魯?shù)據(jù)的訪問,都需要同步地修改元數(shù)據(jù),例如,即使是對文件進(jìn)行讀操作或者列出目錄操作,都需要更新元數(shù)據(jù)中的文件訪問時(shí)間屬性。由于每次I/O 訪問都需要首先訪問元數(shù)據(jù)服務(wù)器,以便實(shí)現(xiàn)對系統(tǒng)命名空間進(jìn)行解析、數(shù)據(jù)定位和訪問對象權(quán)限控制等,然后才能夠?qū)τ脩魯?shù)據(jù)進(jìn)行I/O 操作,隨著系統(tǒng)規(guī)模不斷擴(kuò)大,需要管理的存儲節(jié)點(diǎn)、文件數(shù)量、I/O 操作數(shù)量等都會急劇增加,而對元數(shù)據(jù)進(jìn)行管理的物理服務(wù)器性能有限,從而形成性能瓶頸,這種性能瓶頸在大量小文件訪問時(shí)會更為突出。為解決這一問題,人們通常會采用更高性能的CPU,并且采用SSD 來加速對元數(shù)據(jù)的訪問,雖然能夠在一定程度上提升元數(shù)據(jù)訪問性能,但往往成本高昂,且提升效果有限,系統(tǒng)性能隨存儲節(jié)點(diǎn)數(shù)量增加只能呈現(xiàn)對數(shù)方式提升而無法線性提升。
元數(shù)據(jù)服務(wù)器單點(diǎn)故障問題。在集中元數(shù)據(jù)云存儲系統(tǒng)中,整個(gè)系統(tǒng)的性能和可靠性完全依賴于元數(shù)據(jù)服務(wù)器,一旦元數(shù)據(jù)服務(wù)器故障,系統(tǒng)將無法提供任何服務(wù),因此,元數(shù)據(jù)服務(wù)器就是整個(gè)系統(tǒng)中的潛在單點(diǎn)故障點(diǎn)。為解決這一問題,通常對元數(shù)據(jù)服務(wù)器采用備機(jī)形成HA 解決方案來提供更高的系統(tǒng)可用性,一旦主用元數(shù)據(jù)服務(wù)器故障,備用元數(shù)據(jù)服務(wù)器可以替代主用服務(wù)器提供對元數(shù)據(jù)的訪問操作,主用服務(wù)器和備用服務(wù)器之間的元數(shù)據(jù)必須隨時(shí)同步,否則一旦主用服務(wù)器故障,則可能導(dǎo)致數(shù)據(jù)不一致問題,但元數(shù)據(jù)同步操作會進(jìn)一步加重了元數(shù)據(jù)服務(wù)器的性能負(fù)擔(dān),導(dǎo)致整個(gè)系統(tǒng)的訪問性能受到拖累。
為了解決集中元數(shù)據(jù)系統(tǒng)中的性能瓶頸和單點(diǎn)故障問題,一種改進(jìn)后的分布式元數(shù)據(jù)云存儲系統(tǒng)得以出現(xiàn),這種系統(tǒng)采用多臺元數(shù)據(jù)服務(wù)器形成集群工作的方式提供元數(shù)據(jù)訪問服務(wù),集群中的每一臺設(shè)備都可以提供元數(shù)據(jù)訪問,從而提高整體訪問性能,并且解決了元數(shù)據(jù)服務(wù)器單點(diǎn)故障問題。在實(shí)際設(shè)計(jì)中,分布式元數(shù)據(jù)服務(wù)器通常和數(shù)據(jù)存儲節(jié)點(diǎn)集成到一起,形成全對稱分布式架構(gòu),EMC 公司的Isilon OneFS 是這一架構(gòu)的典型代表。
分布式云存儲系統(tǒng)需要在所有元數(shù)據(jù)存儲節(jié)點(diǎn)之間進(jìn)行元數(shù)據(jù)同步操作,這大大增加了系統(tǒng)設(shè)計(jì)的復(fù)雜性,如果元數(shù)據(jù)沒有及時(shí)得到同步,或者遭到意外破壞,則會出現(xiàn)同一文件或者對象的元數(shù)據(jù)不一致,進(jìn)一步導(dǎo)致上層應(yīng)用在通過不同物理服務(wù)器訪問文件或?qū)ο髷?shù)據(jù)時(shí)出現(xiàn)數(shù)據(jù)不一致或者讀寫錯誤的問題,這種風(fēng)險(xiǎn)隨著云存儲系統(tǒng)規(guī)模的擴(kuò)大而大幅增加。
此外,由于分布式元數(shù)據(jù)系統(tǒng)需要在大量節(jié)點(diǎn)之間進(jìn)行元數(shù)據(jù)同步,同步過程需要采用各種加鎖機(jī)制,以確保數(shù)據(jù)的一致性,加鎖機(jī)制的存在導(dǎo)致很多任務(wù)處理無法并行進(jìn)行,元數(shù)據(jù)同步也會對后端帶寬帶來開銷,二者都會帶來系統(tǒng)性能上的額外開銷,部分抵消由于采用分布式元數(shù)據(jù)存取帶來的性能提升,且系統(tǒng)規(guī)模越大,性能開銷越顯著。為了降低性能開銷,通常需要為節(jié)點(diǎn)配置高性能CPU、SSD或者高性能SAS 或FC 硬盤陣列來提供元數(shù)據(jù)訪問,并且采用分布式共享內(nèi)存和高性能后端網(wǎng)絡(luò)(如Infiniband 或萬兆以太網(wǎng))來加速元數(shù)據(jù)同步速度,不過這樣就顯著提升了系統(tǒng)的硬件成本。
既然元數(shù)據(jù)總會帶來性能開銷和可靠性問題,第三種云存儲系統(tǒng)則徹底拋棄元數(shù)據(jù),而是采用算法來對文件或?qū)ο筮M(jìn)行定位,并將該算法集成在每一個(gè)存儲節(jié)點(diǎn)上,客戶端從任何一個(gè)存儲節(jié)點(diǎn)進(jìn)行數(shù)據(jù)訪問都會獲得同樣的結(jié)果,云存儲系統(tǒng)中的每一個(gè)存儲節(jié)點(diǎn)都可以獨(dú)立、并行地對外提供服務(wù),從而真正實(shí)現(xiàn)性能隨節(jié)點(diǎn)數(shù)增加而線性擴(kuò)展,由于無需在節(jié)點(diǎn)間進(jìn)行元數(shù)據(jù)的同步操作,極大地提高了系統(tǒng)的穩(wěn)定性和可靠性。
宇視科技的UCS(Unified Cloud Storage)統(tǒng)一云存儲系統(tǒng)是在視頻應(yīng)用云存儲CDS 解決方案之外提供的更為通用的云存儲解決方案,它是一種采用無元數(shù)據(jù)設(shè)計(jì)的全對稱分布式存儲系統(tǒng),通過UVFS 分布式文件系統(tǒng)實(shí)現(xiàn)對存儲資源的虛擬化統(tǒng)一管理,對外提供各種標(biāo)準(zhǔn)軟件接口,無需集成特殊軟件客戶端到前端設(shè)備(例如IPC),也無需前端應(yīng)用設(shè)備在數(shù)據(jù)保護(hù)方面做額外的開發(fā)工作,對于數(shù)據(jù)的保護(hù)功能完全在存儲卷層面實(shí)現(xiàn),具有架構(gòu)簡單、高性能、高擴(kuò)展性、高可用性、開放性等特點(diǎn),如下圖所示:

宇視全對稱分布式UCS 通用云存儲
具有以下顯著特征:
■全局統(tǒng)一的命名空間
■無元數(shù)據(jù)全對稱分布式設(shè)計(jì),智能哈希算法數(shù)據(jù)定位,并行任務(wù)處理,系統(tǒng)性能隨節(jié)點(diǎn)數(shù)增加而線性提升
■靈活、高效的系統(tǒng)擴(kuò)展能力,最大可橫向擴(kuò)展256 個(gè)存儲節(jié)點(diǎn),管理數(shù)十PB 存儲空間
■支持節(jié)點(diǎn)間故障保護(hù)、負(fù)載均衡,任一節(jié)點(diǎn)故障,剩余節(jié)點(diǎn)均可繼續(xù)提供客戶端無感知的數(shù)據(jù)讀寫服務(wù)
■基于卷提供多種數(shù)據(jù)分布和保護(hù)策略,如N+M 糾刪碼、多副本、高性能分布式存儲等
■繼承宇視在傳統(tǒng)存儲上的長期積累,支持多種RAID 類型,提供更高性能的塊級底層數(shù)據(jù)保護(hù)
■存儲節(jié)點(diǎn)支持掉電數(shù)據(jù)保護(hù)功能,已寫入文件系統(tǒng)buffer 的數(shù)據(jù)在掉電時(shí)能得到妥善保存
■支持ISCSI、NFS、CIFS、FTP、HTTP、REST 等多種標(biāo)準(zhǔn)訪問接口
UCS 統(tǒng)一云存儲解決方案可廣泛用于高清視頻監(jiān)控系統(tǒng)、警用執(zhí)法儀在線存儲、警情視頻庫歸檔系統(tǒng)等,為智慧城市、平安城市建設(shè)提供大數(shù)據(jù)、云存儲解決方案。