成人免费xxxxx在线视频软件_久久精品久久久_亚洲国产精品久久久_天天色天天色_亚洲人成一区_欧美一级欧美三级在线观看

如何從應(yīng)用角度比較塊存儲、文件存儲、對象存儲

存儲 存儲軟件
產(chǎn)品和市場需求有各種相互影響的關(guān)系,但不管是哪一種,最終呈現(xiàn)都是產(chǎn)品和應(yīng)用需求需要對應(yīng)匹配。應(yīng)用需求越多樣化,市場也就劃分得更加細(xì),產(chǎn)品種類也就更加豐富。在存儲行業(yè),我們也可以從“應(yīng)用適配”這個(gè)角度來聊聊各類存儲。

產(chǎn)品和市場需求有各種相互影響的關(guān)系,但不管是哪一種,最終呈現(xiàn)都是產(chǎn)品和應(yīng)用需求需要對應(yīng)匹配。應(yīng)用需求越多樣化,市場也就劃分得更加細(xì),產(chǎn)品種類也就更加豐富。在存儲行業(yè),我們也可以從“應(yīng)用適配”這個(gè)角度來聊聊各類存儲。

傳統(tǒng)認(rèn)知上來說,IT設(shè)備分為計(jì)算/存儲/網(wǎng)絡(luò)三大類,相互之間是有明顯的楚河漢界的。計(jì)算大家都清楚,服務(wù)器,小型機(jī),大型機(jī);網(wǎng)絡(luò)也就是路由器交換機(jī);存儲有內(nèi)置存儲和外置存儲,最常見的就是磁盤陣列。在HCI(超融合)這個(gè)概念沒被熱炒之前,計(jì)算網(wǎng)絡(luò)存儲還都是涇渭分明,各擔(dān)其責(zé)的。今天我們先不討論超融合的情況,僅基于傳統(tǒng)理解,看看存儲的情況。

從邏輯上存儲通常分為塊存儲,文件存儲,對象存儲。這三類存儲在實(shí)際應(yīng)用中的適配環(huán)境還是有著明顯的不同的。

[[222718]]

塊存儲(DAS/SAN)通常應(yīng)用在某些專有的系統(tǒng)中,這類應(yīng)用要求很高的隨機(jī)讀寫性能和高可靠性,上面搭載的通常是Oracle/DB2這種傳統(tǒng)數(shù)據(jù)庫,連接通常是以FC光纖(8Gb/16Gb)為主,走光纖協(xié)議。如果要求稍低一些,也會出現(xiàn)基于千兆/萬兆以太網(wǎng)的連接方式,MySQL這種數(shù)據(jù)庫就可能會使用IP SAN,走iSCSI協(xié)議。通常使用塊存儲的都是系統(tǒng)而非用戶,并發(fā)訪問不會很多,經(jīng)常出現(xiàn)一套存儲只服務(wù)一個(gè)應(yīng)用系統(tǒng),例如如交易系統(tǒng),計(jì)費(fèi)系統(tǒng)。典型行業(yè)如金融,制造,能源,電信等。

文件存儲(NAS)相對來說就更能兼顧多個(gè)應(yīng)用和更多用戶訪問,同時(shí)提供方便的數(shù)據(jù)共享手段。畢竟大部分的用戶數(shù)據(jù)都是以文件的形式存放,在PC時(shí)代,數(shù)據(jù)共享也大多是用文件的形式,比如常見的的FTP服務(wù),NFS服務(wù),Samba共享這些都是屬于典型的文件存儲。幾十個(gè)用戶甚至上百用戶的文件存儲共享訪問都可以用NAS存儲加以解決。在中小企業(yè)市場,一兩臺NAS存儲設(shè)備就能支撐整個(gè)IT部門了。CRM系統(tǒng),SCM系統(tǒng),OA系統(tǒng),郵件系統(tǒng)都可以使用NAS存儲統(tǒng)統(tǒng)搞定。甚至在公有云發(fā)展的早幾年,用戶規(guī)模沒有上來時(shí),云存儲的底層硬件也有用幾套NAS存儲設(shè)備就解決的,甚至云主機(jī)的鏡像也有放在NAS存儲上的例子。文件存儲的廣泛兼容性和易用性,是這類存儲的突出特點(diǎn)。但是從性能上來看,相對SAN就要低一些。NAS存儲基本上是以太網(wǎng)訪問模式,普通千兆網(wǎng),走NFS/CIFS協(xié)議。

