對于早期的數(shù)據(jù)中心設(shè)計來說,這是一個驚人的變化,當(dāng)行業(yè)的主要參與廠商向數(shù)據(jù)中心投入數(shù)十億美元時,當(dāng)時新興的數(shù)字經(jīng)濟的工廠蓬勃發(fā)展。
數(shù)據(jù)中心就像人一樣:沒有兩個是完全一樣的,尤其是現(xiàn)在。十年前的分離計算、存儲,的硬件,甚至網(wǎng)絡(luò)服務(wù)運行的硬件給人們留下了堆疊在旁邊的x86的比薩餅盒子,或連接已有30年歷史的計算機主機。為什么不呢?大部分的工作是由軟件工具來定義的,并精確地定義了硬件是如何使用并何時完成的。
從虛擬機到軟件定義存儲,以及網(wǎng)絡(luò)功能的虛擬化,這些抽象層將硬件組件抽象成一些更大、更容易控制的東西。
對于早期的數(shù)據(jù)中心設(shè)計來說,這是一個驚人的變化,當(dāng)行業(yè)的主要參與廠商向數(shù)據(jù)中心投入數(shù)十億美元時,當(dāng)時新興的數(shù)字經(jīng)濟的工廠蓬勃發(fā)展。他們的崛起催生了定義如何使用空間和電源的標(biāo)準(zhǔn)委員會,以確保主要供應(yīng)商不會意外地建立一個太高或太寬的服務(wù)器,不適于用行業(yè)用戶。
如今在廉價設(shè)備上運行的分類服務(wù),通常比以往強大的設(shè)備完成得更多。而且也占用更少的空間,并在云中形成到外部資源的自然連接。
人們對基礎(chǔ)設(shè)施的做法已經(jīng)有所響應(yīng),但數(shù)據(jù)庫基本上保持不變,特別是在處理相同的數(shù)據(jù)庫的工作時,因為他們總是在這個過程中浪費了計算和存儲資源。數(shù)據(jù)中心運營商正在處理太多的信息,這將繼續(xù)下去。
數(shù)據(jù)中心信息遷移
奇怪的是,大部分行業(yè)人士都清楚地知道,過度供應(yīng)是一個問題。去年的一項研究估計,北美地區(qū)的閑置的服務(wù)器浪費的資源達(dá)300億美元。在去年九月的一項類似的研究中,華爾街日報發(fā)現(xiàn)了一個數(shù)據(jù)中心設(shè)施中,有1000多個服務(wù)器準(zhǔn)備工作,卻一直沒有工作負(fù)載。人們才得知數(shù)據(jù)中心服務(wù)器有著這樣一個驚人的資金浪費,而需要提高數(shù)據(jù)中心的效率從來沒有這么迫切。
信息通過具有無可比擬的數(shù)量和種類的數(shù)據(jù)中心移動,其速度前所未見。思科公司追蹤其視覺網(wǎng)絡(luò)指數(shù)(VNI)的變化。最新數(shù)據(jù)表明,基于互聯(lián)網(wǎng)的流量2015年每天為2艾字節(jié),相當(dāng)于自從人類出現(xiàn)以前40%的所說過的話。思科公司認(rèn)為,到了2019的年,這個數(shù)字將超過一倍,達(dá)到每天5.5艾字節(jié)。
沒有工具的軟件定義和部署數(shù)據(jù)中心資源,有效地,我們將沒有選擇,只能依靠人工過度配置來處理所有的信息,沒有痛苦的停機時間。對于大多數(shù)數(shù)據(jù)庫服務(wù),我們?nèi)匀恍枰耆脑O(shè)備配置,這使得這些關(guān)鍵系統(tǒng)成為一個瓶頸。而分解是解決問題的關(guān)鍵。
擴展到工作負(fù)載,而不是基礎(chǔ)設(shè)施
數(shù)據(jù)庫處理是主要的三種功能之一。數(shù)據(jù)服務(wù)是系統(tǒng)的核心,并定義用于存儲信息的模式??焖贆z索的索引服務(wù)分類,根據(jù)定義的參數(shù)查詢服務(wù)。大多數(shù)系統(tǒng)將一次性處理許多不同類型的請求。
其困難來自于如何利用數(shù)據(jù)庫硬件。這是所有的生硬的力量與請求分布在一個基礎(chǔ)設(shè)施。沒有一種系統(tǒng)更適合于處理一個輸入/輸出密集型數(shù)據(jù)服務(wù)。在一個單獨的系統(tǒng)中,也沒有一個機制來處理內(nèi)存密集型索引服務(wù),或者在一個不同的、優(yōu)化的機群系統(tǒng)中管理計算密集型查詢的規(guī)定。數(shù)據(jù)庫平臺不喜歡把效率提高到現(xiàn)代數(shù)據(jù)中心的計算、存儲和網(wǎng)絡(luò)服務(wù)的分離。人們需要改變,需要系統(tǒng)的發(fā)展,以不同的子系統(tǒng)獨立和按需縮放到規(guī)模數(shù)據(jù)庫服務(wù)。
有趣的是,這對大多數(shù)NoSQL數(shù)據(jù)庫來說都面臨一樣的問題,因為它是所有的關(guān)系系統(tǒng),一種低效的NoSQL數(shù)據(jù)庫,甚至有可能情況更糟,因為他們是如何經(jīng)常搭配一個大型分布式基礎(chǔ)設(shè)施。沒有辦法查詢分配到不同的節(jié)點,消耗大量的內(nèi)存和一個裸關(guān)節(jié)計算爭取資源。解決這一問題的方法是災(zāi)難性的計劃,這就是為什么我們在數(shù)據(jù)中心實施過度的配置,還會有那么多的問題的原因。
然而,它不需要是這樣的。多維數(shù)據(jù)庫縮放是從給我們帶來了虛擬化,軟件定義網(wǎng)絡(luò),并已轉(zhuǎn)化為更好的數(shù)據(jù)中心等分解技術(shù)。在其最簡單的形式中,多維縮放是軟件定義的工作負(fù)載優(yōu)化,其中管理員組裝的計算,內(nèi)存和存儲所需的工作量特性。系統(tǒng)是當(dāng)時的最佳配置避免空轉(zhuǎn)而維持需要處理高峰時的彈性。
把它看成是根據(jù)工作量的需求縮放,在這個過程中需要將每一個可用的硬件進(jìn)行優(yōu)化。而不是設(shè)計到最低限度的基礎(chǔ)設(shè)施。在這世界上充斥著數(shù)據(jù),這是一個改變,但速度不可能太快。