數(shù)據(jù)存儲(chǔ)技術(shù)介紹

aab312
傳統(tǒng)存儲(chǔ)系統(tǒng)不管是在需要極低延時(shí)響應(yīng)、實(shí)時(shí)大數(shù)據(jù)應(yīng)用或者還是面對(duì)海量數(shù)據(jù)倉(cāng)儲(chǔ)的數(shù)據(jù)挖掘應(yīng)用的時(shí)候都會(huì)遇到瓶頸。為了保證大數(shù)據(jù)分析業(yè)務(wù)能正常運(yùn)行,相應(yīng)的存儲(chǔ)系統(tǒng)需要足夠快,可擴(kuò)展并且性價(jià)比有優(yōu)勢(shì)。

目前市場(chǎng)上有兩種類型的大數(shù)據(jù)分析方式--同步的和異步的,兩種都有各自在存儲(chǔ)容量和特性上的要求。

近來(lái)大數(shù)據(jù)分析這個(gè)詞正逐漸成為IT界流行的一個(gè)術(shù)語(yǔ),以代指有關(guān)大數(shù)據(jù)本身的猜想,通俗說(shuō)來(lái)即成堆數(shù)據(jù)背后問(wèn)題的答案。然而,如果我們能夠從足夠的數(shù)據(jù)點(diǎn)入手比對(duì)及交叉分析,或許能幫助我們找到一些有用的數(shù)據(jù),甚至可能幫助避免災(zāi)難。

問(wèn)題是顯而易見的,所有的分析都需要大量甚至海量的數(shù)據(jù),這便給當(dāng)今的IT管理人員帶來(lái)了更新的挑戰(zhàn),即如何捕獲、存取、以及分析這些數(shù)據(jù)并將從中得到的分析用于后續(xù)任務(wù)的執(zhí)行?

大數(shù)據(jù)分析應(yīng)用通常會(huì)使用例如網(wǎng)絡(luò)流量、金融交易記錄以及敏感數(shù)據(jù)來(lái)替代傳統(tǒng)形式的內(nèi)容。數(shù)據(jù)本身的價(jià)值在于數(shù)據(jù)間的比對(duì)、關(guān)聯(lián)或者引用。對(duì)大數(shù)據(jù)的分析通常會(huì)意味著與大量的小數(shù)據(jù)對(duì)象打交道,而這些小數(shù)據(jù)對(duì)象往往對(duì)響應(yīng)延時(shí)要求非常之高。

當(dāng)前業(yè)界主要有兩種大數(shù)據(jù)分析場(chǎng)景,而它們通常是根據(jù)數(shù)據(jù)處理的形式而區(qū)分:

在實(shí)時(shí)使用場(chǎng)景下,響應(yīng)效率是最為關(guān)鍵的,因此大數(shù)據(jù)存儲(chǔ)架構(gòu)本身的設(shè)計(jì)需要滿足最小延時(shí)的功能。

同步,即實(shí)時(shí)的或者近乎于實(shí)時(shí)的;另外一種就是異步的方式,這種方式下,數(shù)據(jù)首先會(huì)被獲取,記錄下來(lái)然后再用批處理進(jìn)程進(jìn)行分析。

同步分析

可以想到的近乎于實(shí)時(shí)的大數(shù)據(jù)分析的最早的例子就是超級(jí)市場(chǎng)里的工作人員是如何統(tǒng)計(jì)消費(fèi)者行為習(xí)慣以便于提供相應(yīng)的優(yōu)惠促銷券的。

事實(shí)上是,消費(fèi)者購(gòu)買行為計(jì)算很可能在用戶收銀前就已經(jīng)完成,但是概念本身是非常類似的。另外一個(gè)相關(guān)的例子是在線社交網(wǎng)站可以通過(guò)訪問(wèn)用戶的行為建立屬于他們的行為數(shù)據(jù)庫(kù),這樣就可以根據(jù)各自不同的消費(fèi)習(xí)慣提供不同的點(diǎn)對(duì)點(diǎn)廣告植入。

在零售行業(yè),一些大型商鋪正開始在停車場(chǎng)對(duì)前來(lái)購(gòu)物的消費(fèi)者使用面部識(shí)別技術(shù),這樣一旦他們路過(guò)或者經(jīng)過(guò)對(duì)應(yīng)的商鋪與之相應(yīng)的促銷信息便隨之而來(lái)。因此,在這樣一類的實(shí)時(shí)大數(shù)據(jù)分析場(chǎng)景中,速度是第一要素,故而大數(shù)據(jù)存儲(chǔ)架構(gòu)需要建設(shè)成為低延時(shí)的場(chǎng)景。

針對(duì)同步大數(shù)據(jù)分析的存儲(chǔ)