對象存儲概念出現(xiàn)得晚一些,存儲標(biāo)準(zhǔn)化組織SINA早在2004年就給出了定義,但早期多出現(xiàn)在超大規(guī)模系統(tǒng),所以并不為大眾所熟知,相關(guān)產(chǎn)品一直也不溫不火。一直到云計(jì)算和大數(shù)據(jù)的概念全民強(qiáng)推,才慢慢進(jìn)入公眾視野。

前面說到的塊存儲和文件存儲,基本上都還是在專有的局域網(wǎng)絡(luò)內(nèi)部使用,而對象存儲的優(yōu)勢場景卻是互聯(lián)網(wǎng)或者公網(wǎng),主要解決海量數(shù)據(jù),海量并發(fā)訪問的需求。基于互聯(lián)網(wǎng)的應(yīng)用才是對象存儲的主要適配(當(dāng)然這個(gè)條件同樣適用于云計(jì)算,基于互聯(lián)網(wǎng)的應(yīng)用最容易遷移到云上,因?yàn)闆]出現(xiàn)云這個(gè)名詞之前,他們已經(jīng)在上面了),基本所有成熟的公有云都提供了對象存儲產(chǎn)品,不管是國內(nèi)還是國外。

對象存儲常見的適配應(yīng)用如網(wǎng)盤、媒體娛樂,醫(yī)療PACS,氣象,歸檔等數(shù)據(jù)量超大而又相對“冷數(shù)據(jù)”和非在線處理的應(yīng)用類型。這類應(yīng)用單個(gè)數(shù)據(jù)大,總量也大,適合對象存儲海量和易擴(kuò)展的特點(diǎn)。網(wǎng)盤類應(yīng)用也差不多,數(shù)據(jù)總量很大,另外還有并發(fā)訪問量也大,支持10萬級用戶訪問這種需求就值得單列一個(gè)項(xiàng)目了(這方面的掃盲可以想想12306)。歸檔類應(yīng)用只是數(shù)據(jù)量大的冷數(shù)據(jù),并發(fā)訪問的需求倒是不太突出。

另外基于移動端的一些新興應(yīng)用也是適合的,智能手機(jī)和移動互聯(lián)網(wǎng)普及的情況下,所謂UGD(用戶產(chǎn)生的數(shù)據(jù),手機(jī)的照片視頻)總量和用戶數(shù)都是很大挑戰(zhàn)。畢竟直接使用HTTP get/put就能直接實(shí)現(xiàn)數(shù)據(jù)存取,對移動應(yīng)用來說還是有一定吸引力的。

對象存儲的訪問通常是在互聯(lián)網(wǎng),走HTTP協(xié)議,性能方面,單獨(dú)看一個(gè)連接的是不高的(還要解決掉線斷點(diǎn)續(xù)傳之類的可靠性問題),主要強(qiáng)大的地方是支持的并發(fā)數(shù)量,聚合起來的性能帶寬就非常可觀了。

從產(chǎn)品形態(tài)上來看,塊存儲和文件存儲都是成熟產(chǎn)品,各種規(guī)格形態(tài)的硬件已經(jīng)是琳瑯滿目了。但是對象存儲通常你看到都是一堆服務(wù)器或者增強(qiáng)型服務(wù)器,畢竟這東西現(xiàn)在還是互聯(lián)網(wǎng)行業(yè)用得多點(diǎn),DIY風(fēng)格。

關(guān)于性能容量等方面,我做了個(gè)圖,對三種存儲做直觀對比。

[[222722]]

