當前位置:編程學習大全網 - 編程語言 - 數據庫的發展簡史

數據庫的發展簡史

使用計算機後,隨著數據處理量的增長,產生了數據管理技術。數據管理技術的發展與計算機硬件(主要是外部存儲器)系統軟件及計算機應用的範圍有著密切的聯系。數據管理技術的發展經歷了以下四個階段:人工管理階段、文件系統階段、數據庫階段和高級數據庫技術階段。

數據管理的誕生

數據庫的歷史可以追溯到五十年前,那時的數據管理非常簡單。通過大量的分類、比較和表格繪制的機器運行數百萬穿孔卡片來進行數據的處理,其運行結果在紙上打印出來或者制成新的穿孔卡片。而數據管理就是對所有這些穿孔卡片進行物理的儲存和處理。然而,1950 年雷明頓蘭德公司(Remington Rand Inc)的壹種叫做Univac I 的計算機推出了壹種壹秒鐘可以輸入數百條記錄的磁帶驅動器,從而引發了數據管理的革命。1956 年IBM生產出第壹個磁盤驅動器—— the Model 305 RAMAC。此驅動器有50 個盤片,每個盤片直徑是2 英尺,可以儲存5MB的數據。使用磁盤最大的好處是可以隨機存取數據,而穿孔卡片和磁帶只能順序存取數據。

1951: Univac系統使用磁帶和穿孔卡片作為數據存儲。

數據庫系統的萌芽出現於二十世紀60 年代。當時計算機開始廣泛地應用於數據管理,對數據的***享提出了越來越高的要求。傳統的文件系統已經不能滿足人們的需要,能夠統壹管理和***享數據的數據庫管理系統(DBMS)應運而生。數據模型是數據庫系統的核心和基礎,各種DBMS軟件都是基於某種數據模型的。所以通常也按照數據模型的特點將傳統數據庫系統分成網狀數據庫、層次數據庫和關系數據庫三類。

最早出現的網狀DBMS,是美國通用電氣公司Bachman等人在1961年開發的IDS(Integrated Data Store)。1964年通用電氣公司(General ElectricCo.)的Charles Bachman 成功地開發出世界上第壹個網狀DBMS也即第壹個數據庫管理系統——集成數據存儲(Integrated Data Store IDS),奠定了網狀數據庫的基礎,並在當時得到了廣泛的發行和應用。IDS 具有數據模式和日誌的特征,但它只能在GE主機上運行,並且數據庫只有壹個文件,數據庫所有的表必須通過手工編碼生成。之後,通用電氣公司壹個客戶——BF Goodrich Chemical 公司最終不得不重寫了整個系統,並將重寫後的系統命名為集成數據管理系統(IDMS)。

網狀數據庫模型對於層次和非層次結構的事物都能比較自然的模擬,在關系數據庫出現之前網狀DBMS要比層次DBMS用得普遍。在數據庫發展史上,網狀數據庫占有重要地位。

層次型DBMS是緊隨網絡型數據庫而出現的,最著名最典型的層次數據庫系統是IBM 公司在1968 年開發的IMS(Information Management System),壹種適合其主機的層次數據庫。這是IBM公司研制的最早的大型數據庫系統程序產品。從60年代末產生起,如今已經發展到IMSV6,提供群集、N路數據***享、消息隊列***享等先進特性的支持。這個具有30年歷史的數據庫產品在如今的WWW應用連接、商務智能應用中扮演著新的角色。

1973年Cullinane公司(也就是後來的Cullinet軟件公司),開始出售Goodrich公司的IDMS改進版本,並且逐漸成為當時世界上最大的軟件公司。 網狀數據庫和層次數據庫已經很好地解決了數據的集中和***享問題,但是在數據獨立性和抽象級別上仍有很大欠缺。用戶在對這兩種數據庫進行存取時,仍然需要明確數據的存儲結構,指出存取路徑。而後來出現的關系數據庫較好地解決了這些問題。

