生平
大家都說,Edgar F. Codd(通常被稱為Ted)是一個才華橫溢的人。他的成就之一,是在二十世紀七十年代初開發了一個關係型數據管理模型--存儲和操作大量業務數據的一個複雜、完整的理論。根據Codd的設計構建的關係資料庫成為了當今企業的基礎;銀行依賴關係資料庫來跟蹤資金流動;零售商使用它們來監控庫存水平;人力資源部門使用它們來管理員工賬戶;圖書館、醫院和政府機構在其中存儲數百萬條記錄;事實上,世界上幾乎所有的企業都在使用某種容量的關係資料庫。自從Codd公布其理論以來的30年中,關係資料庫已經成為一個年收入近130億美元的行業。
早期生活
Ted Codd於1923年出生在英格蘭多塞特郡波特蘭市的一個大家庭中。他曾經就讀於牛津大學,主修數學和化學專業,第二次世界大戰期間曾在皇家空軍服役。第二次世界大戰後,Codd動身前往紐約並成為IBM的一名數學編程員。Codd所做的第一個項目是幫助構建一個稱為可選順序電子計算器(Selective Sequence Electronic Calculator,SSEC)的早期計算機,據說該計算機占據了一棟市區辦公樓中的兩層。
在二十世紀六十年代中期,Codd獲得了密西根大學計算機科學專業的博士學位。之後,他調到了IBM位於加利福尼亞州聖何塞市的開發實驗室,在那裡,他開始從事關係型數據管理模型(這是一個在很大程度上依賴於數學的模型)的開發。
改進資料庫
早期的計算機太大、太昂貴了,以至於不能廣泛地套用於企業。在二十世紀六十年代,計算機開始變得經濟有效,並逐漸被私營機構所採用,同時專門針對企業套用開發了許多標準和語言。其中有兩個用於處理數據的模型:層次模型和關係網路模型。
在層次模型中,數據記錄以層次方式相互關聯;主要記錄位於上層,後續的各個記錄類型在下層分支。在網路模型中,一層中的記錄集可能屬於鄰近的上層中的兩個不同的包含層次中。對於這兩種模型,編寫查詢語句來檢索信息要求深入了解數據本身的導航結構,因而這是一個複雜的任務,一般都是由專門的編程人員來完成的。
Codd提出了一個新的解決方案。在最終收集到1970年具有創新性的技術論文--"A Relational Model of Data for Large Shared Data Banks"(大型共享資料庫的關係數據模型)中的一系列報告中,Codd建議將數據獨立於硬體來存儲,程式設計師使用一個非過程語言來訪問數據。Codd的解決方案的關鍵,是將數據保存在由行和列組成的簡單表中(在這種表中,相似數據的列將各個表相互聯繫起來),而不是將數據保存在一個層次結構中。按照Codd的想法,資料庫用戶或應用程式不需要知道數據結構來查詢該數據。發表了該論文之後不久,Codd又發布了更為詳細的指導原則,提出了其指導創建關係資料庫的12項原則。
在Codd的理論公開之後,並沒有立即被IBM所採納。IBM已經對一個稱為IMS的層次型資料庫進行了大量投資,因而它讓其他公司和企業家去考慮如何進一步發展Codd的理論。其中的領袖人物是拉里o埃利森,他在1977年與Ed Oates和Bob Miner一起研製了世界上第一個商用關係型資料庫管理系統,在此過程中,創辦了一個公司,後來成為Oracle公司。其餘要說的就是資料庫的歷史了。
但是對Ted Codd來說,歷史並沒有停留在那兒。雖然直至二十世紀八十年代初,Codd一直就職於IBM,但他也與長期的合作者Chris Date共同創建了一家諮詢服務公司,而且,直到其去世,Codd還一直繼續研究和發表關於數據的規範化、分析和數據建模等主體的文章。
成就
E.F.Codd 是關係資料庫的鼻祖。首次提出了資料庫系統的關係模型,開創了資料庫關係方法和關係數據理論的研究。為資料庫技術奠定了理論基礎。由於他的傑出貢獻,於1981年獲得ACM圖靈獎。 圖靈獎是計算機界的最高獎項,相當於其他學科的諾貝爾獎。
在資料庫技術發展的歷史上,1 9 7 0 年是發生偉大轉折的一年。這一年的6 月,I B M 聖約瑟研究實驗室的高級研究員埃德加·考特 (Edgar Frank Codd) 在Communications of ACM 上發表了《大型共享資料庫數據的關係模型》一文。A C M 後來在1 9 8 3 年把這篇論文列為從 1 9 5 8 年以來的2 5 年中最具里程碑意義的2 5 篇論文之一,因為它首次明確而清晰地為資料庫系統提出了一種嶄新的模型, 即關係模型。 “關係”( r e l a t i o n ) 是數學中的一個基本概念,由集合中的任意元素所組成的若干有序偶對表示, 用以反映客觀事物間的一定關係。如數之間的大小關係、人之間的親屬關係、商品流通中的購銷關係等等。在自然界和社會中, 關係無處不在; 在計算機科學中, 關係的概念也具有十分重要的意義。計算機的邏輯設計、編譯程式設計、算法分析與程式結構、信息檢索等,都套用了關係的概念。而用關係的概念來建立數據模型,用以描述、設計與操縱資料庫,考特是第一人。
由於關係模型既簡單、又有堅實的數學基礎, 所以一經提出, 立即引起學術界和產業界的廣泛重視,從理論與實踐兩方面對資料庫技術產生了強烈的衝擊。在關係模型提出之後,以前的基於層次模型和網狀模型的資料庫產品很快走向衰敗以至消亡,一大批商品化關係資料庫系統很快被開發出來並迅速占領了市場。其交替速度之快、除舊布新之徹底是軟體史上所罕見的。基於7 0 年代後期到8 0 年代初期這一十分引人注目的現象,1 9 8 1 年的圖靈獎很自然地授予了這位“關係資料庫之父”。在接受圖靈獎時, 他做了題為“關係資料庫:提高生產率的實際基礎”的演說。(刊於1982 年2 月的C o m m u n i c a t i o n s o f A C M 第1 0 9 至第1 1 7 頁,或見《A C M圖靈獎演說集》第3 9 1 至第4 1 0頁。)
考特原是英國人,1 9 2 3 年8 月1 9 日生於英格蘭中部的港口城市波特蘭。第二次世界大戰爆發以後,年輕的考特應徵入伍在皇家空軍服役,1 9 4 2 至1 9 4 5 年期間任機長,參與了許多重大空戰,為反法西斯戰爭立下了汗馬功勞。二戰結束以後,考特上牛津大學學習數學,於1 9 4 8 年取得學士學位以後到美國謀求發展。他先後在美國和加拿大工作,參加了I B M 第一台科學計算機7 0 1 以及第一台大型電晶體計算機 S T R E T C H 的邏輯設計,主持了第一個有多道程式設計能力的作業系統的開發。他自覺硬體知識缺乏,於是在6 0 年代初,到密西根大學進修計算機與通信專業( 當時他已年近4 0 ) ,並於1 9 6 3 年獲得碩士學位, 1 9 6 5 年取得博士學位。這使他的理論基礎更加紮實,專業知識更加豐富。加上他在此之前十幾年實踐經驗的積累,終於在1 9 7 0 年迸發出智慧的閃光,為資料庫技術開闢了一個新時代。
由於資料庫是計算機各種套用的基礎,所以關係模型的提出不僅為資料庫技術的發展奠定了基礎,同時也成為促進計算機普及套用的極大推動力。在考特提出關係模型以後,I B M 投巨資開展關係資料庫管理系統的研究,其“S y s t e m R”項目的研究成果極大地推動了關係資料庫技術的發展,在此基礎上推出的D B 2 和S Q L 等產品成為I B M 的主流產品。S y s t e m R本身作為原型並未問世,但鑒於其影響,ACM還是把1988 年的 “軟體系統獎”授予了S y s t e m R開發小組( 獲獎的6 個人中就包括1 9 9 8 年圖靈獎得主J . G r a y )。這一年的軟體系統獎還破例同時授給兩個軟體,另一個得獎軟體也是關係資料庫管理系統,即著名的I N G R E S 。
1 9 7 0 年以後,考特繼續致力於完善與發展關係理論。1 9 7 2 年,他提出了關係代數和關係演算的概念, 定義了關係的並、交、投影、選擇、連線等各種基本運算, 為日後成為標準的結構化查詢語言(S Q L )奠定了基礎。
考特還創辦了一個研究所(關係研究所)和一家公司(C o d d & A s s o c i a t i o n s),他本人是美國國內和國外許多企業的資料庫技術顧問。1 9 9 0 年,他編寫出版了專著《資料庫管理的關係模型: 第二版》, 全面總結了他幾十年的理論探索和實踐經驗。
考特是最早提出資料庫OLAP概念的科學家。考特在提出OLAP概念的時候指出OLAP必須滿足以下的12條規則:
有多維度的視角。
對用戶透明。
訪問性好。
提供報告的性能要穩定,不能因為維度的增加而變差。
採用客戶端/伺服器架構。
數據的每個維度都相當。
對稀疏矩陣有動態最佳化功能。
多用戶支持。
對於跨域的計算不做任何限制。
直觀的數據操作。
靈活的報告體系。
任意多的維度和維度集合。
1.有多維度的視角。
2.對用戶透明。
3.訪問性好。
4.提供報告的性能要穩定,不能因為維度的增加而變差。
5.採用客戶端/伺服器架構。
6.數據的每個維度都相當。
7.對稀疏矩陣有動態最佳化功能。
8.多用戶支持。
9.對於跨域的計算不做任何限制。
10.直觀的數據操作。
11.靈活的報告體系。
12.任意多的維度和維度集合。