【成都網(wǎng)站建設(shè)】 大規(guī)模存儲(chǔ)的未來——內(nèi)存云?

2022-07-27    分類: 網(wǎng)站建設(shè)

Tcl/Tk的創(chuàng)始人、美國工程院院士、ACM Fellow John Ousterhout目前在斯坦福大學(xué)任教,他近年來的主要研究項(xiàng)目是RAMCloud——內(nèi)存云。顧名思義,RAMCloud就是這樣一種新型數(shù)據(jù)中心存儲(chǔ)系統(tǒng),它是由成千上萬臺(tái)普通服務(wù)器的主存所組成的大規(guī)模系統(tǒng),任何時(shí)候,所有信息都存儲(chǔ)在這些快速的DRAM(動(dòng)態(tài)隨機(jī)訪問存儲(chǔ)器,即俗稱的內(nèi)存)中,內(nèi)存取代了傳統(tǒng)系統(tǒng)中的硬盤,硬盤只作為備份使用。

內(nèi)存云由此能同時(shí)實(shí)現(xiàn)大規(guī)模 (100~1000 TB) 和低延遲(同一數(shù)據(jù)中心應(yīng)用程序訪問少量內(nèi)存云數(shù)據(jù)只需5~10ms,比目前系統(tǒng)快100~1000倍)。內(nèi)存云不僅會(huì)簡化大型Web應(yīng)用的開發(fā),而且,將催生新的數(shù)據(jù)密集型應(yīng)用。

最新出版的《ACM通信》(Communications of ACM)2011年8月刊發(fā)表了Ousterhout與他的團(tuán)隊(duì)合作撰寫的論文“The Case for RAMCloud”

在過去四十年,磁盤已經(jīng)成為計(jì)算機(jī)系統(tǒng)網(wǎng)上信息的主要存儲(chǔ)位置。

在此期間,磁盤技術(shù)已經(jīng)發(fā)生了顯著改善,由更高級(jí)別的存儲(chǔ)系統(tǒng)(如文件系統(tǒng)和關(guān)系數(shù)據(jù)庫)利用。但是磁盤性能卻并沒有像磁盤容量那樣有所改變。一個(gè)不容忽視的現(xiàn)實(shí)擺在了面前——技術(shù)人員發(fā)現(xiàn)基于磁盤的系統(tǒng)越來越難以形成規(guī)模以滿足大型Web應(yīng)用程序的需要。

許多計(jì)算機(jī)科學(xué)家們提出了新的基于磁盤存儲(chǔ)的解決方案,以及其他建議更換磁碟與快閃記憶體裝置。相比之下,我們說的解決方案是基本想法就是將在線數(shù)據(jù)從磁盤遷移到DRAM上,從而在磁盤之上創(chuàng)建一種新式存儲(chǔ)。

這時(shí),一個(gè)被稱為“RAMCloud”新的存儲(chǔ)方式將為未來許多應(yīng)用提供新的存儲(chǔ)架構(gòu)。

什么是RAMCloud?

RAMCloud架構(gòu)的原理在于將存儲(chǔ)所有商業(yè)服務(wù)器的信息在主存儲(chǔ)器上,并使用數(shù)百上千的服務(wù)器創(chuàng)建大型存儲(chǔ)系統(tǒng)。據(jù)稱,存儲(chǔ)在RAMCloud上的數(shù)據(jù)的延遲要比存儲(chǔ)在基于硬盤的系統(tǒng)上低100-1000倍,而吞吐量則會(huì)高100-1000倍。

雖然個(gè)體存儲(chǔ)容易改變,但RAMCloud可以利用復(fù)制和備份技術(shù)以保障數(shù)據(jù)的耐久性和可用性,就像傳統(tǒng)基于磁盤的系統(tǒng)那樣。

RAMCloud可提供低延遲和大規(guī)模,并將從以下三點(diǎn)改變存儲(chǔ)行業(yè)的現(xiàn)狀。首先,RAMCloud會(huì)消除開發(fā)大規(guī)模Web應(yīng)用所面臨的可擴(kuò)展性問題。其次將啟用新的應(yīng)用類,比當(dāng)今深入100-1000倍操作數(shù)據(jù)將成為可能;RAMCloud集群可以支持單個(gè)的代謝那個(gè)程序或許多較小的應(yīng)用程序,并可在小型應(yīng)用轉(zhuǎn)變?yōu)榇笮蛻?yīng)用的開發(fā)時(shí)保證沒有額外的復(fù)雜性。

RAMCloud的架構(gòu)原理