實(shí)時(shí)分析應(yīng)用通常會(huì)運(yùn)行在例如NoSQL之類的數(shù)據(jù)庫(kù)上,通常都能支持海量可擴(kuò)展的商用硬件上。Hadoop,從另一角度考慮,非常適合批量的數(shù)據(jù)處理,這種技術(shù)非常合適于異步大數(shù)據(jù)分析。

由于在很多場(chǎng)合下,存儲(chǔ)本身會(huì)成為延時(shí)問(wèn)題的瓶頸,那么固態(tài)存儲(chǔ)設(shè)備對(duì)于實(shí)時(shí)數(shù)據(jù)分析是很有幫助的。閃存存儲(chǔ)可以以多種形式進(jìn)行部署:作為傳統(tǒng)存儲(chǔ)磁盤陣列的一層,以NAS系統(tǒng)的方式,再或者以應(yīng)用服務(wù)器本身的方式都可以實(shí)現(xiàn)。

這種服務(wù)器端的閃存實(shí)施方式廣受用戶歡迎,之所以這樣是由于它能夠?qū)崿F(xiàn)最低程度的延時(shí)(因該方式下的存儲(chǔ)最為接近CPU),并且提供了很靈活的容量選擇,幾百GB容量就可以實(shí)現(xiàn)。

SAS/SATA接口的固態(tài)硬盤本身就是個(gè)選擇,但是近來(lái)我們看到PCIe板卡為接口的固態(tài)設(shè)備逐漸成了性能應(yīng)用(比如實(shí)時(shí)分析)的標(biāo)準(zhǔn),因?yàn)橄鄬?duì)于前者,其延時(shí)更低。

如今,業(yè)界有許多提供PCIe閃存存儲(chǔ)的公司,包括Fusion-io、LSI、Micron Technology、SanDisk、sTec(現(xiàn)在是HGST的一部分,作為Western Digital的一個(gè)部門)、Violin Memory以及Virident(也被Western Digital收購(gòu))。其它所有主流服務(wù)器及存儲(chǔ)廠商們也都提供PCIe解決方案,大多數(shù)是與這些公司通過(guò)了OEM協(xié)議。

盡管PCIe卡最大容量已經(jīng)近乎于10 TB,但仍無(wú)法滿足用戶的需求,因此一個(gè)共享的存儲(chǔ)資源池也是需要考慮的。一個(gè)解決方案是使用Virident的FlashMAX Connect software,這種軟件可以實(shí)現(xiàn)將PCIe卡的資源通過(guò)服務(wù)器上的InfiniBand,進(jìn)行資源池化。

這對(duì)擴(kuò)展閃存容量會(huì)非常有幫助,尤其是對(duì)于那些PCIe插槽不足的服務(wù)器或者需要使用VMware vSphere的Storage vMotion功能的時(shí)候。通過(guò)在不同服務(wù)器之間實(shí)現(xiàn)閃存的池化,這些解決方案可以提供冗余以及高可用性方面的支持。

另外一個(gè)選擇是通過(guò)InfiniBand、光纖通道或者甚至PCIe的連接方式使用全閃存陣列。全閃存陣列的容量從10 TB到100 TB之間,可以以模塊的方式進(jìn)行擴(kuò)容。以全閃存陣列這類的高端解決方案可以提供至少100萬(wàn)IOPS,相對(duì)應(yīng)到百萬(wàn)微秒級(jí)別。

大多數(shù)主流的存儲(chǔ)廠商都有相應(yīng)的全閃存陣列類別,除了IBM對(duì)Texas Memory的收購(gòu),小廠商都有類似的產(chǎn)品并提供了更多的選擇,他們中有Kaminario、Nimbus Data Systems、Pure Storage、Tegile、即將被思科收購(gòu)的Whiptail以及Violin Memory.

異步大數(shù)據(jù)分析

異步處理的大數(shù)據(jù)分析中遵守了捕獲、存儲(chǔ)加分析的流程,過(guò)程中數(shù)據(jù)由傳感器、網(wǎng)頁(yè)服務(wù)器、銷售終端、移動(dòng)設(shè)備等獲取,之后再存儲(chǔ)到相應(yīng)設(shè)備上,之后再進(jìn)行分析。由于這些類型的分析都是通過(guò)傳統(tǒng)的關(guān)系型數(shù)據(jù)庫(kù)管理系統(tǒng)(RDBMS)進(jìn)行的,數(shù)據(jù)形式都需要轉(zhuǎn)換或者轉(zhuǎn)型成為RDBMS能夠使用的結(jié)構(gòu)類型,例如行或者列的形式,并且需要和其它的數(shù)據(jù)相連續(xù)。

