數(shù)據(jù)庫歷史數(shù)據(jù)

        發(fā)布時間:2017-01-18 來源: 歷史回眸 點擊:

        數(shù)據(jù)庫歷史數(shù)據(jù)篇一:常見數(shù)據(jù)庫設計(2)——歷史數(shù)據(jù)問題之單記錄變更

        在各種應用軟件中,客戶總是希望看到自己操作關鍵業(yè)務的歷史數(shù)據(jù)(更或者是將來的歷史數(shù)據(jù),如本年計劃明年的商品價格),并且要跟蹤變化來源于哪一個版本。歷史記錄,如果我們按某次修改時,需要新增的記錄條件的角度來看,如果只需要新增一條記錄(如商品價格的變動,一次只變動),我們稱之為單記錄變更;如果我們需要新增一條記錄,并且還需要在不同的表中新增對應的詳細記錄并且是一對多的關系時(如報價時,我們需要儲存報價流水和報價物品清單列表),我們稱之為多記錄變更。

        一,單記錄變更、無儲存未來歷史記錄的需求,儲存于單表中

        付款計劃 PayPlan

        字段名 類型 是否可空 中文名 描述 id char(36) no guid

        ...其它屬性...

        numintno 版本號 在某個項目中遞增

        is_useintno 是否啟用 默認0否,1是

        use_date datetimeyes ischeck int no 是否確認 默認0未確認,1確認

        checker char(36) yes 確認人

        check_date datetime yes 確認日期

        說明:用戶添加一條數(shù)據(jù),未確認時,可以修改、刪除。但是當用戶確認時(當項目使用工作流時,也可以用工作流替換確認的3個字段),

        更新is_use為1(是),并且更新操作人信息。在用戶確認完之后,不能添加,修改、刪除。 需要修改時,則將原有數(shù)據(jù)復制一份(除主鍵外),并設置版本號加1,設置is_use和ischeck=0,設置use_date、checker和check_date為NULL,然后修改操作在新的版本中進行,并且系統(tǒng)中使用的依然是前一個版本的數(shù)據(jù)。當修改流水,確認后,需要先將本類其它的is_use改為0,并且更新自己的is_use為1及其它信息。

        二,單記錄變更、無儲存未來歷史記錄的需求,儲存于多表中(一個主表存儲在用記錄,另一個子表儲存歷史記錄)

        在上一個方案中,[單記錄變更、無儲存未來歷史記錄的需求,儲存于單表中],如果當變更頻率高中,表中的數(shù)據(jù)量增大,為了獲取在用的那條記錄(客戶是常用到的就是這個),查詢時間會浪費在很多無用的記錄上。為了解決無關的數(shù)據(jù)問題,我們將在用的數(shù)據(jù)儲存于主表中,而變更的歷史,儲存于子表,這樣我們在獲取在用記錄時,就去除了很多無用的數(shù)據(jù)。

        付款計劃 PayPlan

        字段名類型 是否可空 中文名描述

        idchar(36) no guid

        ...其它屬性...

        num intno版本號在某個項目中遞增

        is_use intno是否啟用 默認0否,1是

        ischeck intno是否確認 默認0未確認,1確認

        checkerchar(36) yes 確認人

        check_date datetime yes 確認日期

        付款計劃 PayPlanVar

        字段名 類型 是否可空 中文名 描述

        id char(36) no guid

        pay_plan_Id char(36) no 付款計劃編號,主表的編號

        ...其它屬性...

        num int no 版本號在某個項目中遞增

        is_use int no 是否啟用 默認0否,1是

        ischeck int no 是否確認 默認0未確認,1確認

        checker char(36) yes 確認人

        check_date datetime yes 確認日期

        說明:用戶添加一條數(shù)據(jù),未確認時,可以修改、刪除。但是當用戶確認時(當項目使用工作流時,也可以用工作流替換確認的3個字段),

        更新is_use為1(是),并且更新操作人信息。在用戶確認完之后,不能添加,修改、刪除。 第一次修改時,將主表(PayPlan)數(shù)據(jù)復制一份到PayPlanVar中,當然也要將版本號加1以及其它狀態(tài)信息還原,在確認后,將主表再復制一份到歷史表中,用作歷史數(shù)據(jù),然后將本次修改的數(shù)據(jù),更新到主表中去,并更新主表的版本號等信息。

        第一次修改以后,再需要修改數(shù)據(jù),將主表數(shù)據(jù)復制到子表中,同樣版本號加其它信息還原,但在確認后只需要將版本等信息更新回主表即可。

        三,單記錄變更、有儲存未來歷史記錄的需求,儲存于單表

        如,當某個供應商在今年就定出明年的商品價格,如果我們商品價格使用的第一或第二種設計方案,我們不得不在明年手工并且在確定的時間內(nèi)更新價格表。

        商品價格表(GoodsPrice)

        字段名 類型 是否可空 中文名 描述

        id char(36) no guid

        ...其它屬性...

        num int no 版本號

        start_time datetime no開始生效日期

        end_timedatetimeno結(jié)束生效日期

        數(shù)據(jù)庫歷史數(shù)據(jù)篇二:數(shù)據(jù)庫發(fā)展史

        數(shù)據(jù)庫發(fā)展史

        數(shù)據(jù)庫技術從誕生到現(xiàn)在,在不到 半個

        數(shù)據(jù)庫歷史數(shù)據(jù)

        世紀的時間里,形成了堅實的理論 基礎、成熟的商業(yè)產(chǎn)品和廣泛的應用領 域,吸引越來越多的研究者加入。數(shù)據(jù)庫 的誕生和發(fā)展給計算機信息管理帶來了 一場巨大的革命。三十多年來,國內(nèi)外已 經(jīng)開發(fā)建設了成千上萬個數(shù)據(jù)庫,它已 成為企業(yè)、部門乃至個人日常工作、生產(chǎn) 和生活的基礎設施。同時,隨著應用的擴 展與深入,數(shù)據(jù)庫的數(shù)量和規(guī)模越來越 大,數(shù)據(jù)庫的研究領域也已經(jīng)大大地拓 廣和深化了。30年間數(shù)據(jù)庫領域獲得了 三次計算機圖靈獎(C.W. Bachman, E.F.Codd, J.Gray),更加充分地說明 了數(shù)據(jù)庫是一個充滿活力和創(chuàng)新精神的 領域。就讓我們沿著歷史的軌跡,追溯一 下數(shù)據(jù)庫的發(fā)展歷程。

        數(shù)據(jù)庫發(fā)展簡史

        1. 數(shù)據(jù)管理的誕生

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

        數(shù)據(jù)庫系統(tǒng)的萌芽出現(xiàn)于60 年代。 當時計算機開始廣泛地應用于數(shù)據(jù)管理, 對數(shù)據(jù)的共享提出了越來越高的要求。 傳統(tǒng)的文件系統(tǒng)已經(jīng)不能滿足人們的需

        要。能夠統(tǒng)一管理和共享數(shù)據(jù)的數(shù)據(jù)庫 管理系統(tǒng)(DBMS)應運而生。數(shù)據(jù)模型 是數(shù)據(jù)庫系統(tǒng)的核心和基礎,各種

        DBMS 軟件都是基于某種數(shù)據(jù)模型的。 所以通常也按照數(shù)據(jù)模型的特點將傳統(tǒng) 數(shù)據(jù)庫系統(tǒng)分成網(wǎng)狀數(shù)據(jù)庫、層次數(shù)據(jù) 庫和關系數(shù)據(jù)庫三類。

        最早出現(xiàn)的是網(wǎng)狀DBMS,是美國

        通用電氣公司Bachman等人在1961年開 發(fā)成功的IDS(Integrated DataStore)。 1961年通用電氣公司(General Electric Co.)的Charles Bachman 成功地開發(fā) 出世界上第一個網(wǎng)狀DBMS也是第一個 數(shù)據(jù)庫管理系統(tǒng)—— 集成數(shù)據(jù)存儲

        (Integrated DataStore IDS),奠定了網(wǎng) 狀數(shù)據(jù)庫的基礎,并在當時得到了廣泛 的發(fā)行和應用。IDS 具有數(shù)據(jù)模式和日 志的特征。但它只能在GE主機上運行, 并且數(shù)據(jù)庫只有一個文件,數(shù)據(jù)庫所有 的表必須通過手工編碼來生成。 之后,通用電氣公司一個客戶—— BF Goodrich Chemical 公司最終不得 不重寫了整個系統(tǒng)。并將重寫后的系統(tǒng) 命名為集成數(shù)據(jù)管理系統(tǒng)(IDMS)。 網(wǎng)狀數(shù)據(jù)庫模型對于層次和非層次 結(jié)構的事物都能比較自然的模擬,在關 系數(shù)據(jù)庫出現(xiàn)之前網(wǎng)狀DBMS要比層次 DBMS用得普遍。在數(shù)據(jù)庫發(fā)展史上,網(wǎng) 狀數(shù)據(jù)庫占有重要地位。

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

        1973 年Cullinane 公司(也就是后

        來的C u l l i n e t 軟件公司),開始出售 Goodrich 公司的IDMS 改進版本,并且

        逐漸成為當時世界上最大的軟件公司。

        2. 關系數(shù)據(jù)庫的由來

        網(wǎng)狀數(shù)據(jù)庫和層次數(shù)據(jù)庫已經(jīng)很好 1951:Univac I 系統(tǒng)使用磁帶

        和穿孔卡片作為數(shù)據(jù)存儲

        管理·開發(fā)故事

        數(shù)據(jù)庫發(fā)展史

        程序員2004.06 47

        地解決了數(shù)據(jù)的集中和共享問題,但是 在數(shù)據(jù)獨立性和抽象級別上仍有很大欠 缺。用戶在對這兩種數(shù)據(jù)庫進行存取時, 仍然需要明確數(shù)據(jù)的存儲結(jié)構,指出存 取路徑。而后來出現(xiàn)的關系數(shù)據(jù)庫較好 地解決了這些問題。

        1970 年,IBM 的研究員E.F.Codd

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

        司在San Jose實驗室增加了更多的研究 人員研究這個項目,這個項目就是著名 的System R。目標是論證一個全功能關

        系DBMS的可行性。該項目結(jié)束于1979 年,完成了第一個實現(xiàn)SQL的DBMS。然 而IBM 對IMS 的承諾阻止了System R 的投產(chǎn),一直到1980 年System R 才作 為一個產(chǎn)品正式推向市場。IBM 產(chǎn)品化 步伐緩慢的三個原因:IBM重視信譽、重 視質(zhì)量、盡量減少故障;IBM 的官僚體 系龐大;IBM 內(nèi)部已經(jīng)有層次數(shù)據(jù)庫產(chǎn) 品,相關人員不積極,甚至反對。 然而同時,1973年加州大學伯克利 分校的Michael Stonebraker 和Eugene Wong利用System R已發(fā)布的信息開始 開發(fā)自己的關系數(shù)據(jù)庫系統(tǒng)Ingres。他 們開發(fā)的Ingres項目最后由Oracle公司、 Ingres 公司以及硅谷的其他廠商所商品 化。后來,System R和Ingres 系統(tǒng)雙雙 獲得ACM的1988 年“軟件系統(tǒng)獎”。 1976 年霍尼韋爾公司(Honeywell) 開發(fā)了第一個商用關系數(shù)據(jù)庫系統(tǒng)—— Multics Relational Dat a Store。關系型數(shù) 據(jù)庫系統(tǒng)以關系代數(shù)為堅實的理論基礎, 經(jīng)過幾十年的發(fā)展和實際應用,技術越 來越成熟和完善。其代表產(chǎn)品有Oracle、 IBM 公司的DB2、微軟公司的MS SQL Server 以及Informix、ADABASD 等等。

        3. 結(jié)構化查詢語言 (SQL)

        1974 年,IBM 的Ray Boyce 和Don Chamberlin 將Codd關系數(shù)據(jù)庫的12條 準則的數(shù)學定義以簡單的關鍵字語法表 現(xiàn)出來,里程碑式地提出了S Q L

        (Structured Query Language)語言。 SQL語言的功能包括查詢、操縱、定義和 控制,是一個綜合的、通用的關系數(shù)據(jù)庫 語言,同時又是一種高度非過程化的語 言,只要求用戶指出做什么而不需要指 出怎么做。SQL集成實現(xiàn)了數(shù)據(jù)庫生命周 期中的全部操作。SQL提供了與關系數(shù)據(jù) 庫進行交互的方法,它可以與標準的編 程語言一起工作。自產(chǎn)生之日起,SQL語 言便成了檢驗關系數(shù)據(jù)庫的試金石,而 SQL語言標準的每一次變更都指導著關系 數(shù)據(jù)庫產(chǎn)品的發(fā)展方向。然而,直到二十 世紀七十年代中期,關系理論才通過SQL 在商業(yè)數(shù)據(jù)庫Oracle和DB2中使用。

        1986年,ANSI把SQL作為關系數(shù)據(jù) 庫語言的美國標準,同年公布了標準 1969:Edgar F. Codd

        發(fā)明了關系數(shù)據(jù)庫

        數(shù)據(jù)庫發(fā)展史

        1976年IBM E.F.Codd發(fā)表了一篇里 程碑的論文“R系統(tǒng):數(shù)據(jù)庫關系理論”, 介紹了關系數(shù)據(jù)庫理論和查詢語言SQL。 Oracle的創(chuàng)始人Ellison非常仔細地閱讀了 這篇文章,被其內(nèi)容震驚,這是第一次有 人用全面一致的方案管理數(shù)據(jù)信息。作 者E.F.Codd十年前就發(fā)表了關系數(shù)據(jù)庫 理論,并在IBM 研究機構開發(fā)原型,這 個項目就是R系統(tǒng),存取數(shù)據(jù)表的語言 就是SQL。Ellison看完后,敏銳意識到在 這個研究基礎上可以開發(fā)商用軟件系統(tǒng)。 而當時大多數(shù)人認為關系數(shù)據(jù)庫不

        會有商業(yè)價值。Ellison認為這是他們的 機會:他們決定開發(fā)通用商用數(shù)據(jù)庫系統(tǒng) Oracle,這個名字來源于他們曾給中央情 報局做過的項目名。幾個月后,他們就開 發(fā)了Oracle 1.0 。但這只不過是個玩具, 除了完成簡單關系查詢不能做任何事情, 他們花相當長的時間才使Oracle變得可 用,維持公司運轉(zhuǎn)主要靠承接一些數(shù)據(jù) 庫管理項目和做顧問咨詢工作。 而IBM卻沒有計劃開發(fā),為什么藍 色巨人放棄了這個價值上百億的產(chǎn)品, 原因有很多:IBM的研究人員大多是學 術出身,他們最感興趣的是理論,而非 推向市場的產(chǎn)品,從學術上看,研究成 果應公開,發(fā)表論文和演講能使他們 成名,為什么不呢?還有一個很主要 的原因就是IBM 當時有一個銷售得還 不錯的層次數(shù)據(jù)庫產(chǎn)品IMS。直到1985 年I B M 才發(fā)布了關系數(shù)據(jù)庫D B 2 , Ellision那時已經(jīng)成了千萬富翁。 Ellison曾將IBM 選擇Microsoft 的

        MS-DOS作為IBM-PC機的操作系統(tǒng)比 為:“世界企業(yè)經(jīng)營歷史上最嚴重的錯 誤,價值超過了上千億美元!盜BM 發(fā) 表R系統(tǒng)論文,而且沒有很快推出關系 數(shù)據(jù)庫產(chǎn)品的錯誤可能僅僅次之。

        Oracle 的市值在1996年就達到了280億

        數(shù)據(jù)庫歷史數(shù)據(jù)篇三:數(shù)據(jù)庫歷史及主流技術

        數(shù)據(jù)庫的誕生和發(fā)展給計算機信息管理帶來了一場巨大的革命。通過本文讓我們看看數(shù)據(jù)庫的發(fā)展。/數(shù)據(jù)庫發(fā)展歷史//數(shù)據(jù)庫技術從誕生到現(xiàn)在,在不到半個世紀的時間里,形成了堅實的理論基礎、

        成熟的商業(yè)產(chǎn)品和廣泛的應用領域,吸引越來越多的研究者加入。數(shù)據(jù)庫的誕生和發(fā)展給計算機信息管理帶來了一場巨大的革命。三十多年來,國內(nèi)外已經(jīng)開發(fā)建設了成千上萬個數(shù)據(jù)庫,它已成為企業(yè)、部門乃至個人日常工作、生產(chǎn)和生活的基礎設施。同時,隨著應用的擴展與深入,數(shù)據(jù)庫的數(shù)量和規(guī)模越來越大,數(shù)據(jù)庫的研究領域也已經(jīng)大大地拓廣和深化了。30年間數(shù)據(jù)庫領域獲得了三次計算機圖靈獎(C.W. Bachman, E.F.Codd, J.Gray),更加充分地說明了數(shù)據(jù)庫是一個充滿活力和創(chuàng)新精神的領域。就讓我們沿著歷史的軌跡,追溯一下數(shù)據(jù)庫的發(fā)展歷程。 一. 數(shù)據(jù)庫發(fā)展簡史 1. 數(shù)據(jù)管理的誕生 數(shù)據(jù)庫的歷史可以追溯到五十年前,那時的數(shù)據(jù)管理非常簡單。通過大量的分類﹑比較和表格繪制的機器運行數(shù)百萬穿孔卡片來進行數(shù)據(jù)的處理,其運行結(jié)果在紙上打印出來或者制成新的穿孔卡片。而數(shù)據(jù)管理就是對所有這些穿孔卡片進行物理的儲存和處理。 然而,1951年雷明頓蘭德公司(Remington Rand Inc)的一種叫做Univac I的計算機推出了一種一秒鐘可以輸入數(shù)百條記錄的磁帶驅(qū)動器,從而引發(fā)了數(shù)據(jù)管理的革命。1956年IBM生產(chǎn)出第一個磁盤驅(qū)動器——the Model 305 RAMAC。此驅(qū)動器有50個盤片,每個盤片直徑是2英尺,可以儲存5MB的數(shù)據(jù)。使用磁盤最大的好處是可以隨機地存取數(shù)據(jù),而穿孔卡片和磁帶只能順序存取數(shù)據(jù)。 1951: Univac系統(tǒng)使用磁帶和穿孔卡片作為數(shù)據(jù)存儲。 數(shù)據(jù)庫系統(tǒng)的萌芽出現(xiàn)于60年代。當時計算機開始廣泛地應用于數(shù)據(jù)管理,對數(shù)據(jù)的共享提出了越來越高的要求。傳統(tǒng)的文件系統(tǒng)已經(jīng)不能滿足人們的需要。能夠 統(tǒng)一管理和共享數(shù)據(jù)的數(shù)據(jù)庫管理系統(tǒng)(DBMS)應運而生。數(shù)據(jù)模型是數(shù)據(jù)庫系統(tǒng)的核心和基礎,各種DBMS軟件都是基于某種數(shù)據(jù)模型的。所以通常也按照 數(shù)據(jù)模型的特點將傳統(tǒng)數(shù)據(jù)庫系統(tǒng)分成網(wǎng)狀數(shù)據(jù)庫、層次數(shù)據(jù)庫和關系數(shù)據(jù)庫三類。 最早出現(xiàn)的是網(wǎng)狀DBMS,是美國通用電 氣公司Bachman等人在1961年開發(fā)成功的IDS(Integrated DataStore)。1961年通用電氣公司(General Electric Co.)的Charles Bachman成功地開發(fā)出世界上第一個網(wǎng)狀DBMS也是第一個數(shù)據(jù)庫管理系統(tǒng)——集成數(shù)據(jù)存儲(Integrated DataStore IDS),奠定了網(wǎng)狀數(shù)據(jù)庫的基礎,并在當時得到了廣泛的發(fā)行和應用。IDS具有數(shù)據(jù)模式和 日志的特征。但它只能在GE主機上運行,并且數(shù)據(jù)庫只有一個文件,數(shù)據(jù)庫所有的表必須通過手工編碼來生成。 之后,通用電氣公司的一個客戶——BF Goodrich Chemical公司最終不得不重寫了整個系統(tǒng)。并將重寫后的系統(tǒng)命名為集成數(shù)據(jù)管理系統(tǒng)(IDMS)。 網(wǎng)狀數(shù)據(jù)庫模型對于層次和非層次結(jié)構的事物都能比較自然的模擬,在關系數(shù)據(jù)庫出現(xiàn)之前網(wǎng)狀DBMS要比層次DBMS用得普遍。在數(shù)據(jù)庫發(fā)展史上,網(wǎng)狀數(shù)據(jù) 庫占有重要地位。 層次型DBMS是緊隨網(wǎng)絡型數(shù)據(jù)庫而出現(xiàn)的。最著名最典型的層次數(shù)據(jù)庫系統(tǒng)是IBM公司在1968年開發(fā)的IMS(Information Management System),一種適合其主機的層次數(shù)據(jù)庫。這是IBM公司研制的最早的大型數(shù)據(jù)庫系統(tǒng)程序產(chǎn)品。從60年代末產(chǎn)生起,如今已經(jīng)發(fā)展到IMSV6,提供 群集、N路數(shù)據(jù)共享、消息隊列共享等先進特性的支持。這個具有30年歷史的數(shù)據(jù)庫產(chǎn)品在如今的WWW應用連接、商務智能應用中扮演著新的角色。 1973年Cullinane公司(也就是后來的Cullinet軟件公司),開始出售Goodrich公司的IDMS改進版本,并且逐漸成為當時世界上 最大的軟件公司。 2. 關系數(shù)據(jù)庫的由來 網(wǎng)狀數(shù)據(jù)庫和層次數(shù)據(jù)庫已經(jīng)很好地解決了數(shù)據(jù)的集中和共享問題,但是在數(shù)據(jù)獨立性和抽象級別

        上仍有很大欠缺。用戶在對這兩種數(shù)據(jù)庫進行存取時,仍然需要明 確數(shù)據(jù)的存儲結(jié)構,指出存取路徑。而后來出現(xiàn)的關系數(shù)據(jù)庫較好地解決了這些問題。 1970年,IBM的研究員E.F.Codd博士在刊物《Communication of the ACM》上發(fā)表了一篇名為“A Relational Model of Data for Large Shared Data Banks”的論文,提出了關系模型的概念,奠定了關系模型的理論基礎。盡管之前在1968年Childs已經(jīng)提出了面向集合的模型,然而這篇論文被普遍 認為是數(shù)據(jù)庫系統(tǒng)歷史上具有劃時代意義的里程碑。Codd的心愿是為數(shù)據(jù)庫建立一個(續(xù)致信網(wǎng)上一頁內(nèi)容)優(yōu)美的數(shù) 據(jù)模型。后來Codd又陸續(xù)發(fā)表多篇文章,論述了范式理論和衡量關系系統(tǒng)的12條標準,用數(shù)學理論奠定了關系數(shù)據(jù)庫的基礎。關系模型有嚴格的數(shù)學基礎,抽 象級別比較高,而且簡單清晰,便于理解和使用。但是當時也有人認為關系模型是理想化的數(shù)據(jù)模型,用來實現(xiàn)DBMS是不現(xiàn)實的,尤其擔心關系數(shù)據(jù)庫的性能難 以接受,更有人視其為當時正在進行中的網(wǎng)狀數(shù)據(jù)庫規(guī)范化工作的嚴重威脅。為了促進對問題的理解,1974年ACM牽頭組織了 一次研討會,會上開展了一場分別以Codd和Bachman為首的支持和反對關系數(shù)據(jù)庫兩派之間的辯論。這次著名的辯論推動了關系數(shù)據(jù)庫的發(fā)展,使其最終 成為現(xiàn)代數(shù)據(jù)庫產(chǎn)品的主流。 1969: Edgar F!癟ed” Codd發(fā)明了關系數(shù)據(jù)庫 1970年關系模型建立之后,IBM公司在San Jose實驗室增加了更多的研究人員研究這個項目,這個項目就是著名的System R。其目標是論證一個全功能關系DBMS的可行性。該項目結(jié)束于1979年,完成了第一個實現(xiàn)SQL的DBMS。然而IBM對IMS的承諾阻止了 System R的投產(chǎn),一直到1980年System R才作為一個產(chǎn)品正式推向市場。IBM產(chǎn)品化步伐緩慢的三個原因:IBM重視信譽,重視質(zhì)量,盡量減少故障;IBM是個大公司,官僚體系龐大;IBM內(nèi)部 已經(jīng)有層次數(shù)據(jù)庫產(chǎn)品,相關人員不積極,甚至反對。 然而同時,1973年加州大學伯克利分校的Michael Stonebraker和Eugene Wong利用System R已發(fā)布的信息開始開發(fā)自己的關系數(shù)據(jù)庫系統(tǒng)Ingres。他們開發(fā)的Ingres項目最后由Oracle公司、Ingres公司以及硅谷的其他廠商所 商品化。后來,System R和Ingres系統(tǒng)雙雙獲得ACM的1988年“軟件系統(tǒng)獎”。 1976年霍尼韋爾公司(Honeywell)開發(fā)了第一個商用關系數(shù)據(jù)庫系統(tǒng)——Multics Relational Data Store。關系型數(shù)據(jù)庫系統(tǒng)以關系代數(shù)為堅實的理論基礎,經(jīng)過幾十年的發(fā)展和實際應用,技術越來越成熟和完善。其代表產(chǎn)品有Oracle、IBM公司的 DB2、微軟公 司的MS SQL Server以及Informix、ADABASD等等。 3. 結(jié)構化查詢語言 (SQL) 1974年,IBM的Ray Boyce和Don Chamberlin將Codd關系數(shù)據(jù)庫的12條準則的數(shù)學定義以簡單的關鍵字語法表現(xiàn)出來,里程碑式地提出了SQL(Structured Query Language)語言。SQL語言的功能包括查詢、操縱、定義和控制,是一個綜合的、通用的關系數(shù)據(jù)庫語言,同時又是一種高度非過程化的語言,只要求用 戶指出做什么而不需要指出怎么做。SQL集成實現(xiàn)了數(shù)據(jù)庫生命周期中的全部操作。SQL提供了與關系數(shù)據(jù)庫進行交互的方法,它可以與標準的編程語言一起工 作。自產(chǎn)生之日起,SQL語言便成了檢驗關系數(shù)據(jù)庫的試金石,而SQL語言標準的每一次變更都指導著關系數(shù)據(jù)庫產(chǎn)品的發(fā)展方向。然而,直到二十世紀七十年 代中期,關系理論才通過SQL在商業(yè)數(shù)據(jù)庫Oracle和DB2中使用。 1986年,ANSI把SQL作為關系數(shù)據(jù)庫語言的美國標準,同年公布了標準SQL文本。目前SQL標準有3個版本;維QL定義是 ANSIX3135-89,“Database Language - SQL with Integrity Enhancement”[ANS89],一般叫做SQL-89。SQL-89定義了模式定義、數(shù)據(jù)操作和事務處理。SQL-89和隨后的 ANSIX3168-1989,“Database

        Language-Embedded SQL”構成了第一代SQL標準。ANSIX3135-1992[ANS92]描述了一種增強功能的SQL,現(xiàn)在叫做SQL-92標準。SQL-92包括 模式操作,動態(tài)創(chuàng)建和SQL語句動態(tài)執(zhí)行、網(wǎng)絡環(huán)境支持等增強特性。在完成SQL-92標準后,ANSI和ISO即 開始合作開發(fā)SQL3標準。SQL3的主要特點在于抽象數(shù)據(jù)類型的支持,為新一代對象關系數(shù)據(jù)庫提供了標準。 4. 面向?qū)ο髷?shù)據(jù)庫 隨著信息技術和市場的發(fā)展,人們發(fā)現(xiàn)關系型數(shù)據(jù)庫系統(tǒng)雖然技術很成熟,但其局限性也是顯而易見的:它能很好地處理所謂的“表格型數(shù)據(jù)”,卻對技術界出現(xiàn)的 越來越多的復雜類型的數(shù)據(jù)無能為力。九十年代以后,技術界一直在研究和尋求新型數(shù)據(jù)庫系統(tǒng)。但在什么是新型數(shù)據(jù)庫系統(tǒng)的發(fā)展方向的問題上,產(chǎn)業(yè)界一度是相 當困惑的。受當時技術風潮的影響,在相當一段時間內(nèi),人們把大量的精力花在研究“面向?qū)ο蟮臄?shù)據(jù)庫系統(tǒng)(object oriented database)”或簡稱“OO數(shù)據(jù)庫系統(tǒng)”。值得一提的是,美國Stonebraker教授提出的面向?qū)ο蟮年P系型數(shù)據(jù)庫理論曾一度受到產(chǎn)業(yè)界的青 睞。而Stonebraker本人也在當時被Informix花大價錢聘為技術總負責人。 然而,數(shù)年的發(fā)展表明,面向?qū)ο蟮年P系型數(shù)據(jù)庫系統(tǒng)產(chǎn)品的市場發(fā)展的情況并不理想。理論上的完美性并沒有帶來市場的熱烈反應。其不成功的主要原因在于,這 種數(shù)據(jù)庫產(chǎn)品的主要設計思想是企圖用新型數(shù)據(jù)庫系統(tǒng)來取代現(xiàn)有的數(shù)據(jù)庫系統(tǒng)。這對許多已經(jīng)運用數(shù)據(jù)庫系統(tǒng)多年并積累了大量工作數(shù)據(jù)的客戶,尤其是大客戶來 說,是無法承受新舊數(shù)據(jù)間的轉(zhuǎn)換而帶來的巨大工作量及巨額開支的。另外, 面向?qū)ο蟮年P系型數(shù)據(jù)庫系統(tǒng)使查詢語言變得極其復雜,從而使得無論是數(shù)據(jù)庫的開發(fā)商家還是應用客戶都視其復雜的應用技術為畏途。 5. 數(shù)據(jù)管理的變革 二十世紀六十年代后期出現(xiàn)了一種新型數(shù)據(jù)庫軟件:決定支持系統(tǒng)(DSS),其目的是讓管理者在決策過程中更有效地利用數(shù)據(jù)信息。于是在1970年, 第一個聯(lián)機分析處理工具——Express誕生了。其他決策支持系統(tǒng)緊隨其后,許多是由公司的IT部門開發(fā)出來的。 1985年,第一個商務智能系統(tǒng)(business intelligence)由Metaphor計算機系統(tǒng)有限公司為Procter & Gamble公司開發(fā)出來,主要是用來連接銷售信 息和零售的掃描儀數(shù)據(jù)。同年, Pilot 軟件公司開始出售第一個商用客戶/服務器執(zhí)行信息系統(tǒng)——Command Center。 同樣在這年,加州大學伯克利分校Ingres項目演變成Postgres,其目標是開發(fā)出一個面向?qū)ο蟮臄?shù)據(jù)庫。此后一年, Graphael公司開發(fā)了第一個商用的對象數(shù)據(jù)庫系統(tǒng)—Gbase。 1988年,IBM公司的研究者Barry Devlin和Paul Murphy發(fā)明了一個新的術語—信息倉庫,之后,IT的廠商開始構建實驗性的數(shù)據(jù)倉庫。1991年,W.H. "Bill" Inmon出版了一本“如何構建數(shù)據(jù)倉庫”的書,使得數(shù)據(jù)倉庫真正開始應用。 1991: W.H.“Bill” Inmon發(fā)表了”構建數(shù)據(jù)倉庫” 二十世紀九十年代,隨著基于PC的客戶/服務器計算模式和企業(yè)軟件包的廣泛采用,數(shù)據(jù)管理的變革基本完成。數(shù)據(jù)管理不再僅僅是存儲和管理數(shù)據(jù),而轉(zhuǎn)變成用 戶所需要的各種數(shù)據(jù)管理的方式。Internet的異軍突起以及XML語言的出現(xiàn),給數(shù)據(jù)庫系統(tǒng)的發(fā)展開辟了一片新的天地。 5. 數(shù)據(jù)庫發(fā)展大事記 1951:Univac系統(tǒng)使用磁帶和穿孔卡片作為數(shù)據(jù)存儲。 1956:IBM公司在其Model 305 RAMAC中第一次引入了磁盤驅(qū)動器 1961:通用電氣(GE)公司的Charles Bachman開發(fā)了第一個數(shù)據(jù)庫管理系統(tǒng)——IDS 1969:E.F. Codd發(fā)明了關系數(shù)據(jù)庫。 1973: 由John J.Cullinane領導Cullinane公司開發(fā)了 IDMS——一個針對IBM主機的基于網(wǎng)絡模型的數(shù)據(jù)庫。 1976: Honeywell公司推出了Multics Relational Data Store——第一個商用關系數(shù)據(jù)庫產(chǎn)品。 1979: Oracle公司引入了第一個商用SQL關系數(shù)據(jù)庫管理系統(tǒng)。 1983: IBM 推出了

        DB2數(shù)據(jù)庫產(chǎn)品。 1985: 為Procter & Gamble系統(tǒng)設計的第一個商務智能系統(tǒng)產(chǎn)生。 1991: W.H.“Bill” Inmon發(fā)表了”構建數(shù)據(jù)倉庫”。

        常見主流數(shù)據(jù)庫分類

        1、IBM 的DB2

        DB2是IBM著名的關系型數(shù)據(jù)庫產(chǎn)品,DB2系統(tǒng)在企業(yè)級的應用中十分廣泛。截止2003年,全球財富500強(Fortune 500)中有415家使用DB2,全球財富100強(Fortune100)中有96家使用DB2,用戶遍布各個行業(yè)。2004年IBM的DB2就獲得相關專利239項,而Oracle僅為99項。DB2目前支持從PC到UNIX,從中小型機到大型機,從IBM到非IBM(HP及SUN UNIX系統(tǒng)等)的各種操作平臺。

        IBM絕對是數(shù)據(jù)庫行業(yè)的巨人。1968年IBM在IBM 360計算機上研制成功了IMS這個業(yè)界第一個層次型數(shù)據(jù)庫管理系統(tǒng),也是層次型數(shù)據(jù)庫中最為著名和最為典型的。1970年,IBM E.F.Codd發(fā)表了業(yè)界第一篇關于關系數(shù)據(jù)庫理論的論文“A Relational Model of Data for Large Shared DataBanks”,首次提出了關系模型的概念。1974年,IBM Don Chamberlin和Ray Boyce通過System R項目的實踐,發(fā)表了論文“SEQUEL:A Structured English Query Language”,我們現(xiàn)在熟知SQL就是基于它發(fā)展起來的。IBM 在1983年發(fā)布了DATABASE 2(DB2)for MVS(內(nèi)部代號為“Eagle”),這就是著名的DB2數(shù)據(jù)庫。2001年IBM以10億美金收購了Informix的數(shù)據(jù)庫業(yè)務,這次收購擴大了IBM分布式數(shù)據(jù)庫業(yè)務。2006 DB2 9作為第三代數(shù)據(jù)庫的革命性產(chǎn)品正式在全球發(fā)布。

        作為關系數(shù)據(jù)庫領域的開拓者和領航人,IBM在1977年完成了System R系統(tǒng)的原型,1980年開始提供集成的數(shù)據(jù)庫服務器—— System/38,隨后是SQL/DSforVSE和VM,其初始版本與SystemR研究原型密切相關。

        DB2 forMVSV1 在1983年推出。該版本的目標是提供這一新方案所承諾的簡單性,數(shù)據(jù)不相關性和用戶生產(chǎn)率。1988年DB2 for MVS 提供了強大的在線事務處理(OLTP)支持,1989 年和1993 年分別以遠程工作單元和分布式工作單元實現(xiàn)了分布式數(shù)據(jù)庫支持。最近推出的DB2 Universal Database 6.1則是通用數(shù)據(jù)庫的典范,是第一個具備網(wǎng)上功能的多媒體關系數(shù)據(jù)庫管理系統(tǒng),支持包括Linux在內(nèi)的一系列平臺。

        2、 Oracle

        Oracle 前身叫SDL,由Larry Ellison 和另兩個編程人員在1977創(chuàng)辦,他們開發(fā)了自己的拳頭產(chǎn)品,在市場上大量銷售,1979 年,Oracle公司引

        入了第一個商用SQL 關系數(shù)據(jù)庫管理系統(tǒng)。Oracle公司是最早開發(fā)關系數(shù)據(jù)庫的廠商之一,其產(chǎn)品支持最廣泛的操作系統(tǒng)平臺。目前Oracle關系數(shù)據(jù)庫產(chǎn)品的市場占有率名列前茅。

        Oracle公司是目前全球最大的數(shù)據(jù)庫軟件公司,也是近年業(yè)務增長極為迅速的軟件提供與服務商。IDC(Internet Data Center)2007統(tǒng)計數(shù)據(jù)顯示數(shù)據(jù)庫市場總量份額如下:Oracle 44.1% IBM 21.3%Microsoft 18.3% Teradata 3.4% Sybase 3.4%。不過從使用情況看,BZ Research的2007年度數(shù)據(jù)庫與數(shù)據(jù)存取的綜合研究報告表明76.4%的公司使用了Microsoft SQL Server,不過在高端領域仍然以Oracle,IBM,Teradata為主。

        2007年7月12日,甲骨文公司在美國紐約宣布推出數(shù)據(jù)庫Oracle 11g,這是Oracle數(shù)據(jù)庫的最新版本。Oracle介紹說,Oracle 11g有400多項功能,經(jīng)過了1500萬個小時的測試,開發(fā)工作量達到了3.6萬人/月。Oracle 11g在安全,XML DB,備份等方面得到了很大提升。Oracle發(fā)展歷史見轉(zhuǎn)載《書寫歷史的甲骨文--ORACLE公司傳奇》一文。

        3、 Informix

        Informix是IBM公司出品(2001)的關系數(shù)據(jù)庫管理系統(tǒng)(RDBMS)家族。作為一個集成解決方案,它被定位為作為IBM在線事務處理(OLTP)旗艦級數(shù)據(jù)服務系統(tǒng)。Informix在1980年成立,目的是為Unix等開放操作系統(tǒng)提供專業(yè)的關系型數(shù)據(jù)庫產(chǎn)品。公司的名稱Informix便是取自Information 和Unix的結(jié)合。Informix第一個真正支持SQL語言的關系數(shù)據(jù)庫產(chǎn)品是Informix SE(StandardEngine)。InformixSE是在當時的微機Unix環(huán)境下主要的數(shù)據(jù)庫產(chǎn)品。它也是第一個被移植到Linux上的商業(yè)數(shù)據(jù)庫產(chǎn)品。

        4、Sybase

        美國Sybase公司研制的一種關系型數(shù)據(jù)庫系統(tǒng),是一種典型的UNIX或WindowsNT平臺上客戶機/服務器環(huán)境下的大型數(shù)據(jù)庫系統(tǒng)。Sybase SQL Server 是 Sybase 公司產(chǎn)品。Sybase公司成立于1984年11月,產(chǎn)品研究和開發(fā)包括企業(yè)級數(shù)據(jù)庫、數(shù)據(jù)復制和數(shù)據(jù)訪問。

        Sybase公司成立于1984年,公司名稱“Sybase”取自“system”和“database” 相結(jié)合的含義。Sybase公司的創(chuàng)始人之一Bob Epstein 是Ingres 大學版(與System/R同時期的關系數(shù)據(jù)庫模型產(chǎn)品)的主要設計人員。公司的第一個關系數(shù)據(jù)庫產(chǎn)品是1987年5月推出的Sybase

        相關熱詞搜索:歷史數(shù)據(jù) 數(shù)據(jù)庫 sql數(shù)據(jù)庫歷史數(shù)據(jù) nba歷史數(shù)據(jù)庫

        版權所有 蒲公英文摘 www.zuancaijixie.com
        91啦在线播放,特级一级全黄毛片免费,国产中文一区,亚洲国产一成人久久精品