在這個擦亮自己的眼睛去看SQLServer的系列中的第二篇中提過要寫歷史淵源,這里的歷史主要描述的是數(shù)據(jù)庫本身的歷史與SQLServer本身關系不大。說實話這部分的內容要說清楚個人感覺難度比較大比較抽象。個人能力有限,如果文中有什么不合適的地方或者有錯誤的
在這個擦亮自己的眼睛去看SQLServer的系列中的第二篇中提過要寫歷史淵源,這里的歷史主要描述的是數(shù)據(jù)庫本身的歷史與SQLServer本身關系不大。說實話這部分的內容要說清楚個人感覺難度比較大比較抽象。個人能力有限,如果文中有什么不合適的地方或者有錯誤的地方,望大家指出??梢赃@么說數(shù)據(jù)庫的誕生和發(fā)展給計算機信息管理帶來了是一場巨大的革命,40年來數(shù)據(jù)庫領域獲得了三次計算機圖靈獎更加充分地說明了數(shù)據(jù)庫是一個充滿活力和創(chuàng)新精神的領域。 跟研究任何一門技術一樣,先弄懂以下幾個問題才能算是對這門技術有所了解吧:1、數(shù)據(jù)庫技術主要解決什么問題 2、認識認識數(shù)據(jù)庫技術發(fā)展中的大牛們 3、數(shù)據(jù)庫技術經(jīng)歷哪些階段 。以下就一一來聊聊這幾個問題。
一、數(shù)據(jù)庫技術主要解決什么問題
數(shù)據(jù)庫是基于計算機的,目前計算機已經(jīng)深入到我們生活任何一個角落。不過歸納起來計算機主要解決兩個問題:計算與數(shù)據(jù)處理。計算機誕生于20世紀40年代,最初僅僅用于科學計算不能用于數(shù)據(jù)處理。當時計算機只能處理數(shù)字,不能處理字母與符號而字母與符號卻是數(shù)據(jù)處理中的主要處理對象。還有當時確實也沒有數(shù)據(jù)處理所需要的大容量存儲器。針對這兩個問題,50年代出現(xiàn)了字符發(fā)生器以及成功將高速磁帶機用于計算機存儲。解決了這兩個問題為計算機能進行數(shù)據(jù)處理起了決定性作用。后來因為磁帶機不夠快,IBM公司Remington Rand成功推出磁盤系統(tǒng)。這些硬件推動了計算機數(shù)據(jù)處理的發(fā)展。
從以上看出,數(shù)據(jù)庫技術是屬于數(shù)據(jù)處理技術。還有類似的解決方案就是文件管理的形式。不少人有過這樣的疑問文件完全也可以進行數(shù)據(jù)處理,為什么要出現(xiàn)數(shù)據(jù)庫技術呢?文件管理中,數(shù)據(jù)文件和應用程序一一對應,會造成數(shù)據(jù)冗余,數(shù)據(jù)不一致性和數(shù)據(jù)依賴。這樣給程序編寫數(shù)據(jù)維護帶來很多問題。后來出現(xiàn)過文件管理系統(tǒng)作為應用程序與數(shù)據(jù)文件的接口,這些應用程序只需要與文件管理系統(tǒng)交互就可以帶來了一些靈活性。不過這種方式還是解決不數(shù)據(jù)冗余,數(shù)據(jù)庫一致性、處理效率低的問題,特別是在較大規(guī)模的系統(tǒng)中更加明顯。針對這些問題,后來人們做了很多探索解決文件管理系統(tǒng)分散管理的缺點,推出能對數(shù)據(jù)集中控制統(tǒng)一管理的技術——數(shù)據(jù)庫技術??梢酝ㄟ^以下的圖看出這里描述的三種方式的區(qū)別。
綜上所述,當時的數(shù)據(jù)庫技術主要解決文件管理系統(tǒng)在數(shù)據(jù)處理時出現(xiàn)的數(shù)據(jù)冗余、數(shù)據(jù)不一致性、處理效率低、分散管理的問題。后面隨著數(shù)據(jù)庫技術的發(fā)展解決的問題就更多了。
二、認識認識數(shù)據(jù)庫技術發(fā)展中的大牛們
大??偸亲屓搜瞿降模麄儗?shù)據(jù)庫技術的發(fā)展起了很大的作用,值得大家尊重。牛人很多,這里僅僅介紹“教父”級人物讓大家認識認識。相信很多人都聽過他們的名字。他們都是圖靈獎的得主:Charles W.Bachman(查理士·巴赫曼)、EdgarF.Codd(埃德加·考特)、James Gray(詹姆士·格雷)。下面一一介紹下:
1、Charles W.Bachman(查理士·巴赫曼)
查理士·巴赫曼1924年12月11日生于堪薩斯州的曼哈頓,現(xiàn)86歲。1948年在密歇根州立大學取得工程學士學位,1950年在賓夕法尼亞大學取得碩土學位。20世紀 50年代在Dow化工公司工作,1961—1970年在通用電氣公司任程序設計部門經(jīng)理,1970—1981年在Honeywell公司任總工程師,同時 兼任Cullinet軟件公司的副總裁和產(chǎn)品經(jīng)理。1973年獲得圖靈獎。
網(wǎng)狀數(shù)據(jù)庫之父,DBTG之父。兩項重大貢獻:1、在通用電氣公司任程序設計部門經(jīng)理期間,主持設計與開發(fā)了最早的網(wǎng)狀數(shù)據(jù)庫管理系統(tǒng)IDS。 IDS于1964年推出后,成為最受歡迎的數(shù)據(jù)庫產(chǎn)品之一,而且它的設計思想和實現(xiàn)技術被后來的許多數(shù)據(jù)庫產(chǎn)品所仿效。2、巴赫曼積極推動與促成了數(shù)據(jù)庫標準的制定,那就是美國數(shù)據(jù)系統(tǒng)語言委員會CODASYL下屬的數(shù)據(jù)庫任務組DBTG提出的網(wǎng)狀數(shù)據(jù)庫模型以及數(shù)據(jù)定義和數(shù)據(jù)操縱語言即DDL和 DML的規(guī)范說明,于1971年推出了第一個正式報告報告——DBTG,成為數(shù)據(jù)庫歷史上具有里程碑意義的文獻。這個首次提出數(shù)據(jù)庫三層體系結構,明確DBA的概念,規(guī)定DBA的作用與地位。在數(shù)據(jù)庫的文檔資料中,有一種描述網(wǎng)狀數(shù)據(jù)庫模型的數(shù)據(jù)結構圖,這種圖解技術是巴赫曼發(fā)明的,通常被稱為“巴赫曼圖”(Bachman diagram)。此外,在擔任ISO/TC 97/SC—16主席時,巴赫曼還主持制定了著名的“開放系統(tǒng)互連”標準,即OSI(Open System Interconection)。OSI對計算機、終端設備、人員、進程或網(wǎng)絡之間的數(shù)據(jù)交換提供了一個標準規(guī)程,實現(xiàn)OSI對系統(tǒng)之間達到彼此互相開放有重要意義。巴赫曼也是建立在波士頓的計算機博物館的創(chuàng)始人之 一。
有時候在想,我們的很多課本上提到了三層體系結構、數(shù)據(jù)庫管理系統(tǒng)概念,DDL,DML等等這些概念時, 都沒提到這些概念都是查理士·巴赫曼以及它的團隊。是不是有點說不過去。
詳細介紹見:http://en.wikipedia.org/wiki/Charles_W._Bachman
2、EdgarF.Codd(埃德加·考特)
埃 德加·弗蘭克·科德(Edgar Frank Codd,1923-2003)。1 9 2 3 年8 月1 9 日生于英格蘭中部的港口城市波特蘭。第二次世界大戰(zhàn)爆發(fā)以后,年輕的考特應征入伍在皇家空軍服役,1 9 4 2 至1 9 4 5 年期間任機長,參與了許多重大空戰(zhàn),為反法西斯戰(zhàn)爭立下了汗馬功勞。二戰(zhàn)結束以后,考特上牛津大學學習數(shù)學,于1 9 4 8 年取得學士學位以后到美國謀求發(fā)展。他先后在美國和加拿大工作,參加了I B M 第一臺科學計算機7 0 1 以及第一臺大型晶體管計算機 S T R E T C H 的邏輯設計,主持了第一個有多道程序設計能力的操作系統(tǒng)的開發(fā)。他自覺硬件知識缺乏,于是在6 0 年代初,到密歇根大學進修計算機與通信專業(yè)( 當時他已年近4 0 ) ,并于1 9 6 3 年獲得碩士學位, 1 9 6 5 年取得博士學位。這使他的理論基礎更加扎實,專業(yè)知識更加豐富。加上他在此之前十幾年實踐經(jīng)驗的積累,終于在1 9 7 0 年迸發(fā)出智慧的閃光,為數(shù)據(jù)庫技術開辟了一個新時代。1 9 7 0 年以后,考特繼續(xù)致力于完善與發(fā)展關系理論。1 9 7 2 年,他提出了關系代數(shù)和關系演算的概念, 定義了關系的并、交、投影、選擇、連接等各種基本運算, 為日后成為標準的結構化查詢語言(S Q L )奠定了基礎。
被譽為“關系數(shù)據(jù)庫之父”,并因為在數(shù)據(jù)庫管理系統(tǒng)的理論和實踐方面的杰出貢獻 于1981年獲圖靈獎。1970年,科德發(fā)表題為“大型共享數(shù)據(jù)庫的關系模型”的論文,文中首次提出了數(shù)據(jù)庫的關系模型。由于關系模型簡單明了、具有堅實 的數(shù)學理論基礎,所以一經(jīng)推出就受到了學術界和產(chǎn)業(yè)界的高度重視和廣泛響應,并很快成為數(shù)據(jù)庫市場的主流。20世紀80年代以來,計算機廠商推出的數(shù)據(jù)庫 管理系統(tǒng)幾乎都支持關系模型,數(shù)據(jù)庫領域當前的研究工作大都以關系模型為基礎。
這位人物只要看過幾乎任何一本數(shù)據(jù)庫書,基本都提到了他。主要原因是現(xiàn)在幾乎所有主流數(shù)據(jù)庫都基于他提出的關系理論。
著名論文:<<大型共享數(shù)據(jù)庫的關系模型>>
詳細介紹見:http://en.wikipedia.org/wiki/Edgar_F._Codd
3、James Gray(詹姆士·格雷)
詹姆士·格雷生于1944年,在著名的加州大學伯克利分校計算機科學系獲得博士學位。其博士論文是有關優(yōu)先文法語法分析理論的。學成以后,他先后在貝爾實驗室、IBM、 Tandem、DEC、MS等公司工作。在IBM期間,他參與和主持過IMS、System R、SQL/DS、DB2等項目的開發(fā),其中除SystemR僅作為研究原型外,其他幾個都成為IBM在數(shù)據(jù)庫市場上有影響力的產(chǎn)品。在MS期間,領銜微軟超級網(wǎng)絡數(shù)據(jù)庫TerraServeres項目以及SQLServer內核設計者。他曾參與建設了世界最大的天文學數(shù)據(jù)庫Sloan Digital SkyServer,其中所研究的星系從最初的100萬達到了如今的2億個,他參與設計的“世界視野望遠鏡”(World-Wide Telescope)把天文學家的數(shù)據(jù)庫連接為一個整體。James Gray“開創(chuàng)性的數(shù)據(jù)庫研究”為自動提款機、機票網(wǎng)上預定系統(tǒng)和google earth的誕生奠定了基礎。于在1998年獲得圖靈獎。2007年1月28日,在海上失蹤。
被譽為“SQL之父”。格雷進入數(shù)據(jù)庫領域時,關系數(shù)據(jù)庫的基本理論已經(jīng)成熟,但各大公司在關系數(shù)據(jù)庫管理系統(tǒng)(RDBMS)的實現(xiàn)和產(chǎn)品開發(fā)中,都遇到了一系列技術問題,主要是在數(shù)據(jù)庫的規(guī)模愈來愈大,數(shù)據(jù)庫的結構愈來愈復雜,又有多用戶共享數(shù)據(jù)庫的情況下,如何保障數(shù)據(jù)的完整性(Integrity)、安全性(Security)、并行性(Concurrency),以及一旦出現(xiàn)故障后,數(shù)據(jù)庫如何實現(xiàn)從故障中恢復 (Recovery)。這些問題如果不能圓滿解決,無論哪個公司的數(shù)據(jù)庫產(chǎn)品都無法進入實用,最終不能被用戶所接受。正是在解決這些重大的技術問題,使DBMS成熟并順利進入市場的過程中,格雷以他的聰明才智發(fā)揮了十分關鍵的作用。
上述及其他各種方法可總稱為"事務處理技術"。格雷在事務處理技術上的創(chuàng)造性思維和開拓性工作,使他成為該技術領域公認的權威。他的研究成果反映在專著《Transaction Processing: Conceptsand Techniques》。事務處理技術雖然誕生于數(shù)據(jù)庫研究,但對于分布式系統(tǒng),C/S結構中的數(shù)據(jù)管理與通信,對于容錯和高可靠性系統(tǒng),同樣具有重要的意義。另一部著作是《The Benchmark Handlook: for Database and Transaction Processing Systems》。此外,他還是聯(lián)機分析處理技術(OLAP)的奠基人,他提出了Data Cube等重要概念。近十年來(而且可能一直延續(xù)到未來十年),他一直是數(shù)據(jù)庫,數(shù)據(jù)倉庫和數(shù)據(jù)挖掘等領域當之無愧的領軍人物。
這位大師算是離我們比較近的,看看上面的介紹就會發(fā)現(xiàn)他提出的事務處理技術在整個關系型數(shù)據(jù)庫中起的作用是非同小可。 還有他于1987年提出的5分鐘法則對我們做緩存起了很重要的指導作用。 還創(chuàng)辦了排序的新賽事PennySort,用來衡量計算機的性價比。1999年提出了未來信息技術領域需要解決的十二個問題,意義深遠。
詳細介紹見:http://en.wikipedia.org/wiki/Jim_Gray_(computer_scientist)
五分鐘法則:http://queue.acm.org/detail.cfm?id=1413264
PennySort論文:/Files/yueyue_jwfm/PennySort.pdf
十二個問題: /Files/yueyue_jwfm/十幾信息技術的研究目標.pdf
三、數(shù)據(jù)庫技術經(jīng)歷哪些階段
1、層次數(shù)據(jù)庫和網(wǎng)狀數(shù)據(jù)庫
其主要特點是支持三級模式結構;用指針來表示數(shù)據(jù)之間的聯(lián)系;數(shù)據(jù)定義語言(Data Definaition Language,DDL)和數(shù)據(jù)操縱語言(Data Manipulation Language,DML)相對獨立;數(shù)據(jù)庫采用過程性(導航式)語言,用戶在操作數(shù)據(jù)庫時不但說明要做什么,還要說明怎么做。例如,在查找語句中不但要說明查找的對象,而且要規(guī)定存取路徑。這和現(xiàn)在被廣泛使用的非過程性語言SQL是不同的。網(wǎng)狀數(shù)據(jù)庫代表:IDS,1961美國通用電氣公司。層次數(shù)據(jù)庫代表:IMS,1968年IBM為阿波羅11號飛船順利登月提供重要保障。
2、關系數(shù)據(jù)庫
關系數(shù)據(jù)庫有嚴格的數(shù)學理論作為基礎,概念清晰,易于使用。1970年,美國IBM公司San Jose研究實驗室研究員E.F.Codd提出了關系數(shù)據(jù)庫模型,奠定了關系數(shù)據(jù)庫理論的基礎。E.F.Codd也因此獲得了1981年的計算機圖靈獎。1974年, San Jose實驗室研制成功System R,這是世界上最早的關系數(shù)據(jù)庫管理系統(tǒng)(RDBMS)。1980年后,眾多RDBMS產(chǎn)品相繼推出,包括Oracle、Infomix、Sybase等。1990年后,RDBMS不斷發(fā)展,能夠支持分布式數(shù)據(jù)庫、開放環(huán)境下異構數(shù)據(jù)庫互連,OLTP(On-Line Transaction Processing)聯(lián)機事務處理和OLAP(On-Line Analytical Processing)聯(lián)機分析處理。關系數(shù)據(jù)庫代表:Oracle、DB2、SQLServer、MySQL、SyBase、InFormix等。
3、后關系數(shù)據(jù)庫
關系數(shù)據(jù)庫在數(shù)據(jù)模型、性能、擴展伸縮性上存在問題。由于出現(xiàn)了一些后關系數(shù)據(jù)庫的技術,比如面向對象數(shù)據(jù)庫,基于擴展的關系數(shù)據(jù)庫模型或者面向對象數(shù)據(jù)庫模型,目前,該技術尚未完全成熟。但是它支持包括數(shù)據(jù)、對象的管理,能夠很好地和面向對象設計技術相融合。因此,許多商品化的關系數(shù)據(jù)庫管理系統(tǒng)也都進行了擴充,增加了面向對象特性,發(fā)展成ORDBMS。還有這兩年很熱的結構化數(shù)據(jù)庫NOSQL,它打破了長久以來關系型數(shù)據(jù)庫與ACID理論大一統(tǒng)的局面。NoSQL 數(shù)據(jù)存儲不需要固定的表結構,通常也不存在連接操作。在大數(shù)據(jù)存取上具備關系型數(shù)據(jù)庫無法比擬的性能優(yōu)勢。
今天分析就到此結束,文中如有描述不當?shù)牡胤?,歡迎指出。共同進步才是硬道理。
聲明:本網(wǎng)頁內容旨在傳播知識,若有侵權等問題請及時與本網(wǎng)聯(lián)系,我們將在第一時間刪除處理。TEL:177 7030 7066 E-MAIL:11247931@qq.com