處理的過(guò)程被稱之為提取、變形、加載或者稱為ETL.首先將數(shù)據(jù)從源系統(tǒng)中提取處理,再將數(shù)據(jù)標(biāo)準(zhǔn)化處理且將數(shù)據(jù)發(fā)往相應(yīng)的數(shù)據(jù)倉(cāng)儲(chǔ)等待進(jìn)一步分析。在傳統(tǒng)數(shù)據(jù)庫(kù)環(huán)境中,這種ETL步驟相對(duì)直接,因?yàn)榉治龅膶?duì)象往往是為人們熟知的金融報(bào)告、銷售或者市場(chǎng)報(bào)表、企業(yè)資源規(guī)劃等等。然而在大數(shù)據(jù)環(huán)境下,ETL可能會(huì)變得相對(duì)復(fù)雜,因此轉(zhuǎn)型過(guò)程對(duì)于不同類型的數(shù)據(jù)源之間處理方式是不同的。

當(dāng)分析開始的時(shí)候,數(shù)據(jù)首先從數(shù)據(jù)倉(cāng)儲(chǔ)中會(huì)被抽出來(lái),被放進(jìn)RDBMS里以產(chǎn)生需要的報(bào)告或者支撐相應(yīng)的商業(yè)智能應(yīng)用。在大數(shù)據(jù)分析的環(huán)節(jié)中,裸數(shù)據(jù)以及經(jīng)轉(zhuǎn)換了的數(shù)據(jù)大都會(huì)被保存下來(lái),因?yàn)榭赡茉诤竺孢€需要再次轉(zhuǎn)換。

適用于異步大數(shù)據(jù)分析的存儲(chǔ)設(shè)備

在異步大數(shù)據(jù)場(chǎng)景下對(duì)于存儲(chǔ)的調(diào)整主要來(lái)自于容量、可擴(kuò)展性、可預(yù)見性,尤其是提供這些功能的成本。當(dāng)數(shù)據(jù)倉(cāng)庫(kù)產(chǎn)生大量數(shù)據(jù)集的時(shí)候,磁帶存儲(chǔ)的延時(shí)會(huì)顯得非常大以至于無(wú)法滿足業(yè)務(wù)需求。換而言之,傳統(tǒng)的向上擴(kuò)展的磁盤存儲(chǔ)架構(gòu)在相同容量標(biāo)準(zhǔn)下,往往并不能做到節(jié)約成本。

橫向擴(kuò)展存儲(chǔ)。橫向擴(kuò)展存儲(chǔ)是使用模塊或者節(jié)點(diǎn)以群集的方式將資源池化,以文件系統(tǒng)的形式作為接口為大數(shù)據(jù)分析服務(wù)。例如有Dell EqualLogic、EMC Isilon、Exablox(also object-based)、Gridstore、HP StoreAll(之前叫Ibrix)以及IBM橫向擴(kuò)展NAS(SONAS)。這些解決方案里,每個(gè)節(jié)點(diǎn)都包含有處理能力及磁盤容量,它們能實(shí)現(xiàn)容量與性能的并行擴(kuò)展。

Hadoop技術(shù)也被應(yīng)用于存儲(chǔ)架構(gòu)的方式,使得企業(yè)能夠以較低的硬件成本與較高的靈活性,搭建屬于它們自己的高可擴(kuò)展性存儲(chǔ)系統(tǒng)。Hadoop運(yùn)行在集群的不同節(jié)點(diǎn)上,每個(gè)節(jié)點(diǎn)都有自己的存儲(chǔ)及計(jì)算資源,尤其是在面對(duì)數(shù)據(jù)處理需求的時(shí)候。其它節(jié)點(diǎn)會(huì)協(xié)調(diào)這些處理任務(wù)并以分布式資源池的方式進(jìn)行處理,通常是以Hadoop分布式文件系統(tǒng)HDFS的形式存在。

為什么Hadoop對(duì)大數(shù)據(jù)意義重大

Hadoop得以在大數(shù)據(jù)應(yīng)用中廣泛應(yīng)用得益于其自身在數(shù)據(jù)提取、變形和加載(ETL)方面上的天然優(yōu)勢(shì)。Hadoop的分布式架構(gòu),將處理引擎盡可能的靠近存儲(chǔ),對(duì)例如像ETL這樣的批處理操作相對(duì)合適。

因?yàn)轭愃七@樣操作的批處理結(jié)果可以直接走向存儲(chǔ)。Hadoop的MapReduce功能實(shí)現(xiàn)了將單個(gè)任務(wù)打碎,并將碎片任務(wù)發(fā)送(Map)到多個(gè)節(jié)點(diǎn)上,之后再以單個(gè)數(shù)據(jù)集的形式加載(Reduce)到數(shù)據(jù)倉(cāng)庫(kù)里。

