
不同大數(shù)據(jù)分析的存儲選擇
近來大數(shù)據(jù)分析這個詞正逐漸成為IT界流行的一個術(shù)語,以代指有關(guān)大數(shù)據(jù)本身的猜想,通俗說來即成堆數(shù)據(jù)背后問題的答案。然而,如果我們能夠從足夠的數(shù)據(jù)點(diǎn)入手比對及交叉分析,或許能幫助我們找到一些有用的數(shù)據(jù),甚至可能幫助避免災(zāi)難。
問題是顯而易見的,所有的分析都需要大量甚至海量的數(shù)據(jù),這便給當(dāng)今的IT管理人員帶來了更新的挑戰(zhàn),即如何捕獲、存取、以及分析這些數(shù)據(jù)并將從中得到的分析用于后續(xù)任務(wù)的執(zhí)行?
大數(shù)據(jù)分析應(yīng)用通常會使用例如網(wǎng)絡(luò)流量、金融交易記錄以及敏感數(shù)據(jù)來替代傳統(tǒng)形式的內(nèi)容。數(shù)據(jù)本身的價值在于數(shù)據(jù)間的比對、關(guān)聯(lián)或者引用。對大數(shù)據(jù)的分析通常會意味著與大量的小數(shù)據(jù)對象打交道,而這些小數(shù)據(jù)對象往往對響應(yīng)延時要求非常之高。
當(dāng)前業(yè)界主要有兩種大數(shù)據(jù)分析場景,而它們通常是根據(jù)數(shù)據(jù)處理的形式而區(qū)分:
在實(shí)時使用場景下,響應(yīng)效率是最為關(guān)鍵的 ,因此大數(shù)據(jù)存儲架構(gòu)本身的設(shè)計(jì)需要滿足最小延時的功能。
同步,即實(shí)時的或者近乎于實(shí)時的;另外一種就是異步的方式,這種方式下,數(shù)據(jù)首先會被獲取,記錄下來然后再用批處理進(jìn)程進(jìn)行分析。
同步分析
可以想到的近乎于實(shí)時的大數(shù)據(jù)分析的最早的例子就是超級市場里的工作人員是如何統(tǒng)計(jì)消費(fèi)者行為習(xí)慣以便于提供相應(yīng)的優(yōu)惠促銷券的。事實(shí)上是,消費(fèi)者購買行為計(jì)算很可能在用戶收銀前就已經(jīng)完成,但是概念本身是非常類似的。另外一個相關(guān)的例子是在線社交網(wǎng)站可以通過訪問用戶的行為建立屬于他們的行為數(shù)據(jù)庫,這樣就可以根據(jù)各自不同的消費(fèi)習(xí)慣提供不同的點(diǎn)對點(diǎn)廣告植入。
在零售行業(yè),一些大型商鋪正開始在停車場對前來購物的消費(fèi)者使用面部識別技術(shù),這樣一旦他們路過或者經(jīng)過對應(yīng)的商鋪與之相應(yīng)的促銷信息便隨之而來。因此,在這樣一類的實(shí)時大數(shù)據(jù)分析場景中,速度是第一要素,故而大數(shù)據(jù)存儲架構(gòu)需要建設(shè)成為低延時的場景。
針對同步大數(shù)據(jù)分析的存儲
實(shí)時分析應(yīng)用通常會運(yùn)行在例如NoSQL之類的數(shù)據(jù)庫上,通常都能支持海量可擴(kuò)展的商用硬件上。Hadoop,從另一角度考慮,非常適合批量的數(shù)據(jù)處理,這種技術(shù)非常合適于異步大數(shù)據(jù)分析。由于在很多場合下,存儲本身會成為延時問題的瓶頸,那么固態(tài)存儲設(shè)備對于實(shí)時數(shù)據(jù)分析是很有幫助的。閃存存儲可以以多種形式進(jìn)行部署:作為傳統(tǒng)存儲磁盤陣列的一層,以NAS系統(tǒng)的方式,再或者以應(yīng)用服務(wù)器本身的方式都可以實(shí)現(xiàn)。
這種服務(wù)器端的閃存實(shí)施方式廣受用戶歡迎,之所以這樣是由于它能夠?qū)崿F(xiàn)最低程度的延時(因該方式下的存儲最為接近CPU),并且提供了很靈活的容量選擇,幾百GB容量就可以實(shí)現(xiàn)。SAS/SATA接口的固態(tài)硬盤本身就是個選擇,但是近來我們看到PCIe板卡為接口的固態(tài)設(shè)備逐漸成了性能應(yīng)用(比如實(shí)時分析)的標(biāo)準(zhǔn),因?yàn)橄鄬τ谇罢?,其延時更低。
如今,業(yè)界有許多提供PCIe閃存存儲的公司,包括Fusion-io、LSI、Micron Technology、SanDisk、sTec(現(xiàn)在是HGST的一部分,作為Western DigITal的一個部門)、Violin Memory以及Virident (也被Western DigITal收購)。其它所有主流服務(wù)器及存儲廠商們也都提供PCIe解決方案,大多數(shù)是與這些公司通過了OEM協(xié)議。
盡管PCIe卡最大容量已經(jīng)近乎于10 TB,但仍無法滿足用戶的需求,因此一個共享的存儲資源池也是需要考慮的。一個解決方案是使用Virident的FlashMAX Connect software,這種軟件可以實(shí)現(xiàn)將PCIe卡的資源通過服務(wù)器上的InfiniBand,進(jìn)行資源池化。
這對擴(kuò)展閃存容量會非常有幫助,尤其是對于那些PCIe插槽不足的服務(wù)器或者需要使用VMware vSphere的Storage vMotion功能的時候。通過在不同服務(wù)器之間實(shí)現(xiàn)閃存的池化,這些解決方案可以提供冗余以及高可用性方面的支持。
另外一個選擇是通過InfiniBand、光纖通道或者甚至PCIe的連接方式使用全閃存陣列。全閃存陣列的容量從10 TB到100
TB之間,可以以模塊的方式進(jìn)行擴(kuò)容。以全閃存陣列這類的高端解決方案可以提供至少100萬IOPS,相對應(yīng)到百萬微秒級別。大多數(shù)主流的存儲廠商都有相應(yīng)的全閃存陣列類別,除了IBM對Texas
Memory的收購,小廠商都有類似的產(chǎn)品并提供了更多的選擇,他們中有Kaminario、Nimbus Data Systems、Pure
Storage、Tegile、即將被思科收購的Whiptail以及Violin Memory.
異步大數(shù)據(jù)分析
異步處理的大數(shù)據(jù)分析中遵守了捕獲、存儲加分析的流程,過程中數(shù)據(jù)由傳感器、網(wǎng)頁服務(wù)器、銷售終端、移動設(shè)備等獲取,之后再存儲到相應(yīng)設(shè)備上,之后再進(jìn)行分析。由于這些類型的分析都是通過傳統(tǒng)的關(guān)系型數(shù)據(jù)庫管理系統(tǒng)(RDBMS)進(jìn)行的,數(shù)據(jù)形式都需要轉(zhuǎn)換或者轉(zhuǎn)型成為RDBMS能夠使用的結(jié)構(gòu)類型,例如行或者列的形式,并且需要和其它的數(shù)據(jù)相連續(xù)。
處理的過程被稱之為提取、變形、加載或者稱為ETL.首先將數(shù)據(jù)從源系統(tǒng)中提取處理,再將數(shù)據(jù)標(biāo)準(zhǔn)化處理且將數(shù)據(jù)發(fā)往相應(yīng)的數(shù)據(jù)倉儲等待進(jìn)一步分析。在傳統(tǒng)數(shù)據(jù)庫環(huán)境中,這種ETL步驟相對直接,因?yàn)榉治龅膶ο笸菫槿藗兪熘慕鹑趫?bào)告、銷售或者市場報(bào)表、企業(yè)資源規(guī)劃等等。然而在大數(shù)據(jù)環(huán)境下,ETL可能會變得相對復(fù)雜,因此轉(zhuǎn)型過程對于不同類型的數(shù)據(jù)源之間處理方式是不同的。
當(dāng)分析開始的時候,數(shù)據(jù)首先從數(shù)據(jù)倉儲中會被抽出來,被放進(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ù)大都會被保存下來,因?yàn)榭赡茉诤竺孢€需要再次轉(zhuǎn)換。
適用于異步大數(shù)據(jù)分析的存儲設(shè)備
在異步大數(shù)據(jù)場景下對于存儲的調(diào)整主要來自于容量、可擴(kuò)展性、可預(yù)見性,尤其是提供這些功能的成本。當(dāng)數(shù)據(jù)倉庫產(chǎn)生大量數(shù)據(jù)集的時候,磁帶存儲的延時會顯得非常大以至于無法滿足業(yè)務(wù)需求。換而言之,傳統(tǒng)的向上擴(kuò)展的磁盤存儲架構(gòu)在相同容量標(biāo)準(zhǔn)下,往往并不能做到節(jié)約成本。
橫向擴(kuò)展存儲。橫向擴(kuò)展存儲是使用模塊或者節(jié)點(diǎn)以群集的方式將資源池化,以文件系統(tǒng)的形式作為接口為大數(shù)據(jù)分析服務(wù)。例如有Dell
EqualLogic、EMC Isilon、Exablox (also object-based)、Gridstore、HP StoreAll
(之前叫Ibrix)以及IBM橫向擴(kuò)展NAS
(SONAS)。這些解決方案里,每個節(jié)點(diǎn)都包含有處理能力及磁盤容量,它們能實(shí)現(xiàn)容量與性能的并行擴(kuò)展。
Hadoop技術(shù)也被應(yīng)用于存儲架構(gòu)的方式,使得企業(yè)能夠以較低的硬件成本與較高的靈活性,搭建屬于它們自己的高可擴(kuò)展性存儲系統(tǒng)。Hadoop運(yùn)行在集群的不同節(jié)點(diǎn)上,每個節(jié)點(diǎn)都有自己的存儲及計(jì)算資源,尤其是在面對數(shù)據(jù)處理需求的時候。其它節(jié)點(diǎn)會協(xié)調(diào)這些處理任務(wù)并以分布式資源池的方式進(jìn)行處理,通常是以Hadoop分布式文件系統(tǒng)HDFS的形式存在。
為什么Hadoop對大數(shù)據(jù)意義重大
Hadoop得以在大數(shù)據(jù)應(yīng)用中廣泛應(yīng)用得益于其自身在數(shù)據(jù)提取、變形和加載(ETL)方面上的天然優(yōu)勢。Hadoop的分布式架構(gòu),將處理引擎盡可能的靠近存儲,對例如像ETL這樣的批處理操作相對合適,因?yàn)轭愃七@樣操作的批處理結(jié)果可以直接走向存儲。Hadoop的MapReduce功能實(shí)現(xiàn)了將單個任務(wù)打碎,并將碎片任務(wù)發(fā)送(Map)到多個節(jié)點(diǎn)上,之后再以單個數(shù)據(jù)集的形式加載(Reduce)到數(shù)據(jù)倉庫里。
但是對于Hadoop,特別是Hadoop分布式文件系統(tǒng)(HDFS)來說,數(shù)據(jù)至少需要三份以支持?jǐn)?shù)據(jù)的高可用性。對于TB級別的數(shù)據(jù)來說,HDFS看起來還是可行的,但當(dāng)達(dá)到PB級別海量數(shù)據(jù)的時候,其帶來的存儲成本壓力不可小覷。即便是可橫向擴(kuò)展存儲亦不能避免壓力本身,一些廠商選擇了使用RAID技術(shù)實(shí)現(xiàn)卷級別的保護(hù),而在系統(tǒng)級別則使用了復(fù)制的方式。對象存儲技術(shù)可以提供面對大型環(huán)境的數(shù)據(jù)冗余問題的解決方案。
對象存儲。基于對象的存儲架構(gòu)可以通過替代分層存儲架構(gòu)的方式,極大程度上提升可橫向擴(kuò)展存儲的優(yōu)勢,它使用的方式則是以單一索引來關(guān)聯(lián)靈活的數(shù)據(jù)對象。這將解決無限制擴(kuò)展問題,從而提升了性能本身。對象存儲系統(tǒng)包含了無需RAID或者復(fù)制作為數(shù)據(jù)保護(hù)的糾刪碼,極大程度上提升了存儲的使用效率。
不像HDFS方式下需要兩份或者三份多余數(shù)據(jù)拷貝以及額外的RAID機(jī)制,對象存儲系統(tǒng)的糾刪碼可僅以50%-60%的額外容量就能達(dá)到更高的數(shù)據(jù)保護(hù)級別。在大數(shù)據(jù)存儲級別,對于存儲本身的節(jié)省將是非常重大的。許多對象存儲系統(tǒng)亦可選擇,包括Caringo、DataDirect Networks Web Object Scaler、NetApp StorageGRID、Quantum Lattus以及開源的 OpenStack Swift和 Ceph.
一些對象存儲系統(tǒng),比如Cleversafe的,甚至可以做到與Hadoop兼容。在這些項(xiàng)目的實(shí)施中,Hadoop軟件組件可以運(yùn)行在這些對象存儲節(jié)點(diǎn)的CPU上,對象存儲系統(tǒng)將替換存儲節(jié)點(diǎn)的Hadoop分布式文件系統(tǒng)。
大數(shù)據(jù)存儲的底線
大數(shù)據(jù)分析逐漸在IT行業(yè)成為了一個熱門的話題,越來越多的企業(yè)相信它將引領(lǐng)企業(yè)走向成功。然而任何事情都有兩個方面。這件事情上來看,就是現(xiàn)有存儲技術(shù)本身。傳統(tǒng)存儲系統(tǒng)不管是在需要極低延時響應(yīng)、實(shí)時大數(shù)據(jù)應(yīng)用或者還是面對海量數(shù)據(jù)倉儲的數(shù)據(jù)挖掘應(yīng)用的時候都會遇到瓶頸。為了保證大數(shù)據(jù)分析業(yè)務(wù)能正常運(yùn)行,相應(yīng)的存儲系統(tǒng)需要足夠快,可擴(kuò)展并且性價比有優(yōu)勢。
對于閃存解決方案來說,不管是以服務(wù)器端flash卡的形式還是以全閃存陣列的形式,都提供了一些對于高性能、低延時、大容量存儲的替代解決方案?;趯ο蟮膸в胁翆懝δ芫幊痰目蓹M向擴(kuò)展架構(gòu)為使用傳統(tǒng)RAID以及復(fù)制方式的存儲結(jié)構(gòu)提供了一種能具備更高效率和更低價格的選擇。
數(shù)據(jù)分析咨詢請掃描二維碼
若不方便掃碼,搜微信號:CDAshujufenxi
SQL Server 中 CONVERT 函數(shù)的日期轉(zhuǎn)換:從基礎(chǔ)用法到實(shí)戰(zhàn)優(yōu)化 在 SQL Server 的數(shù)據(jù)處理中,日期格式轉(zhuǎn)換是高頻需求 —— 無論 ...
2025-09-18MySQL 大表拆分與關(guān)聯(lián)查詢效率:打破 “拆分必慢” 的認(rèn)知誤區(qū) 在 MySQL 數(shù)據(jù)庫管理中,“大表” 始終是性能優(yōu)化繞不開的話題。 ...
2025-09-18CDA 數(shù)據(jù)分析師:表結(jié)構(gòu)數(shù)據(jù) “獲取 - 加工 - 使用” 全流程的賦能者 表結(jié)構(gòu)數(shù)據(jù)(如數(shù)據(jù)庫表、Excel 表、CSV 文件)是企業(yè)數(shù)字 ...
2025-09-18DSGE 模型中的 Et:理性預(yù)期算子的內(nèi)涵、作用與應(yīng)用解析 動態(tài)隨機(jī)一般均衡(Dynamic Stochastic General Equilibrium, DSGE)模 ...
2025-09-17Python 提取 TIF 中地名的完整指南 一、先明確:TIF 中的地名有哪兩種存在形式? 在開始提取前,需先判斷 TIF 文件的類型 —— ...
2025-09-17CDA 數(shù)據(jù)分析師:解鎖表結(jié)構(gòu)數(shù)據(jù)特征價值的專業(yè)核心 表結(jié)構(gòu)數(shù)據(jù)(以 “行 - 列” 規(guī)范存儲的結(jié)構(gòu)化數(shù)據(jù),如數(shù)據(jù)庫表、Excel 表、 ...
2025-09-17Excel 導(dǎo)入數(shù)據(jù)含缺失值?詳解 dropna 函數(shù)的功能與實(shí)戰(zhàn)應(yīng)用 在用 Python(如 pandas 庫)處理 Excel 數(shù)據(jù)時,“缺失值” 是高頻 ...
2025-09-16深入解析卡方檢驗(yàn)與 t 檢驗(yàn):差異、適用場景與實(shí)踐應(yīng)用 在數(shù)據(jù)分析與統(tǒng)計(jì)學(xué)領(lǐng)域,假設(shè)檢驗(yàn)是驗(yàn)證研究假設(shè)、判斷數(shù)據(jù)差異是否 “ ...
2025-09-16CDA 數(shù)據(jù)分析師:掌控表格結(jié)構(gòu)數(shù)據(jù)全功能周期的專業(yè)操盤手 表格結(jié)構(gòu)數(shù)據(jù)(以 “行 - 列” 存儲的結(jié)構(gòu)化數(shù)據(jù),如 Excel 表、數(shù)據(jù) ...
2025-09-16MySQL 執(zhí)行計(jì)劃中 rows 數(shù)量的準(zhǔn)確性解析:原理、影響因素與優(yōu)化 在 MySQL SQL 調(diào)優(yōu)中,EXPLAIN執(zhí)行計(jì)劃是核心工具,而其中的row ...
2025-09-15解析 Python 中 Response 對象的 text 與 content:區(qū)別、場景與實(shí)踐指南 在 Python 進(jìn)行 HTTP 網(wǎng)絡(luò)請求開發(fā)時(如使用requests ...
2025-09-15CDA 數(shù)據(jù)分析師:激活表格結(jié)構(gòu)數(shù)據(jù)價值的核心操盤手 表格結(jié)構(gòu)數(shù)據(jù)(如 Excel 表格、數(shù)據(jù)庫表)是企業(yè)最基礎(chǔ)、最核心的數(shù)據(jù)形態(tài) ...
2025-09-15Python HTTP 請求工具對比:urllib.request 與 requests 的核心差異與選擇指南 在 Python 處理 HTTP 請求(如接口調(diào)用、數(shù)據(jù)爬取 ...
2025-09-12解決 pd.read_csv 讀取長浮點(diǎn)數(shù)據(jù)的科學(xué)計(jì)數(shù)法問題 為幫助 Python 數(shù)據(jù)從業(yè)者解決pd.read_csv讀取長浮點(diǎn)數(shù)據(jù)時的科學(xué)計(jì)數(shù)法問題 ...
2025-09-12CDA 數(shù)據(jù)分析師:業(yè)務(wù)數(shù)據(jù)分析步驟的落地者與價值優(yōu)化者 業(yè)務(wù)數(shù)據(jù)分析是企業(yè)解決日常運(yùn)營問題、提升執(zhí)行效率的核心手段,其價值 ...
2025-09-12用 SQL 驗(yàn)證業(yè)務(wù)邏輯:從規(guī)則拆解到數(shù)據(jù)把關(guān)的實(shí)戰(zhàn)指南 在業(yè)務(wù)系統(tǒng)落地過程中,“業(yè)務(wù)邏輯” 是連接 “需求設(shè)計(jì)” 與 “用戶體驗(yàn) ...
2025-09-11塔吉特百貨孕婦營銷案例:數(shù)據(jù)驅(qū)動下的精準(zhǔn)零售革命與啟示 在零售行業(yè) “流量紅利見頂” 的當(dāng)下,精準(zhǔn)營銷成為企業(yè)突圍的核心方 ...
2025-09-11CDA 數(shù)據(jù)分析師與戰(zhàn)略 / 業(yè)務(wù)數(shù)據(jù)分析:概念辨析與協(xié)同價值 在數(shù)據(jù)驅(qū)動決策的體系中,“戰(zhàn)略數(shù)據(jù)分析”“業(yè)務(wù)數(shù)據(jù)分析” 是企業(yè) ...
2025-09-11Excel 數(shù)據(jù)聚類分析:從操作實(shí)踐到業(yè)務(wù)價值挖掘 在數(shù)據(jù)分析場景中,聚類分析作為 “無監(jiān)督分組” 的核心工具,能從雜亂數(shù)據(jù)中挖 ...
2025-09-10統(tǒng)計(jì)模型的核心目的:從數(shù)據(jù)解讀到?jīng)Q策支撐的價值導(dǎo)向 統(tǒng)計(jì)模型作為數(shù)據(jù)分析的核心工具,并非簡單的 “公式堆砌”,而是圍繞特定 ...
2025-09-10