塊存儲就像超跑,根本不在意能不能多載幾個(gè)人,要的就是極限速度和高速下的穩(wěn)定性和可靠性,各大廠商出新產(chǎn)品都要去紐北賽道刷個(gè)單圈最快紀(jì)錄,千方百計(jì)就為提高一兩秒,跑不進(jìn)7分以內(nèi)都看不到前三名。(塊存儲容量也不大,TB這個(gè)數(shù)量級,支持的應(yīng)用和適用的環(huán)境也比較專業(yè)(FC+Oracle),在乎的都是IOPS的性能值,廠商出新產(chǎn)品也都想去刷個(gè)SPC-1,測得好的得意洋洋,測得不好自動忽略。)

文件存儲像集卡,普適各種場合,又能裝數(shù)據(jù)(數(shù)百TB),而且兼容性好,只要你是文件,各種貨物都能往里塞,在不超過性能載荷的前提下,能拉動常見的各種系統(tǒng)。標(biāo)準(zhǔn)POXIS接口,后車門打開就能裝卸。卡車也不挑路,不像塊存儲非要上賽道才能開,普通的千兆公路就能暢通無阻。速度雖然沒有塊存儲超跑那么塊,但跑個(gè)80/100碼還是穩(wěn)穩(wěn)當(dāng)當(dāng).

而對象存儲就像海運(yùn)貨輪,應(yīng)對的是"真·海量",幾十上百PB的數(shù)據(jù),以集裝箱/container(桶/bucket)為單位碼得整整齊齊,里面裝滿各種對象數(shù)據(jù),十萬客戶發(fā)的貨(數(shù)據(jù)),一條船就都處理得過來,按照鍵值(KeyVaule)記得清清楚楚。海運(yùn)速度慢是慢點(diǎn),有時(shí)候遇到點(diǎn)網(wǎng)絡(luò)風(fēng)暴還不穩(wěn)定,但支持?jǐn)帱c(diǎn)續(xù)傳,最終還是能安全送達(dá)的,對大宗貨物尤其是非結(jié)構(gòu)化數(shù)據(jù),整體上來看是最快捷便利的。

從訪問方式來說,塊存儲通常都是通過光纖網(wǎng)絡(luò)連接,服務(wù)器/小機(jī)上配置FC光纖HBA卡,通過光纖交換機(jī)連接存儲(IP SAN可以通過千兆以太網(wǎng),以iSCSI客戶端連接存儲),主機(jī)端以邏輯卷(Volume)的方式訪問。連接成功后,應(yīng)用訪問存儲是按起始地址,偏移量Offset的方法來訪問的。

而NAS文件存儲通常只要是局域網(wǎng)內(nèi),千兆/百兆的以太網(wǎng)環(huán)境皆可。網(wǎng)線連上,服務(wù)器端通過操作系統(tǒng)內(nèi)置的NAS客戶端,如NFS/CIFS/FTP客戶端掛載存儲成為一個(gè)本地的文件夾后訪問,只要符合POXIS標(biāo)準(zhǔn),應(yīng)用就可以用標(biāo)準(zhǔn)的open,seek, write/read,close這些方法對其訪問操作。

對象存儲不在乎網(wǎng)絡(luò),而且它的訪問比較有特色,只能存取刪(put/get/delete),不能打開修改存盤。只能取下來改好后上傳,去覆蓋原對象。(因?yàn)橹虚g是不可靠的互聯(lián)網(wǎng)啊,不能保證你在修改時(shí)候不掉線啊。所謂你在這頭,對象在那頭,所愛對象隔山海,山海不可平。)

另外再說一點(diǎn)分布式存儲的問題,以上三種存儲都可以和分布式概念結(jié)合,成為分布式文件系統(tǒng),分布式塊存儲,還有天生分布式的對象存儲。

對象存儲的定義就把元數(shù)據(jù)管理和數(shù)據(jù)存儲訪問分開在不同的節(jié)點(diǎn)上,多個(gè)節(jié)點(diǎn)應(yīng)對多并發(fā)的訪問,這自然就是一個(gè)分布式的存儲產(chǎn)品。而分布式文件系統(tǒng)就很多了,各種開源閉源的產(chǎn)品數(shù)得出幾十個(gè),在不同的領(lǐng)域各有應(yīng)用。至于分布式的塊存儲產(chǎn)品就比較少,也很難做好。我個(gè)人認(rèn)為這個(gè)產(chǎn)品形態(tài)有點(diǎn)違和,分布式的思想和塊存儲的設(shè)計(jì)追求其實(shí)是沖突的。前面講過,塊存儲主要是圖快,一上分布式肯定嚴(yán)重拖后腿,既然都分布開了,節(jié)點(diǎn)之間的通信必然增加額外負(fù)擔(dān),再加上CAP,為了保持一致性犧牲響應(yīng)速度,得到的好處就是擴(kuò)展性。這就像把超跑弄個(gè)鐵索連環(huán),哪里還可能跑出高速?鏈條比車都重了,穿起來當(dāng)火車開嗎?