但是對(duì)于Hadoop,特別是Hadoop分布式文件系統(tǒng)(HDFS)來(lái)說(shuō),數(shù)據(jù)至少需要三份以支持?jǐn)?shù)據(jù)的高可用性。對(duì)于TB級(jí)別的數(shù)據(jù)來(lái)說(shuō),HDFS看起來(lái)還是可行的,但當(dāng)達(dá)到PB級(jí)別海量數(shù)據(jù)的時(shí)候,其帶來(lái)的存儲(chǔ)成本壓力不可小覷。即便是可橫向擴(kuò)展存儲(chǔ)亦不能避免壓力本身,一些廠商選擇了使用RAID技術(shù)實(shí)現(xiàn)卷級(jí)別的保護(hù),而在系統(tǒng)級(jí)別則使用了復(fù)制的方式。對(duì)象存儲(chǔ)技術(shù)可以提供面對(duì)大型環(huán)境的數(shù)據(jù)冗余問(wèn)題的解決方案。

對(duì)象存儲(chǔ)?;趯?duì)象的存儲(chǔ)架構(gòu)可以通過(guò)替代分層存儲(chǔ)架構(gòu)的方式,極大程度上提升可橫向擴(kuò)展存儲(chǔ)的優(yōu)勢(shì),它使用的方式則是以單一索引來(lái)關(guān)聯(lián)靈活的數(shù)據(jù)對(duì)象。這將解決無(wú)限制擴(kuò)展問(wèn)題,從而提升了性能本身。對(duì)象存儲(chǔ)系統(tǒng)包含了無(wú)需RAID或者復(fù)制作為數(shù)據(jù)保護(hù)的糾刪碼,極大程度上提升了存儲(chǔ)的使用效率。

不像HDFS方式下需要兩份或者三份多余數(shù)據(jù)拷貝以及額外的RAID機(jī)制,對(duì)象存儲(chǔ)系統(tǒng)的糾刪碼可僅以50%-60%的額外容量就能達(dá)到更高的數(shù)據(jù)保護(hù)級(jí)別。

在大數(shù)據(jù)存儲(chǔ)級(jí)別,對(duì)于存儲(chǔ)本身的節(jié)省將是非常重大的。對(duì)象存儲(chǔ)系統(tǒng)亦可選擇,包括Caringo,DataDirect Networks Web Object Scaler,NetApp StorageGRID,Quantum Lattus以及開源的OpenStack Swift和Ceph.

一些對(duì)象存儲(chǔ)系統(tǒng),比如Cleversafe的,甚至可以做到與Hadoop兼容。在這些項(xiàng)目的實(shí)施中,Hadoop軟件組件可以運(yùn)行在這些對(duì)象存儲(chǔ)節(jié)點(diǎn)的CPU上,對(duì)象存儲(chǔ)系統(tǒng)將替換存儲(chǔ)節(jié)點(diǎn)的Hadoop分布式文件系統(tǒng)。

大數(shù)據(jù)存儲(chǔ)的底線

大數(shù)據(jù)分析逐漸在IT行業(yè)成為了一個(gè)熱門的話題,越來(lái)越多的企業(yè)相信它將引領(lǐng)企業(yè)走向成功。然而任何事情都有兩個(gè)方面。這件事情上來(lái)看,就是現(xiàn)有存儲(chǔ)技術(shù)本身。

傳統(tǒng)存儲(chǔ)系統(tǒng)不管是在需要極低延時(shí)響應(yīng)、實(shí)時(shí)大數(shù)據(jù)應(yīng)用或者還是面對(duì)海量數(shù)據(jù)倉(cāng)儲(chǔ)的數(shù)據(jù)挖掘應(yīng)用的時(shí)候都會(huì)遇到瓶頸。為了保證大數(shù)據(jù)分析業(yè)務(wù)能正常運(yùn)行,相應(yīng)的存儲(chǔ)系統(tǒng)需要足夠快,可擴(kuò)展并且性價(jià)比有優(yōu)勢(shì)。

對(duì)于閃存解決方案來(lái)說(shuō),不管是以服務(wù)器端flash卡的形式還是以全閃存陣列的形式,都提供了一些對(duì)于高性能、低延時(shí)、大容量存儲(chǔ)的替代解決方案?;趯?duì)象的帶有擦寫功能編程的可橫向擴(kuò)展架構(gòu)為使用傳統(tǒng)RAID以及復(fù)制方式的存儲(chǔ)結(jié)構(gòu)提供了一種能具備更高效率和更低價(jià)格的選擇。

THEEND

最新評(píng)論(評(píng)論僅代表用戶觀點(diǎn))

更多
暫無(wú)評(píng)論