1、在RAMCloud架構(gòu)中,大量服務(wù)器組成的數(shù)據(jù)中心可分為兩類:應(yīng)用服務(wù)器,實(shí)現(xiàn)應(yīng)用程序的邏輯(如生成Web網(wǎng)頁和執(zhí)行業(yè)務(wù)規(guī)則)和存儲(chǔ)服務(wù)器,提供較長的共享應(yīng)用服務(wù)器存儲(chǔ)。

2、RAMCloud代表系統(tǒng)存儲(chǔ)組織服務(wù)器的一種新方式,有兩個(gè)關(guān)鍵的區(qū)別區(qū)分RAMCloud和傳統(tǒng)存儲(chǔ)系統(tǒng)。首先,所有信息在任何時(shí)候都保存在RAMCloud;其次,RAMCloud必須建立在一定規(guī)模(數(shù)以千計(jì))存儲(chǔ)服務(wù)器上。對(duì)于應(yīng)用程序,獨(dú)立于存儲(chǔ)服務(wù)器的單一存儲(chǔ)系統(tǒng)的實(shí)際數(shù)量是可見的。

3、RAMCloud存儲(chǔ)的信息必須為持久的,就像存儲(chǔ)在磁盤上那樣。一個(gè)單一的存儲(chǔ)服務(wù)器出現(xiàn)故障后絕不會(huì)造成數(shù)據(jù)丟失或哪怕幾秒的數(shù)據(jù)不可用的狀況。實(shí)現(xiàn)耐用久性和可用性的技術(shù)的將會(huì)在本文后邊討論。

4、保存在DRAM上的所有數(shù)據(jù)都允許保存在RAMCloud,并且比當(dāng)今給予高性能磁盤存儲(chǔ)系統(tǒng)的實(shí)際性能要高100到1000倍。

5、在同一個(gè)數(shù)據(jù)中心中通過在應(yīng)用服務(wù)器上運(yùn)行的一個(gè)進(jìn)程通過網(wǎng)絡(luò)讀取幾百字節(jié)的數(shù)據(jù)的訪問延遲有可能降低到5μs–10μs。相比之下,今天的系統(tǒng)通常需要0.5ms到10ms,這取決于數(shù)據(jù)是否存在于服務(wù)器內(nèi)存的緩存上,或必須從磁盤中讀取。

6、一臺(tái)多核的存儲(chǔ)服務(wù)器應(yīng)該至少能在每秒相應(yīng)100萬的網(wǎng)絡(luò)請求。根據(jù)配置和緩存的內(nèi)容,一個(gè)基于磁盤的系統(tǒng)的類似機(jī)器(運(yùn)行多個(gè)磁盤和一個(gè)存儲(chǔ)緩存的主內(nèi)存)每秒可相應(yīng)1000至10000的網(wǎng)絡(luò)請求。

案例分享

目前一個(gè)可行的RAMCloud配置,每臺(tái)服務(wù)器配置24GB的DRAM,這是高性價(jià)比的配置。擴(kuò)展內(nèi)存會(huì)導(dǎo)致成本的急劇增加。2000服務(wù)器會(huì)配備48TB的存儲(chǔ)空間,平均每GB成本65美元。據(jù)預(yù)測,到2020年,隨著DRAM技術(shù)的不斷完善,激勵(lì)1PB-10PB配置的RAMCloud時(shí)每 GB成本僅需6美元。

RAMCloud已經(jīng)在實(shí)際中有所應(yīng)用。例如一個(gè)大型的網(wǎng)絡(luò)零售商或航空公司使用RAMCloud的花費(fèi)在幾十萬美元。截止2009年8月Facebook所有非圖像數(shù)據(jù)大約有260TB。這可能接近了當(dāng)今RAMCloud實(shí)用的上限。

像電視頻、照片、歌曲等數(shù)據(jù)還沒有大規(guī)模應(yīng)用RAMCloud,然而RAMCloud實(shí)際已經(jīng)可以用在所有在線的數(shù)據(jù)。隨著DRAM技術(shù)的不斷改進(jìn),RAMCloud在未來會(huì)更具吸引力。

RAMCloud的存在價(jià)值

首先,RAMCloud可以是一個(gè)數(shù)據(jù)密集型應(yīng)用的新架構(gòu),傳統(tǒng)的架構(gòu)是應(yīng)用程序連同代碼和數(shù)據(jù)被加載到一臺(tái)服務(wù)器的主存儲(chǔ)中,瓶頸也是顯而易見的,各種復(fù)雜的數(shù)據(jù)操作,應(yīng)用程序的大小,機(jī)器的處理能力都是瓶頸。

