很難想象,現在還有什麼應用跟數據庫無關。就連微軟的下一代操作系統Vista,也要用其數據庫來組織其新式的文件系統。可以說,經過多年的發展,數據已經成為整個信息化進程和下一階段發展的最可寶貴的資源,而保存和管理數據資源的數據庫,其技術的發展和進步,就成為了最值得關心和重視的問題。從層次型數據庫到管理關系型數據庫,乃至目前的同時支持關系型和XML的混合型數據庫DB2 9,數據庫管理技術在其發展的將近40年的歷程中,大致經歷了以上3個階段。
IMS:早期的層次數據庫
數據庫管理系統出現以前的數據管理非常原始簡陋,數據處理依靠穿孔卡片來進行時,彼時的數據管理,只是對卡片進行物理的存儲和處理。數據的存儲和管理極其麻煩和復雜,根本無法體現出高效性。在1956年IBM生產出第一個磁盤驅動器(Model 305 RAMac)之後,引發了數據管理的革命,並且因此得以隨機存儲數據。 此後,出現了最早版本的數據庫,即網狀數據庫管理系統(DBMS),由通用電氣公司1961年開發成功,其IDS(Integrated DataStore,集成數據存儲)是世界上第一個網狀DBMS,也是第一個DBMS。但是它只能運行於通用電氣的主機上,且數據庫只有一個文件,所有的表必須通過手工編碼生成,有著極大的局限性。 為此,IBM開發的層次數據庫IMS(Information Management System,信息管理系統)受到了極大的歡迎,成為了最著名也是最典型的層次型數據庫管理系統。
1966年,IBM與其客戶(北美洛克維爾公司和卡特彼勒公司)合作,共同開發新型數據庫,用於幫助NASA管理宏大的阿波羅計劃中的繁瑣資料,並且在1968年由IBM的工程師完成。1969年,該數據庫作為IBM的產品發布時被更名為“IMS(Information Management System,信息管理系統)。在1969年,NASA成功發射了阿波羅11號實現了人類首次登月之後,NASA繼續在其航天飛機計劃中使用著該產品。直至今日,該數據庫一直有著用武之地,在如今的互聯網應用連接、商務智能等應用中找到了全新的角色。
RDBMS:關系數據庫的出現
雖然層次數據庫已經可以很好地解決數據集中和共享的問題,但是其在數據獨立性和抽象級別上依然有著欠缺。 還好,就在1970年,IBM研究員E.F.Codd提出了關系模型的概念,由此奠定了關系模型的理論基礎。他所發表的論文“A Relational Model of Data for Large Shared Data Banks”也被認為是數據庫系統歷史上具備劃時代意義的裡程碑。在經過不斷的發展和論證之後,最終使得更具備優勢的關系型數據庫成為了市場的主流。隨後,在1974年,IBM公司的Ray Boyce和Don Chamberlin提出了SQL語言,它實現了數據庫生命周期中的全部操作,為關系數據庫奠定了另一塊裡程碑。
在1979年,IBM完成了第一個實現SQL的DBMS。在20世紀的80年代早期,IBM利用了RDBMS和SQL的第二階段的技術,創建了新型的數據庫產品,並將其命名為DB2,也就是擁有第二代技術的數據庫產品。而在過去的歲月中,DB2已經從重要的大型機產品發展成為可在各種服務器平台上運行的產品。尤其是在System 390(即目前所稱的System z)中,DB2已經成為分布式計算的核心。
盡管不斷地有同時期廠商的數據庫產品的競爭,但是DB2依然在高端企業應用市場受到了廣泛的應用及好評。經過多年的發展和進步,在System z和安裝了Linux系統的英特爾平台上,已經運行有近50萬台的DB2數據服務器。
IBM DB2 9:首款混合型的數據服務器
隨著信息化進程的發展和企業間、企業內部信息交換的需要,XML作為標准化的數據存儲格式,其數據量正面臨著巨大的增長。而事實上,每個行業都在實施著XML數據標准,新版的微軟Office軟件也將以XML格式存儲文檔。此外,正有越來越多的公司開始轉向使用XML技術,以便在不同的系統和應用程序之間交換數據並適應快速變化的環境,從而幫助他們逐步實現SOA。結合了關系型數據庫和層次型數據庫二者特點的DB2 9(代號Viper)引入了另外一種可能-混合型數據庫,該數據庫可以非常好地支持XML數據,同時也對其他技術包括SQL、表格數據結構和各種DBMS特性的支持依然存在。
在此之前,文件系統可以應付簡單的任務,但是在需要處理大量文檔時它們就表現不佳。並發性、恢復、安全和可用性等問題變得難以管理。盡管商業關系數據庫管理系統(DBMS)解決了這些問題,但是在其他方面有所欠缺。DBMS通常只是提供兩種基本的數據庫設計選項――將每個 XML 文檔完整地存儲為一個大型對象,或者將它“撕開”,分散存儲在多個表的多個列中。這樣不僅無法完整體現XML的層次結構,而且效率低下、不夠靈活。
此外,純粹的XML DBMS 在IT基礎設施中引入了一種新型的環境,但是這樣的環境還沒有經過考驗,其集成能力、所需要的人員技能以及未來的生命力也都不確定。因此,必須找尋可以高效共享、搜索和管理公司大量XML文檔和消息的系統,以便幫助企業減少存儲和使用XML數據所需要的時間及工作量,以期減少應用開發費用且提高業務靈活性。混合型數據庫DB2 9正好適應了這樣的需要。通過DB2 9,用戶可以使用同一個數據庫對象同時管理“傳統的”SQL數據和XML文檔,甚至,還可以編寫一個查詢同時搜索和處理這兩種數據形式。
具有如此特點的DB2,是業界第一款也是惟一一款可以使用行業標准接口的關系數據來管理pureXML的數據庫,它在三個領域具備了獨到的創新:XML數據管理、數據壓縮和SAP優化。其中,最重要的功能即XML數據管理,它使用了IBM的“pureXML”解決方案來管理以XML格式存儲的數據。
這意味著DB2 9可以提供XML數據的“原生態”存儲,而無需將數據轉化成行列格式,更無需將其作為大型對象來存儲。為實現這樣的功能,IBM對DB2進行了擴展,使DB2 9包含了如下的新技術: 新的存儲技術,可以高效地管理 XML 文檔中固有的層次結構。
新的索引技術,可以提高在 XML 文檔之間和內部進行搜索的速度。
新的查詢語言支持(對於 XQuery)、
新的圖形化查詢構建器(對於 XQuery)和新的查詢優化技術。
根據用戶提供的模式檢驗 XML 數據的能力。
新的管理功能,包括對關鍵數據庫工具的擴展。
與流行的應用程序編程接口(API)的集成。
而通過應用壓縮技術,DB2 9在客戶的實際測試中,可以為客戶節約40~80%的存儲需求,同時能夠維護甚至改善應用程序的性能。基於DB2 9的革命性的創新與性能,SAP也為使用mySAP商業應用程序的中小型客戶選用了DB2 9作為數據服務器。