大數據這一概念的存在已有些時日,不過其濫用程度快超過了“云”
有趣的是,一些大型的傳統存儲供應商正接受這一概念,似乎這個名詞已經成了大型數據集及其產品的代名詞。大數據實際上與傳統存儲供應商的技術和商業模式都成對立關系。
一個正在形成的共識是:大數據不僅僅是指大量數據,而是特指無法用傳統方法處理的大型數據集。那么這里所說的傳統方法是指哪些呢?要回答這個問題,就要看一看這些方法本來是為了解決什么問題。
在企業IT歷史中,最大的問題是確保傳輸系統順暢,快捷且準確地運行。這一需求為IT打開了一條通道,即專屬整體服務器上部署專屬關系型數據庫。
當規模較小,具有較高價值且結構化的數據遭遇威脅要崩潰時比較適合選用傳統IT堆棧。例如,Web規模應用就推動了LAMP堆棧等需求,它可以滿足運算分布并在大量商業服務器上提供服務。同樣,非結構化數據的爆發式增長導致存儲硬件相同的商品化需求。
某種程度上,大數據意味著整個傳統IT堆棧的挑戰——即數據庫,運算和存儲。這就是為什么需要新堆棧(存儲,MapReduce和Query)的原因。正如LAMP堆棧對IT的轉變,筆者相信大數據SMAQ堆棧也會改變IT。
想象一下,假如你不僅能夠保存和服務十多億份文檔,還能夠對這些文件執行復雜的分析,例如分析文件之間的關聯模式。許多現有與大數據相關的技術來自于大型網絡公司處理這些問題的項目。
假設,你不僅僅需要保存上百萬份與天氣數據相關的文件,還需要分析與氣候改變模式相關的數據。那么問題不僅僅涉及大量數據的保存,還需要利用那些對模式和趨勢有研究意義的數據。
傳統數據庫遠不止上述任務。各種設計的局限性使得關系型數據庫處理問題的能力很出色,如保留傳輸記錄限制了數據庫的擴展能力。幸好,上述分析通常不需要絕對的精確度。
同樣,傳統存儲和運算也不止這個任務。上述分析和存儲最好是通過將數據和存儲分配到大量商業存儲設備上執行,再將運算分配給大量運算設備完成。你或許可以想象得到,輸入數據按順序在所有分布式設備上進行處理,然后傳送到中間數據集。這些中間結果會精簡到一個數據集中,而這個概括性的數據集就是所需的最終結果。這兩個過程分別叫做Map和Reduce,在SMAQ的首字母縮略語中標記M。
最近我們看到了首字母為M,A和Q的技術涌現出來。對于開源愛好者而言,最令他們激動的事情就是關注Hadoop生態系統。
如我們常??吹降?,存儲需要匹配剩余的IT堆棧。數據集本身需要高度分布。數據和大數據的運算出現在種類繁多的分布式設備上。
而且,由于將運算導入數據比將數據導入運算要容易,所以SMAQ堆棧的存儲部分需要確保所有未結構化數據和半結構化數據的安全而有效地分布到所有運算節點,且既可以被擴展也可以滿足高性能的要求。這意味著大數據必須:
a) 在廣布于互聯網的各種商業設備上運行
b) 為與分析相關的密集式數據處理提供性能幫助
c) 避免設計失誤,如集中式元數據存儲以及大量遺留系統將存儲大小限制在16TB
d) 允許在相同硬件上出現運算和存儲功能。綜上所述,將運算遷移到存儲的成本更低。不過如果存儲被鎖定那就會有些麻煩。
e) 擴展至PB級別甚至是EB級別。
結論:專屬與整體的存儲方法不適合大數據。不過,隨著大數據SMAQ技術的不斷發展,相信大數據存儲和存儲效益方面的價值會被充分地釋放出來。
原文鏈接:http://storage.it168.com/a2011/0828/1238/000001238679.shtml