1970年,IBM的研究員E.F.Codd博士在刊物《Communication of the ACM》上發表了壹篇名為“A Relational Model of Data for Large Shared Data Banks”的論文,提出了關系模型的概念,奠定了關系模型的理論基礎。盡管之前在1968年Childs已經提出了面向集合的模型,然而這篇論文被普遍認為是數據庫系統歷史上具有劃時代意義的裏程碑。Codd的心願是為數據庫建立壹個優美的數據模型。後來Codd又陸續發表多篇文章,論述了範式理論和衡量關系系統的12條標準,用數學理論奠定了關系數據庫的基礎。關系模型有嚴格的數學基礎,抽象級別比較高,而且簡單清晰,便於理解和使用。但是當時也有人認為關系模型是理想化的數據模型,用來實現DBMS是不現實的,尤其擔心關系數據庫的性能難以接受,更有人視其為當時正在進行中的網狀數據庫規範化工作的嚴重威脅。為了促進對問題的理解,1974年ACM牽頭組織了壹次研討會,會上開展了壹場分別以Codd和Bachman為首的支持和反對關系數據庫兩派之間的辯論。這次著名的辯論推動了關系數據庫的發展,使其最終成為現代數據庫產品的主流。

1969年Edgar F.“Ted” Codd發明了關系數據庫。

1970年關系模型建立之後,IBM公司在San Jose實驗室增加了更多的研究人員研究這個項目,這個項目就是著名的System R。其目標是論證壹個全功能關系DBMS的可行性。該項目結束於1979年,完成了第壹個實現SQL的 DBMS。然而IBM對IMS的承諾阻止了System R的投產,壹直到1980年System R才作為壹個產品正式推向市場。IBM產品化步伐緩慢的三個原因:IBM重視信譽,重視質量,盡量減少故障;IBM是個大公司,官僚體系龐大,IBM內部已經有層次數據庫產品,相關人員不積極,甚至反對。

然而同時,1973年加州大學伯克利分校的Michael Stonebraker和Eugene Wong利用System R已發布的信息開始開發自己的關系數據庫系統Ingres。他們開發的Ingres項目最後由Oracle公司、Ingres公司以及矽谷的其他廠商所商品化。後來,System R和Ingres系統雙雙獲得ACM的1988年“軟件系統獎”。

1976年霍尼韋爾公司(Honeywell)開發了第壹個商用關系數據庫系統——Multics Relational Data Store。關系型數據庫系統以關系代數為堅實的理論基礎,經過幾十年的發展和實際應用,技術越來越成熟和完善。其代表產品有Oracle、IBM公司的 DB2、微軟公司的MS SQL Server以及Informix、ADABAS D等等。 1974年IBM的Ray Boyce和Don Chamberlin將Codd關系數據庫的12條準則的數學定義以簡單的關鍵字語法表現出來,裏程碑式地提出了SQL(Structured Query Language)語言。SQL語言的功能包括查詢、操縱、定義和控制,是壹個綜合的、通用的關系數據庫語言,同時又是壹種高度非過程化的語言,只要求用戶指出做什麽而不需要指出怎麽做。SQL集成實現了數據庫生命周期中的全部操作。SQL提供了與關系數據庫進行交互的方法,它可以與標準的編程語言壹起工作。自產生之日起,SQL語言便成了檢驗關系數據庫的試金石,而SQL語言標準的每壹次變更都指導著關系數據庫產品的發展方向。然而,直到二十世紀七十年代中期,關系理論才通過SQL在商業數據庫Oracle和DB2中使用。

1986年,ANSI把SQL作為關系數據庫語言的美國標準,同年公布了標準SQL文本。SQL標準有3個版本。基本SQL定義是ANSⅨ3135-89,“Database Language - SQL with Integrity Enhancement”[ANS89],壹般叫做SQL-89。SQL-89定義了模式定義、數據操作和事務處理。SQL- 89和隨後的ANSⅨ3168-1989,“Database Language-Embedded SQL”構成了第壹代SQL標準。ANSⅨ3135-1992[ANS92]描述了壹種增強功能的SQL,叫做SQL-92標準。SQL-92包括模式操作,動態創建和SQL語句動態執行、網絡環境支持等增強特性。在完成SQL-92標準後,ANSI和ISO即開始合作開發SQL3標準。SQL3的主要特點在於抽象數據類型的支持,為新壹代對象關系數據庫提供了標準。