而在過去的10年中,一種服務(wù)于數(shù)百萬用戶的大型WEB應(yīng)用架構(gòu)出現(xiàn)了。其主要將應(yīng)用程序代碼和數(shù)據(jù)存放于同一個(gè)數(shù)據(jù)中心中的不同服務(wù)器中。應(yīng)用服務(wù)器只存儲(chǔ)當(dāng)前請求和處理瀏覽器的需求,而這種架構(gòu)允許應(yīng)用程序擴(kuò)展到成千上萬的應(yīng)用服務(wù)器和存儲(chǔ)。

但是不幸的是,在大型架構(gòu)圖中,當(dāng)服務(wù)器增加了4-5個(gè)數(shù)量級(jí)后,應(yīng)用程序的復(fù)雜性,數(shù)據(jù)的訪問延遲都成了問題。比如當(dāng)Facebook收到一個(gè) HTTP請求訪問網(wǎng)頁時(shí),應(yīng)用服務(wù)器必須發(fā)出130個(gè)以上的數(shù)據(jù)以生成HTML頁面,這當(dāng)中有指令請求的順序,而這些請求指令的累積是造成給用戶整體響應(yīng)時(shí)間延遲的因素之一,所以需要相當(dāng)大的開發(fā)量,以盡量減少對(duì)服務(wù)器請求的代碼大小和數(shù)量。

Mapreduce是最近幾年興起的一個(gè)新的技術(shù),目的在于提高數(shù)據(jù)接入速度,消除了延遲問題,現(xiàn)在它解決了大規(guī)模的問題,但是如果是連續(xù)的數(shù)據(jù)訪問,將使得Mapreduce僅僅限于在隨機(jī)訪問數(shù)據(jù)的應(yīng)用中使用。

RAMCloud則充分結(jié)合了兩者的優(yōu)勢——規(guī)?;偷脱舆t:保留了Web應(yīng)用程序的可擴(kuò)展性,同時(shí)降低了數(shù)據(jù)訪問延遲以接近傳統(tǒng)的應(yīng)用程序。

對(duì)現(xiàn)有應(yīng)用程序的擴(kuò)展存儲(chǔ)

對(duì)于新的應(yīng)用,RAMCloud將使其更容易建立。因?yàn)槿狈σ粋€(gè)可擴(kuò)展的存儲(chǔ)系統(tǒng),現(xiàn)在開發(fā)大型的Web應(yīng)用程序是困難的。

過去所有的Web應(yīng)用程序都使用關(guān)系型數(shù)據(jù)庫存儲(chǔ),但隨著數(shù)據(jù)規(guī)模的擴(kuò)大,一個(gè)單一的關(guān)系型數(shù)據(jù)庫已經(jīng)不能滿足他們的I/O需求。因此大家開始做系統(tǒng)升級(jí),引進(jìn)新的技術(shù)來擴(kuò)展自己的存儲(chǔ)系統(tǒng)(比如多個(gè)數(shù)據(jù)庫間的數(shù)據(jù)分區(qū))。

比如,盡管Facebook在2009年的時(shí)候就有4000個(gè)MySQL服務(wù)器,但由于大量交互式數(shù)據(jù)的調(diào)用,現(xiàn)有的存儲(chǔ)系統(tǒng)依舊不能滿足它的 I/O需求,所以Facebook用了2000個(gè)Memcached用作分布式內(nèi)存對(duì)象緩存服務(wù)器——將一些鍵值存儲(chǔ)于主內(nèi)存中,但其瓶頸在于,需要處理 Memcached和MySQL服務(wù)器之間的一致性,需要對(duì)應(yīng)用軟件進(jìn)行管理(比如刷新緩存值以更新數(shù)據(jù)庫),這無疑增加了應(yīng)用的復(fù)雜性。

因此,NoSQL開始出現(xiàn),用非關(guān)系型數(shù)據(jù)庫以鍵值對(duì)存儲(chǔ),它的結(jié)構(gòu)不固定,每一個(gè)元組可以有不一樣的字段,每個(gè)元組可以根據(jù)需要增加一些自己的鍵值對(duì),這樣就不會(huì)局限于固定的結(jié)構(gòu),可以減少一些時(shí)間和空間的開銷,但是他們瓶頸依然是磁盤速度。

RAMCloud的原理之一是提供一個(gè)通用的存儲(chǔ)系統(tǒng),其規(guī)模遠(yuǎn)遠(yuǎn)超出現(xiàn)有的系統(tǒng),應(yīng)用程序開發(fā)人員不需要采取特殊的方式(如NoSQL系統(tǒng))。理想的狀態(tài)是,RAMCloud提供一個(gè)簡單的模型,易用、并且有擴(kuò)展性,并對(duì)應(yīng)用程序的城戰(zhàn)不需要做架構(gòu)上的改變。

技術(shù)的發(fā)展趨勢

