謹慎做資料庫技術的標準化(轉)

post0發表於2007-08-14
謹慎做資料庫技術的標準化(轉)[@more@]

  一些專欄文章之中,我提到過幾年前我曾經工作過的財富100強中的大型公司。那裡確實是一個工作的好地方,每天的工作都充滿了挑戰,如果你不喜歡你所做的事情,通常等上幾個星期就會有新的事物出現。大型公司所面臨的一個挑戰就是各種不同的技術的增多。在我們的公司中,我們一直有一個標準化的開發體系結構,問題是每三到五年,這個體系結構就會發生變化。從資料庫的角度來講,我們有面向flat-file(由不包括重複組的一組同型別記錄構成的檔案)的應用軟體(我知道不是資料庫),VSAM(我知道它不是真正的資料庫),IMS,Adabas,Datacom,DB2,Oracle,Sybase,而且我相信還有一些其他的。當SQL Server出現時,我們立即就將剩下的一些應用軟體轉移出了Adabas。

  

  

  

  很顯然,員工們不會在1975年時坐下來計劃公司在25之內使用10個檔案的系統。關於標準化技術的決策制定在逐漸地增多,而且都有著很好的原因。IMS比VSAM要好得多,Datacom又比IMS好得多。DB2出現得比較晚並被視為未來的關聯式資料庫。然而,對於客戶機伺服器來說,他們都不合適。因此,Oracle出現了。現在,誰還能忽視微軟和SQL Server的存在呢?

  

  資料庫過多的另一個原因就是公司的合併和收購。兩個公司可能都具有非常簡單的技術環境,然而,當他們合併時,就會開始出現混亂,再加上第三個公司,那就會出現麻煩了。公司的技術環境通常不是收購的原因,也不是一個障礙,它只是在收購之後需要協調的一些事情。

  

  不管怎樣,最後你都會面對一片混亂,出現的問題涉及到兩至三種資料庫技術,有時候會有五至六種,甚至是十種!

  

  多種資料庫技術帶來效率的降低

  在應用軟體支援環境下工作或是對其進行管理的所有人都很熟悉,多種資料庫技術所帶來的麻煩。

  

  許可成本。維持多個資料庫的成本是非常昂貴的。你的公司並沒有得到許可優惠帶來的好處。一般來講你可能是一個大型資料庫的使用者,但對於很多獨立的資料庫來說你只是一個小型的使用者。

  升級成本。在多個資料庫之中,似乎總是有一個或幾個資料庫需要進行升級。有時你剛剛對其中一個完成升級而另一個也需要升級了。除非在效能上有顯著的提升,那麼資料庫的升級就是一個不可避免的麻煩,通常只能帶來邊緣商業價值。

  培訓。在具有很多種資料庫的公司之中,似乎每個人都需要掌握兩種到三種。例如,如果你在客戶機伺服器領域或是Web開發領域工作,你就要懂得Oracle和SQL Server。這就是為什麼有時你在招聘時的工作描述中看到要求具有兩三種資料庫方面的知識的原因了。很多與資料庫相關的理念在資料庫與資料庫之間都是相通的,然而,他們又都有著各自獨特的特點,讓人很難成為資料庫方面的專家。

  DBA技能。在資料庫領域,資料庫管理員是真正的專家,對於他們來說,獲得並維持多種資料庫的專業級知識是非常困難的。事實上,如果不是為了支援所有的資料庫技術所必需的廣泛的技能的話,你所具有的DBA很可能比實際需要的更多。

  解決方案

  

  

  如果你能選擇的話,你可能不會希望處在維護多種資料庫技術的境地之中。然而,很多情況時,事情是不受你控制的。

  

  這個問題的最佳解決方案就是進行計劃時你的眼光至少要放在未來的三年以上。你的眼光需要放長遠,因為短期性的資料庫轉換所帶來的辛苦和成本總會比短期性利益要多。然而,如果你的眼光放長遠的話,長期性的收益和成本的節約就會變得更加有吸引力。這裡是一些你可以採取的步驟:

  

  確定什麼樣的技術最應該進行標準化,而什麼樣的技術最應該停止使用。這個決策可以從成本,技術和功能特性的角度來制定。

  著眼於非標準化資料庫技術,看一看是否有進行轉換的機會。例如,很多行銷商推出的資料包支援多個資料庫技術。在你下一次的升級工作時,也許你也可以從非標準化資料庫向標準化資料庫進行轉換。

  很多舊有的應用軟體將會退役或被取代。在這個轉換過程之中,你也可以進行資料庫方面的轉換。

  檢視商業計劃中需要進行實質性改動或提升的地方。在對應用軟體做出實質性改動的同時,也許就會有機會對非標準化資料庫進行轉換或使其退役。

  監控非標準化資料庫所使用範圍。首先,新的應用軟體不應該使用非標準化資料庫進行開發。第二點,因為應用軟體環境會不斷地升級,你會發現非標準化資料庫只被少數應用軟體所使用,也許只有一個。而完全去除掉一個資料庫所節省的許可成本就可以彌補事先移植這些應用軟體所花費的成本。

  大多數中型或大型的IT開發環境中都存在著資料庫技術的混亂。你的公司需要了解並量化支援這種環境所需要付出的努力,這裡包括許可成本和僱用具有恰當技能的人員。從嚴格的成本/收益的角度來講,向公共技術平臺進行移植所帶來的商業價值很少能在短期之內體現出來。然而,如果你有一個長期的體系構想的話,你就會發現很多放棄舊有的資料庫技術的機會。你的眼光不應該放在今天或是明天,而至少應該是在三年之後。

  


來自 “ ITPUB部落格 ” ,連結:http://blog.itpub.net/8225414/viewspace-957132/,如需轉載,請註明出處,否則將追究法律責任。

相關文章