二、云計算對關系型數(shù)據(jù)庫的影響
正如10Gen工程副總裁Geir Magnusson所指出那樣,“在云計算計劃里將找不到關系數(shù)據(jù)庫的影子,這并非偶然,因為關系數(shù)據(jù)庫不適合用于云計算環(huán)境”。同時他還指出:“云計算是一種不同的技術,不同得足夠改變開發(fā)者看待問題和解決問題的方式”。“我們將不得不重新審視我們做事的方式”。
例如:許多被專門開發(fā)用于云計算環(huán)境的新型數(shù)據(jù)庫,包括Google韻Bigtable,Amazon的SimpleDB,10Gen的Mongo,AppJet的AppJet數(shù)據(jù)庫以及甲骨文開源BerkelyDB。這些數(shù)據(jù)庫沒有一個是關系型的。
這些數(shù)據(jù)庫具有一些共同特征,正是這些特征使它們特別適用于服務云計算式的應用。它們中的大多數(shù)可以在分布式環(huán)境中運行,這意味著他們可以分布在多個地點的多臺服務器上。它們本質(zhì)上都不是事務性的,并且都犧牲了一些高級查詢能力以換取更好的性能。在很多情況下,這些數(shù)據(jù)庫可以通過對象調(diào)用來檢索,而不用SQL。
盡管大型關系數(shù)據(jù)庫已經(jīng)被應用在很多數(shù)據(jù)處理中心,但云計算需要一種不同的設置來充分發(fā)揮其潛力。試想,在跨越地理空間距離之間執(zhí)行復雜查詢以便減少響應時間、設計和維護支持不同位置的相關數(shù)據(jù)備份、在一個點癱瘓時能保證該數(shù)據(jù)同步、維護和運行這樣的體系并非易事。因此,數(shù)據(jù)庫組成部分在不同位置的分散對云計算很必要,這也是云計算產(chǎn)生的原因。更重要的是云體系結構具有不同于目前使用的關系型結構的屬性,在云體系結構里,關系不復存在,人們以群集形式看待數(shù)據(jù)。
目前用戶所使用的傳統(tǒng)數(shù)據(jù)庫開發(fā)軟件系統(tǒng)本質(zhì)應該叫數(shù)據(jù)庫軟件系統(tǒng),是一個數(shù)據(jù)庫系統(tǒng),開發(fā)這樣的系統(tǒng)非常簡單,成本也非常低廉,只要根據(jù)需求先設計好數(shù)據(jù)表結構,然后,設計編寫大量SQL語句,雖然也使用JAVA/PHP/.NET等語言,但實際上這些語言只是將SQL送往數(shù)據(jù)庫執(zhí)行的運輸工,沒有什么價值和地位。所以,這樣的系統(tǒng)運行在互聯(lián)網(wǎng)環(huán)境下,主要負載就集中在數(shù)據(jù)庫的SQL運行上,也就是說:整個軟件系統(tǒng)性能關鍵點就集中在數(shù)據(jù)庫上了,數(shù)據(jù)庫是性能的主要承擔者,盡管用戶使用的有可能是Websphere/weblogic等應用服務器,但是由于Java只是運輸工,所以起不到性能上分散負載的作用。
正是由于以上種種原因,有專家認為云計算對關系型數(shù)據(jù)庫的應用將產(chǎn)生巨大的影響,而絕大多數(shù)電子商務系統(tǒng)所使用的數(shù)據(jù)庫還是基于關系型的數(shù)據(jù)庫,隨著云計算的大量應用,勢必對電子商務數(shù)據(jù)庫的構建產(chǎn)生影響,進而影響整個電子商務技術的發(fā)展。
|