RAMCloud的發(fā)展動(dòng)力是來自磁盤技術(shù)的演進(jìn)。 磁盤容量從80年代以來增長了超過10000倍,未來還將繼續(xù)增加(表3),不幸的是,磁盤上的信息訪問速度卻停止不前,顯著的提高方式是通過減少尋道時(shí)間和旋轉(zhuǎn)延遲,但僅僅提高了50倍,和容量的增加實(shí)在無法成正比。

硬盤技術(shù)不平衡發(fā)展的結(jié)構(gòu),導(dǎo)致了數(shù)據(jù)必須保存在內(nèi)存中不停訪問。如果按照容量/帶寬的比例來計(jì)算,如果磁盤是用作填補(bǔ)特定大小的塊,那么每塊多久可以訪問?隨機(jī)訪問又如何呢?一個(gè)可行的辦法是降低磁盤的利用率,如果只有一半的磁盤能夠使用,那么訪問速度理論上可以提高一倍。有數(shù)據(jù)顯示,到2009 年末時(shí),F(xiàn)acebook真正可以利用的磁盤容量只有10%,顯然,這個(gè)成本有點(diǎn)太高,從經(jīng)濟(jì)性和節(jié)能性來說,絕對(duì)不是一個(gè)好的架構(gòu)。

緩存

對(duì)軟件工程師而言,如果大多數(shù)訪問只是磁盤一個(gè)小塊,可以實(shí)現(xiàn)高性能保持在DRAM訪問最頻繁的塊之上,在理想的狀態(tài)下,使用緩存系統(tǒng)能夠提供類似 DRAM的性能+磁盤的成本。但是DRAM和磁盤之間的訪問時(shí)間存在著1000倍的差距,這也意味著高速緩存必須要有非常低的損失率,以避免性能上的損失。

SSD

目前來看,可選擇的SSD有兩種:基于DRAM的設(shè)備和基于閃存的設(shè)備。

基于DRAM存儲(chǔ)設(shè)備比基于閃存的存儲(chǔ)設(shè)備速度更快,但成本也要高得多。

比如,2TB大小基于閃存的存儲(chǔ)設(shè)備成本大約為18萬美元;相比之下,存儲(chǔ)容量相同但基于DRAM的存儲(chǔ)設(shè)備成本高達(dá)約100萬美元?;贒RAM 的驅(qū)動(dòng)器讀取或?qū)懭霐?shù)據(jù)的時(shí)間只要0.015毫秒,工作狀態(tài)下隨機(jī)速度達(dá)到了每秒可以處理40萬次I/O。這種驅(qū)動(dòng)器最適合以寫操作為主的軟件以及使用高性能數(shù)據(jù)庫應(yīng)用系統(tǒng)的公司。

基于閃存的存儲(chǔ)驅(qū)動(dòng)器讀取或?qū)懭霐?shù)據(jù)的時(shí)間為0.2毫秒,工作狀態(tài)下高讀取速度為每秒10萬次I/O,高寫入速度為每秒2.5萬次I/O。這項(xiàng)技術(shù)也更適合以讀操作為主的應(yīng)用。

原文鏈接

標(biāo)簽:

成都網(wǎng)站設(shè)計(jì)公司 成都網(wǎng)站建設(shè)公司 成都網(wǎng)站制作公司 成都網(wǎng)站設(shè)計(jì) 成都網(wǎng)站建設(shè) 成都網(wǎng)站制作 成都精品網(wǎng)站制作成都精典網(wǎng)站制作 成都精品網(wǎng)站設(shè)計(jì)

網(wǎng)站名稱:【成都網(wǎng)站建設(shè)】 大規(guī)模存儲(chǔ)的未來——內(nèi)存云?
標(biāo)題URL:http://www.muchs.cn/news39/182389.html

成都網(wǎng)站建設(shè)公司_創(chuàng)新互聯(lián),為您提供外貿(mào)建站、網(wǎng)站建設(shè)、企業(yè)建站標(biāo)簽優(yōu)化、網(wǎng)站排名軟件開發(fā)

廣告

聲明:本網(wǎng)站發(fā)布的內(nèi)容(圖片、視頻和文字)以用戶投稿、用戶轉(zhuǎn)載內(nèi)容為主,如果涉及侵權(quán)請盡快告知,我們將會(huì)在第一時(shí)間刪除。文章觀點(diǎn)不代表本網(wǎng)站立場,如需處理請聯(lián)系客服。電話:028-86922220;郵箱:631063699@qq.com。內(nèi)容未經(jīng)允許不得轉(zhuǎn)載,或轉(zhuǎn)載時(shí)需注明來源: 創(chuàng)新互聯(lián)

成都seo排名網(wǎng)站優(yōu)化