而文件存儲原來也就是集裝箱貨車,大家連起來扮火車還是有可行性的。

塊存儲、文件存儲、對象存儲的層次關(guān)系

應(yīng)用的角度聊過了,我們再看看這三種存儲的一些技術(shù)細(xì)節(jié),首先看看在系統(tǒng)層級的分布。

我們從底層往上看,最底層就是硬盤,多個(gè)硬盤可以做成RAID組,無論是單個(gè)硬盤還是RAID組,都可以做成PV,多個(gè)PV物理卷捏在一起構(gòu)成VG卷組,這就做成一塊大蛋糕了。接下來,可以從蛋糕上切下很多塊LV邏輯卷,這就到了存儲用戶最熟悉的卷這層。到這一層為止,數(shù)據(jù)一直都是以Block塊的形式存在的,這時(shí)候提供出來的服務(wù)就是塊存儲服務(wù)。你可以通過FC協(xié)議或者iSCSI協(xié)議對卷訪問,映射到主機(jī)端本地,成為一個(gè)裸設(shè)備。在主機(jī)端可以直接在上面安裝數(shù)據(jù)庫,也可以格式化成文件系統(tǒng)后交給應(yīng)用程序使用,這時(shí)候就是一個(gè)標(biāo)準(zhǔn)的SAN存儲設(shè)備的訪問模式,網(wǎng)絡(luò)間傳送的是塊。

如果不急著訪問,也可以在本地做文件系統(tǒng),之后以NFS/CIFS協(xié)議掛載,映射到本地目錄,直接以文件形式訪問,這就成了NAS訪問的模式,在網(wǎng)絡(luò)間傳送的是文件。

如果不走NAS,在本地文件系統(tǒng)上面部署OSD服務(wù)端,把整個(gè)設(shè)備做成一個(gè)OSD,這樣的節(jié)點(diǎn)多來幾個(gè),再加上必要的MDS節(jié)點(diǎn),互聯(lián)網(wǎng)另一端的應(yīng)用程序再通過HTTP協(xié)議直接進(jìn)行訪問,這就變成了對象存儲的訪問模式。當(dāng)然對象存儲通常不需要專業(yè)的存儲設(shè)備,前面那些LV/VG/PV層也可以統(tǒng)統(tǒng)不要,直接在硬盤上做本地文件系統(tǒng),之后再做成OSD,這種才是對象存儲的標(biāo)準(zhǔn)模式,對象存儲的硬件設(shè)備通常就用大盤位的服務(wù)器。

從系統(tǒng)層級上來說,這三種存儲是按照塊->文件->對象逐級向上的。文件一定是基于塊上面去做,不管是遠(yuǎn)端還是本地。而對象存儲的底層或者說后端存儲通常是基于一個(gè)本地文件系統(tǒng)(XFS/Ext4..)。這樣做是比較合理順暢的架構(gòu)。但是大家想法很多,還有各種特異的產(chǎn)品出現(xiàn),我們逐個(gè)來看看:

對象存儲除了基于文件,可以直接基于塊,但是做這個(gè)實(shí)現(xiàn)的很少,畢竟你還是得把文件系統(tǒng)的活給干了,自己實(shí)現(xiàn)一套元數(shù)據(jù)管理,也挺麻煩的,目前我只看到Nutanix宣稱支持。另外對象存儲還能基于對象存儲,這就有點(diǎn)尷尬了,就是轉(zhuǎn)一下,何必呢?但是這都不算最奇怪的,最奇怪的是把對象存儲放在最底層,那就是這兩年大紅的Ceph。