1976年IBM E.F.Codd發表了壹篇裏程碑的論文“R系統:數據庫關系理論”,介紹了關系數據庫理論和查詢語言SQL。Oracle的創始人Ellison非常仔細地閱讀了這篇文章,被其內容震驚,這是第壹次有人用全面壹致的方案管理數據信息。作者E.F.Codd 1966年就發表了關系數據庫理論,並在IBM研究機構開發原型,這個項目就是R系統,存取數據表的語言就是SQL。Ellison看完後,敏銳意識到在這個研究基礎上可以開發商用軟件系統。而當時大多數人認為關系數據庫不會有商業價值。Ellison認為這是他們的機會:他們決定開發通用商用數據庫系統Oracle,這個名字來源於他們曾給中央情報局做過的項目名。幾個月後,他們就開發了Oracle 1.0。但這只不過是個玩具,除了完成簡單關系查詢不能做任何事情,他們花相當長的時間才使Oracle變得可用,維持公司運轉主要靠承接壹些數據庫管理項目和做顧問咨詢工作。而IBM卻沒有計劃開發,為什麽藍色巨人放棄了這個價值上百億的產品,原因有很多:IBM的研究人員大多是學術出身,他們最感興趣的是理論,而非推向市場的產品,從學術上看,研究成果應公開發表論文和演講能使他們成名,為什麽不呢?還有壹個很主要的原因就是IBM當時有壹個銷售得還不錯的層次數據庫產品IMS。直到1985年IBM才發布了關系數據庫DB2 ,Ellision那時已經成了千萬富翁。Ellison曾將IBM 選擇Microsoft 的MS-DOS作為IBM-PC機的操作系統比為:“世界企業經營歷史上最嚴重的錯誤,價值超過了上千億美元。”IBM發表R系統論文,而且沒有很快推出關系數據庫產品的錯誤可能僅僅次之。Oracle的市值在1996年就達到了280億美元。 隨著信息技術和市場的發展,人們發現關系型數據庫系統雖然技術很成熟,但其局限性也是顯而易見的:它能很好地處理所謂的“表格型數據”,卻對技術界出現的越來越多的復雜類型的數據無能為力。九十年代以後,技術界壹直在研究和尋求新型數據庫系統。但在什麽是新型數據庫系統的發展方向的問題上,產業界壹度是相當困惑的。受當時技術風潮的影響,在相當壹段時間內,人們把大量的精力花在研究“面向對象的數據庫系統(object oriented database)”或簡稱“OO數據庫系統”。值得壹提的是,美國Stonebraker教授提出的面向對象的關系型數據庫理論曾壹度受到產業界的青睞。而Stonebraker本人也在當時被Informix花大價錢聘為技術總負責人。

然而,數年的發展表明,面向對象的關系型數據庫系統產品的市場發展的情況並不理想。理論上的完美性並沒有帶來市場的熱烈反應。其不成功的主要原因在於,這種數據庫產品的主要設計思想是企圖用新型數據庫系統來取代現有的數據庫系統。這對許多已經運用數據庫系統多年並積累了大量工作數據的客戶,尤其是大客戶來說,是無法承受新舊數據間的轉換而帶來的巨大工作量及巨額開支的。另外,面向對象的關系型數據庫系統使查詢語言變得極其復雜,從而使得無論是數據庫的開發商家還是應用客戶都視其復雜的應用技術為畏途。 二十世紀六十年代後期出現了壹種新型數據庫軟件:決策支持系統(DSS),其目的是讓管理者在決策過程中更有效地利用數據信息。於是在1970年,第壹個聯機分析處理工具——Express誕生了。其他決策支持系統緊隨其後,許多是由公司的IT部門開發出來的。

1985年,第壹個商務智能系統(business intelligence)由Metaphor計算機系統有限公司為Procter & Gamble公司開發出來,主要是用來連接銷售信息和零售的掃描儀數據。同年, Pilot軟件公司開始出售第壹個商用客戶/服務器執行信息系統——Command Center。同樣在這年,加州大學伯克利分校Ingres項目演變成Postgres,其目標是開發出壹個面向對象的數據庫。此後壹年, Graphael公司開發了第壹個商用的對象數據庫系統—Gbase。

1988年,IBM公司的研究者Barry Devlin和Paul Murphy發明了壹個新的術語—信息倉庫,之後,IT的廠商開始構建實驗性的數據倉庫。1991年,W.H. Bill Inmon出版了壹本“如何構建數據倉庫”的書,使得數據倉庫真正開始應用。

1991: W.H.“Bill” Inmon發表了”構建數據倉庫”

二十世紀九十年代,隨著基於PC的客戶/服務器計算模式和企業軟件包的廣泛采用,數據管理的變革基本完成。數據管理不再僅僅是存儲和管理數據,而轉變成用戶所需要的各種數據管理的方式。Internet的異軍突起以及XML語言的出現,給數據庫系統的發展開辟了壹片新的天地。

  • 上一篇:守望先鋒源氏屎+v宏怎麽做?
  • 下一篇:需c語言編程實例100例 發到 zhushi8886@163.com
  • copyright 2024編程學習大全網