最近,大家都在討論大數(shù)據(jù)分析及其帶來(lái)的商業(yè)情報(bào)的價(jià)值,但是在企業(yè)從這些數(shù)據(jù)中挖掘出有效信息之前,他們必須弄清楚該如何存儲(chǔ)這些大數(shù)據(jù)。
完全不同的PB級(jí)基礎(chǔ)設(shè)施
“PB級(jí)基礎(chǔ)設(shè)施是完全不同的一回事,”Day表示,“它們很難建立和維護(hù)。PB或多PB級(jí)基礎(chǔ)設(shè)施與傳統(tǒng)大規(guī)模數(shù)據(jù)集之間的差別簡(jiǎn)直就像白天和黑夜的差別,就像在筆記本電腦上處理數(shù)據(jù)和在RAID陣列上處理數(shù)據(jù)之間的差別。”
當(dāng)Day在2009年加入Shutterfly時(shí),存儲(chǔ)已經(jīng)成為該公司最大的開支,并且以飛快的速度增長(zhǎng)。
“每N個(gè)PB的額外存儲(chǔ)意味著我們需要另一個(gè)存儲(chǔ)管理員來(lái)支持物理和邏輯基礎(chǔ)設(shè)施,”Day表示,“面對(duì)大規(guī)模數(shù)據(jù)存儲(chǔ),系統(tǒng)會(huì)更頻繁地出問(wèn)題,任何管理超大存儲(chǔ)的人經(jīng)常都要處理硬件故障。大家都在試圖解決的根本問(wèn)題是:當(dāng)你知道存儲(chǔ)的一部分將在一段時(shí)間內(nèi)出現(xiàn)問(wèn)題,你應(yīng)該如何確保數(shù)據(jù)可用性,同時(shí)確保不會(huì)降低性能?”
RAID問(wèn)題
解決故障的標(biāo)準(zhǔn)答案是復(fù)制,通常以RAID陣列的形式。但Day表示,面對(duì)龐大規(guī)模的數(shù)據(jù)時(shí),RAID解決問(wèn)題的同時(shí)可能會(huì)制造更多問(wèn)題。在傳統(tǒng)RAID數(shù)據(jù)存儲(chǔ)方案中,每個(gè)數(shù)據(jù)的副本都被鏡像和存儲(chǔ)在陣列的不同磁盤中,以確保完整性和可用性。但這意味著每個(gè)被鏡像和存儲(chǔ)的數(shù)據(jù)將需要其本身五倍以上的存儲(chǔ)空間。隨著RAID陣列中使用的磁盤越來(lái)越大(從密度和功耗的角度來(lái)看,3TB磁盤非常具有吸引力),更換故障驅(qū)動(dòng)器的時(shí)間也將變得越來(lái)越長(zhǎng)。
“實(shí)際上,我們使用RAID并不存在任何操作問(wèn)題,”Day表示,“我們看到的是,隨著磁盤變得越來(lái)越大,當(dāng)任何組件發(fā)生故障時(shí),我們回到一個(gè)完全冗余的系統(tǒng)的時(shí)間增加。生成校驗(yàn)是與數(shù)據(jù)集的大小成正比的。當(dāng)我們開始使用1TB和2TB的磁盤時(shí),回到完全冗余系統(tǒng)的時(shí)間變得很長(zhǎng)??梢哉f(shuō),這種趨勢(shì)并沒(méi)有朝著正確的方向發(fā)展。”
對(duì)于Shutterfly而言,可靠性和可用性是非常關(guān)鍵的因素,這也是企業(yè)級(jí)存儲(chǔ)的要求。Day表示,其快速膨脹的存儲(chǔ)成本使商品系統(tǒng)變得更具吸引力。當(dāng)Day及其團(tuán)隊(duì)在研究潛在技術(shù)解決方案以幫助控制存儲(chǔ)成本時(shí),他們對(duì)于一項(xiàng)叫做糾刪碼(erasure code)的技術(shù)非常感興趣。
采用擦除代碼技術(shù)的下一代存儲(chǔ)
里德-所羅門糾刪碼最初作為前向糾錯(cuò)碼(Forward Error Correction, FEC)用于不可靠通道的數(shù)據(jù)傳輸,例如外層空間探測(cè)的數(shù)據(jù)傳輸。這項(xiàng)技術(shù)還被用于CD和DVD來(lái)處理光盤上的故障,例如灰塵和劃痕。一些存儲(chǔ)供應(yīng)商已經(jīng)開始將糾刪碼納入他們的解決方案中。使用糾刪碼,數(shù)據(jù)可以被分解成幾塊,單塊分解數(shù)據(jù)是無(wú)用的,然后它們被分散到不同磁盤驅(qū)動(dòng)器或者服務(wù)器。在任何使用,這些數(shù)據(jù)都可以完全重組,即使有些數(shù)據(jù)塊因?yàn)榇疟P故障已經(jīng)丟失。換句話說(shuō),你不需要?jiǎng)?chuàng)建多個(gè)數(shù)據(jù)副本,單個(gè)數(shù)據(jù)就可以確保數(shù)據(jù)的完整性和可用性。
基于糾刪碼的解決方案的早期供應(yīng)商之一是Cleversafe公司,他們添加了位置信息來(lái)創(chuàng)建其所謂的分散編碼,讓用戶可以在不同位置(例如多個(gè)數(shù)據(jù)中心)存儲(chǔ)數(shù)據(jù)塊或者說(shuō)數(shù)據(jù)片。
每個(gè)數(shù)據(jù)塊就其自身而言是無(wú)用的,這樣能夠確保隱私性和安全性。因?yàn)樾畔⒎稚⒓夹g(shù)使用單一數(shù)據(jù)來(lái)確保數(shù)據(jù)完整性和可用性,而不是像RAID一樣使用多個(gè)副本,公司可以節(jié)省多達(dá)90%的存儲(chǔ)成本。
“當(dāng)你將試圖重組數(shù)據(jù)時(shí),你并不一定需要提供所有數(shù)據(jù)塊,”Cleversafe公司產(chǎn)品策略、市場(chǎng)營(yíng)銷和客戶解決方案副總裁Russ Kennedy表示,“你生成的數(shù)據(jù)塊的數(shù)量,我們稱之為寬度,我們將重組數(shù)據(jù)需要的最低數(shù)量稱之為門檻。你生成的數(shù)據(jù)塊的數(shù)量和重組需要的數(shù)量之間的差異決定了其可靠性。同時(shí),即使你丟失節(jié)點(diǎn)和驅(qū)動(dòng)器,你仍然能夠得到原來(lái)形式的數(shù)據(jù)。通過(guò)RAID你能夠獲取的最高可靠性是雙奇偶校驗(yàn),你可以丟失兩個(gè)驅(qū)動(dòng)器,而通過(guò)我們的解決方案,你最多可以丟失六個(gè)。”
糾刪碼也是一個(gè)基于軟件的技術(shù),這意味著它可以與商品硬件使用,更大程度地降低了成本。
建立下一代存儲(chǔ)基礎(chǔ)設(shè)施
“在確定正確的技術(shù)后,我們看了很多這個(gè)領(lǐng)域提供解決方案的供應(yīng)商,”Day表示,“我們希望自己來(lái)建立,但是如果我們能夠找到一個(gè)滿足我們的要求且具備可靠系統(tǒng)的公司,那事情就更好辦了。”
Shutterfly將四家供應(yīng)商帶到其實(shí)驗(yàn)室進(jìn)行評(píng)估,為其數(shù)據(jù)中心需要的存儲(chǔ)設(shè)備建立原型,Day表示,他希望看到性能、可用性、容錯(cuò)率和管理方面的評(píng)估信息。
“我們有一個(gè)專門管理照片存檔的工作人員,”他表示,“2010年我們遇到的最大問(wèn)題之一就是照片存檔的不斷增加,使我們不得不壯大員工隊(duì)伍,但這增加了我們的開支。”
Day表示經(jīng)過(guò)評(píng)估,Cleversafe更加適合Shutterfly,這主要是因?yàn)樵摴驹敢馀cShutterfly配合根據(jù)Shutterfly的需求來(lái)調(diào)整其解決方案。這兩家公司開始經(jīng)歷了一些列的概念證明階段,包括在Shutterfly實(shí)驗(yàn)室的負(fù)載和性能測(cè)試。在Shutterfly對(duì)操作和性能感到滿意后,Cleversafe在生產(chǎn)中放置了一個(gè)并行存儲(chǔ)基礎(chǔ)設(shè)施,直接將所有Shutterfly流量的副本導(dǎo)向Cleversafe。
“每張上傳的照片都被寫入我們?cè)械幕A(chǔ)設(shè)施和Cleversafe的基礎(chǔ)設(shè)施,”Day表示,“我們運(yùn)行了六個(gè)月,包括節(jié)假日。”
節(jié)假日是Shutterfly的高峰期,因?yàn)橛脩襞牧撕芏嗾掌?/p>
Shutterfly在2011年開始使用Cleversafe的存儲(chǔ)解決方案,并一直將其作為主要圖像庫(kù)。
基于糾刪碼存儲(chǔ)的總體擁有成本
“這其實(shí)是一個(gè)軟件解決方案,讓我們可以部署非常具有成本效益的硬件,”Day表示,“從總體擁有成本角度來(lái)看,這給我們帶來(lái)了巨大的改變。我們與硬件供應(yīng)商溝通時(shí),具有更大的靈活性,并且能夠保證我們購(gòu)買最具成本效益的驅(qū)動(dòng)器和基礎(chǔ)設(shè)施。”
Day表示,“管理存儲(chǔ)池也大大簡(jiǎn)化。”
“基本上我們只需要添加另一個(gè)存儲(chǔ)塊,它會(huì)自動(dòng)被添加到我們?yōu)槠渲付ǖ拇鎯?chǔ)池,”他表示,“以前,我們每次添加額外的存儲(chǔ)空間,都不得不重復(fù)相同的工作。”
另外,現(xiàn)在當(dāng)驅(qū)動(dòng)器故障或者脫機(jī)時(shí),Shutterfly的存儲(chǔ)基礎(chǔ)設(shè)施能夠?qū)⑵錁?biāo)記為“不可用”,并繞過(guò)該驅(qū)動(dòng)器來(lái)路由數(shù)據(jù),同時(shí)透明地恢復(fù)該驅(qū)動(dòng)器上的數(shù)據(jù)。Day表示其團(tuán)隊(duì)現(xiàn)在可以簡(jiǎn)單地發(fā)現(xiàn)故障,然后根據(jù)預(yù)定的維護(hù)時(shí)間表更換受影響的基礎(chǔ)設(shè)施。
“我們不再需要像以前一樣增加人員,”他表示,“我們?nèi)匀辉谠鲩L(zhǎng),但是速度比以前慢得多。日常維護(hù)工作量有所下降,管理員能夠花更多時(shí)間在其他項(xiàng)目上。”
只要存儲(chǔ)數(shù)據(jù),就具有洞察力
Shutterfly只是一家與大多數(shù)公司一樣需要處理大量數(shù)據(jù)的互聯(lián)網(wǎng)公司,各行各業(yè)的公司都正在面對(duì)不斷增加的數(shù)據(jù)量。
Day表示:“在過(guò)去四五年間,我們看到很多應(yīng)用程序和技術(shù)進(jìn)入市場(chǎng),讓處理大數(shù)據(jù)成為可能,這真的非常令人激動(dòng),因?yàn)檫@些技術(shù)讓企業(yè)能夠通過(guò)分析細(xì)粒度數(shù)據(jù)而獲取業(yè)務(wù)價(jià)值。”
“我們正處在大數(shù)據(jù)的非常早期階段,”Day表示,“另一個(gè)有趣的因素是隨著企業(yè)開始面對(duì)更多實(shí)時(shí)客戶交互,他們正產(chǎn)生大量數(shù)據(jù),現(xiàn)在我們能通過(guò)分析這些數(shù)據(jù)獲取真正具有影響力的商業(yè)洞察力,但這些都取決于我們可靠地存儲(chǔ)大量數(shù)據(jù)的能力。”