Ceph是個(gè)開源的分布式存儲,相信類似的架構(gòu)圖大家都見過,我把底層細(xì)節(jié)也畫出來,方便分析。

底層是RADOS,這是個(gè)標(biāo)準(zhǔn)的對象存儲。以RADOS為基礎(chǔ),Ceph 能夠提供文件,塊和對象三種存儲服務(wù)。其中通過RBD提供出來的塊存儲是比較有價(jià)值的地方,畢竟因?yàn)槭忻嫔祥_源的分布式塊存儲少見嘛(以前倒是有個(gè)sheepdog,但是現(xiàn)在不當(dāng)紅了)。當(dāng)然它也通過CephFS模塊和相應(yīng)的私有Client提供了文件服務(wù),這也是很多人認(rèn)為Ceph是個(gè)文件系統(tǒng)的原因。另外它自己原生的對象存儲可以通過RadosGW存儲網(wǎng)關(guān)模塊向外提供對象存儲服務(wù),并且和對象存儲的事實(shí)標(biāo)準(zhǔn)Amazon S3以及Swift兼容。所以能看出來這其實(shí)是個(gè)大一統(tǒng)解決方案,啥都齊全。

上面講的大家或多或少都有所了解,但底層的RADOS的細(xì)節(jié)可能會忽略,RADOS也是個(gè)標(biāo)準(zhǔn)對象存儲,里面也有MDS的元數(shù)據(jù)管理和OSD的數(shù)據(jù)存儲,而OSD本身是可以基于一個(gè)本地文件系統(tǒng)的,比如XFS/EXT4/Brtfs。在早期版本,你在部署Ceph的時(shí)候,是不是要給OSD創(chuàng)建數(shù)據(jù)目錄啊?這一步其實(shí)就已經(jīng)在本地文件系統(tǒng)上做操作了(現(xiàn)在的版本Ceph可以直接使用硬盤)。

現(xiàn)在我們來看數(shù)據(jù)訪問路徑,如果看Ceph的文件接口,自底層向上,經(jīng)過了硬盤(塊)->文件->對象->文件的路徑;如果看RBD的塊存儲服務(wù),則經(jīng)過了硬盤(塊)->文件->對象->塊,也可能是硬盤(塊)->對象->塊的路徑;再看看對象接口(雖然用的不多),則是經(jīng)過了硬盤(塊)->文件->對象或者硬盤(塊)->對象的路徑。

是不是各種組合差不多齊全了?如果你覺得只有Ceph一個(gè)這么玩,再給你介紹另一個(gè)狠角色,老牌的開源分布式文件系統(tǒng)GlusterFS也宣布要支持對象存儲。它打算使用swift的上層PUT、GET等接口,支持對象存儲。這是文件存儲去兼容對象存儲。對象存儲Swift也沒閑著,有人在研究Swift和hadoop的兼容性,要知道MapReduce標(biāo)準(zhǔn)是用原生的HDFS做存儲的,這相當(dāng)是對象存儲去兼容文件存儲,看來混搭真是潮流啊。

雖說現(xiàn)在大家都這么隨便結(jié)合,但是這三種存儲本質(zhì)上還是有不同的,我們回到計(jì)算機(jī)的基礎(chǔ)課程,從數(shù)據(jù)結(jié)構(gòu)來看,這三種存儲有著根本不同。塊存儲的數(shù)據(jù)結(jié)構(gòu)是數(shù)組,而文件存儲是二叉樹(B,B-,B+,B*各種樹),對象存儲基本上都是哈希表。

數(shù)組和二叉樹都是老生常談,沒有太多值得說的,而對象存儲使用的哈希表也就是常聽說的鍵值(KeyVaule型)存儲的核心數(shù)據(jù)結(jié)構(gòu),每個(gè)對象找一個(gè)UID(所謂的“鍵”KEY),算哈希值(所謂的“值Vaule”)以后和目標(biāo)對應(yīng)。找了一個(gè)哈希表例子如下:

鍵值對應(yīng)關(guān)系簡單粗暴,畢竟算個(gè)hash值是很快的,這種扁平化組織形式可以做得非常大,避免了二叉樹的深度,對于真·海量的數(shù)據(jù)存儲和大規(guī)模訪問都能給力支持。所以不僅是對象存儲,很多NoSQL的分布式數(shù)據(jù)庫都會使用它,比如Redis,MongoDB,Cassandra 還有Dynamo等等。

