雲端儲存技術帶來了什麼
雲端計算將帶來一場革命。技術革命一定是源於某項技術突破,那麼雲端計算又是源於何?從技術的視角看,雲端計算所突破的就是海量儲存技術以及在此基礎上的平行計算技術的突破,上述技術突破展現出來的幾乎無限的擴充套件、海量計算以及高可用的特性正是企業所迫切需要的。本文將就企業資訊系統中如何更好應用上述技術進行探索。

雲端儲存技術帶來了什麼
這裡所說的雲端儲存技術並非特指某項技術,而是一大類技術的統稱,一般來自只要是具有以下特徵的資料庫都可以被看作是雲端儲存技術。首先是共有幾乎無限的擴充套件能力,可以支撐幾百TB直至PB級的資料;此外,是採用了平行計算模式從而獲得海量運算能力。簡而言之,當計算能力不足,無論是儲存還是運算,對於需求提出方而言,就是簡單的增加機器即可實現。雲端儲存更進一步的特徵便是高可用性,也就是說,在任何時候都能夠保證系統正常使用,即便有機器發生故障。
作為可擴充套件性是指系統架構可以讓系統提供更多的服務而不降低使用效能的特性。通過現有的機器增加硬體的容量、記憶體進行垂直擴充套件,這是最簡單的達到可擴充套件性的手段,但這有個限度。而水平擴充套件則需要增加更多機器,每臺機器提供全部或部分資料。這樣所有主機都不必負擔全部業務請求。但軟體自己需要有內部機制來保證叢集中節點間的資料同步。而云儲存技術所帶來的可擴充套件性幾乎是無限的,並且對於投資者而言投入(硬體投資)與產出(提供更多的服務)幾乎是線性的。
水平擴充套件說到底就是使用更多的主機來承擔運算。假設一臺主機在執行一年的時間裡發生的故障是n次,那麼20臺主機在執行一年的時間裡發牛故障的次數則為 20×n,由此看出當某個叢集中主機的數量達到一定程度,在一年中發生故障的概率將會非常大,甚至每天有機器發生故障也不是危言聳聽。許多雲儲存技術都將此作為基本的設計前提,凶此雲端儲存技術天生具有良好的高可用性與容錯性。
是否可把現在的企業應用都替換了?不行。實行應用前需先滿足CAP理論,依據這個理論,一個大規模分散式資料庫系統,有以下三個需求:
一致性(Consistency):對於所有的資料庫客戶端使用同樣的查詢都可以得到同樣的結果,即使是有併發更新的時候也是如此。
可用性(AvailabiLity):所有的資料庫客戶端總是可以讀寫資料。
分割槽耐受性(Partition Tolerance):資料庫可以分散到多臺機器上,即使發生網路故障,被分成多個分割槽,依然可以提供服務。
CAP理論指出,同時只能具有這三個特性中的兩個。傳統的關係型資料庫所強調的是一致性(C)與可用性(A),而在分割槽耐受性(P)方面的支援十分有限。而云儲存技術特別強調了分割槽耐受性(P),從而彌補了關係型資料庫在此方面的不足,接下來的區別就是選擇可用性(A)還是一致性(C)了。對於CP系統,放棄的是可用性(A),資料可保持一致性,但如果有節點發生故障,仍然會有部分資料無法訪問;而對於AP系統,放棄的則是一致性(C),那麼你的系統就有可能返回不太精確的資料。
以上技術特點決定了雲端儲存技術有一些特別擅長的領域。例如訪問流量可能會非常大,即隨時訪問資料量非常大,從而需要大規模分散式部署。考察讀寫操作的比例,特別適合統計分析型工作。有時對於資料一致性要求並不高,可以容忍當某個資料被寫入後,在一段合理的時間內可能會有部分使用者讀到的是寫入之前的資料,搜尋業務就是一個典型例子。但同時也有些計算領域並非雲端儲存技術所擅長。例如事務密集型計算,這類計算對一致性要求非常高,相比讀操作,寫操作會頻繁持續發生。
通過以上分析,我們發現,年輕的雲端儲存技術並非完美無暇,看似古老的關係型資料庫在其面前也並非一無是處。雲端儲存技術現在不是,將來也不應該是關係型資料庫的替代者。在我們為它所展現出來的那些令人激動的特性面前,必須冷靜分析,這是否就是企業運算所需要的?至少現在看來不是全部。
企業應用探索
顯然不是所有的企業計算都適合使用雲端儲存,採用關係型資料庫也許仍然是目前的最佳選擇。那麼應該將其用在哪裡?以下列舉兩個目前較適合採取雲端儲存技術的應用領域。
資料倉庫
資料倉庫將集中來自幾乎所有業務生產系統的資料,對外提供企業的各種查詢報表以及資料分析。從功能看這是一個典型的統計分析型工作,日常大量發生的都是讀操作。另一方面需要週期性地從業務生產系統收集原始資料,並可能需要對其進行進一步的資料加工,這一過程繁瑣密集。資料量無疑非常大,實際生產中的資料倉庫通常需要保留幾年至十幾年的資料,可以達到TB級,其中一些資料表可能會達到幾十億條甚至更多的記錄數。以上這些需求特點決定了其特別適合採用雲端儲存技術。
企業統一資料庫
所謂企業統一資料庫,就是將企業執行中所基於的各種資料集中到一個應用系統中進行統一管理,再由這個系統以服務的方式,提供給所有需要的其他業務系統,所提供的服務除普通查詢外,還應包含基於搜尋引擎的資料搜尋服務,包括商品(以及商品類別、品牌)、合作伙伴(供應商、客戶、加盟商等)、合同(採購合同、銷售合同、加盟合同等)等。在這個應用中讀操作發生的頻率將遠大於寫操作,尤其當其以線上方式提供資料服務時更是如此,例如為網店提供資料服務。
雲端儲存在內的一系列雲端計算技術都還處於起步階段,就如IT歷史上的其他新技術一樣,在為我們展示出令人激動的新特性同時,還有很多不足。這些不足既包括技術本身還有很多有待完善的地方,也包括圍繞其後續開發工具不足導致的進入門檻偏高,以及與傳統技術的融合程度不高等等。但這些並不妨礙它未來美好的明天,為客戶不斷創造新的價值。