順便說一句,這類NoSQL的出現(xiàn)有點(diǎn)打破了數(shù)據(jù)庫和文件存儲的天然屏障,原本關(guān)系數(shù)據(jù)庫里面是不會存放太大的數(shù)據(jù)的,但是現(xiàn)在像MongoDB這種NoSQL都支持直接往里扔大個(gè)的“文檔”數(shù)據(jù),所以從應(yīng)用角度上,有時(shí)候會把對象存儲,分布式文件系統(tǒng),分布式數(shù)據(jù)庫放到一個(gè)臺面上來比較,這才是混搭。

當(dāng)然實(shí)際上幾個(gè)開源對象存儲比如swift和ceph都是用的一致性哈希,進(jìn)階版,最后變成了一個(gè)環(huán),首首尾相接,避免了節(jié)點(diǎn)故障時(shí)大量數(shù)據(jù)遷移的尷尬,這個(gè)幾年前寫Swift的時(shí)候就提過。這里不再深入細(xì)節(jié)。

 

責(zé)任編輯:武曉燕 來源: talkwithtrend
相關(guān)推薦

2020-02-16 15:20:18

存儲類型比較

2020-08-25 09:14:17

對象存儲文件存儲塊存儲

2018-07-04 09:19:37

存儲類型對象存儲

2018-09-19 10:15:45

塊存儲文件存儲對象存儲

2022-10-08 07:45:09

塊存儲磁盤硬盤

2021-02-08 23:47:51

文件存儲塊存儲對象存儲

2019-04-15 15:22:14

塊存儲文件存儲對象存儲

2013-12-11 21:48:38

OpenStack

2020-01-21 19:44:03

云存儲數(shù)據(jù)塊存儲

2018-07-03 08:48:48

對象存儲塊存儲

2017-12-15 09:05:55

對象存儲塊存儲文件存儲

2021-01-25 13:44:32

存儲網(wǎng)絡(luò)供應(yīng)商

2020-07-28 08:00:03

存儲數(shù)據(jù)技術(shù)

2018-07-06 14:27:26

存儲

2018-01-22 09:21:46

塊存儲對象存儲文件系統(tǒng)

2018-05-04 09:24:59

杉巖對象存儲

2013-12-11 21:44:01

OpenStack對象Swift

2018-04-19 08:58:17

容器塊存儲

2014-01-07 09:15:24

云集成云存儲RESTful

2017-08-29 20:19:56

對象存儲架構(gòu)存儲數(shù)據(jù)中心
點(diǎn)贊
收藏

51CTO技術(shù)棧公眾號

主站蜘蛛池模板: 黄色毛片黄色毛片 | 亚洲国产精品一区二区三区 | 久久精品国产久精国产 | 青春草在线 | 国产一级精品毛片 | 日本成人中文字幕 | 久久久久亚洲视频 | 国精日本亚洲欧州国产中文久久 | 成人午夜看片 | 91精品国产乱码久久久 | 国产91久久精品一区二区 | 国产精品毛片在线 | 国产成人精品免费视频大全最热 | 色视频在线免费观看 | 欧美日韩午夜精品 | 中文字幕综合 | 中国美女撒尿txxxxx视频 | 一级黄色生活视频 | 超碰免费在线 | 日日干日日操 | 黄瓜av| 欧美日韩网站 | 久久国产精品免费一区二区三区 | 亚洲欧洲在线观看视频 | 欧美日韩亚洲一区 | 性高湖久久久久久久久 | 欧美日韩精品久久久免费观看 | 91国内在线观看 | 精品91视频 | 成人在线视频观看 | 国产精品久久久久久久久久久久冷 | 国产一区二区三区免费 | 国产中文视频 | 特级特黄特色的免费大片 | 国产成人99久久亚洲综合精品 | 精品免费国产一区二区三区 | 国产在线一区二区三区 | 国产精品永久久久久久久www | 成人免费三级电影 | 四虎av电影| 精品香蕉一区二区三区 |