複製鏈接
請複製以下鏈接發送給好友

查爾斯·巴赫曼

鎖定
20世紀60年代中期以來,數據庫技術的形成、發展和日趨成熟,使計算機數據處理技術躍上了一個新台階,並從而極大地推動了計算機的普及與應用。因此,1973年的圖靈獎首次授予在這方面作出傑出貢獻的數據庫先驅查爾斯·巴赫曼(CharlesW.Bachman)。
中文名
查爾斯·巴赫曼
出生日期
1924年12月11日
畢業院校
密歇根州立大學
出生地
堪薩斯州的曼哈頓

查爾斯·巴赫曼人物生平

巴赫曼1924年12月11日生於堪薩斯州的曼哈頓。1948年在密歇根州立大學取得工程學士學位,1950年在賓夕法尼亞大學取得碩士學位。20世紀50年代在Dow化工公司工作,1961—1970年在通用電氣公司任程序設計部門經理,1970—1981年在Honeywell公司任總工程師,同時兼任Cullinet軟件公司的副總裁和產品經理。Cullinet公司對中國人來説知之者不多,但這個公司當時在美國很有名氣,它是1978年第一家在紐約股票交易所上市的軟件公司,其時微軟在新墨西哥州的阿爾伯克基開張不久,鮮為人知,它的股票是1986年上市的,比Cullinet晚8年之久。但Cullinet最終被CA公司購併。1983年巴赫曼創辦了自己的公司BachmanInformationSystem,Inc.。

查爾斯·巴赫曼主要貢獻

巴赫曼在數據庫方面的主要貢獻有兩項,第一就是前面説的,在通用電氣公司任程序設計部門經理期間,主持設計與開發了最早的網狀數據庫管理系統IDS。IDS於1964年推出後,成為最受歡迎的數據庫產品之一,而且它的設計思想和實現技術被後來的許多數據庫產品所仿效。其二就是巴赫曼積極推動與促成了數據庫標準的制定,那就是美國數據系統語言委員會CODASYL下屬的數據庫任務組DBTG提出的網狀數據庫模型以及數據定義和數據操縱語言即DDL和DML的規範説明,於1971年推出了第一個正式報告——DBTG報告,成為數據庫歷史上具有里程碑意義的文獻。該報告中基於IDS的經驗所確定的方法稱為DBTG方法或CODASYL方法,所描述的網狀模型稱為DBTG模型或CODASYL模型。DBTG曾希望美國國家標準委員會ANSI接受DBTG報告為數據庫管理系統的國家標準,但是沒有成功。1971年報告之後,又出現了一系列新的版本,如1973、1978、1981年和1984年的修改版本。DBTG後來改名為DBLTG(DataBaseLanguageTaskGroup,數據庫語言工作小組)。DBTG首次確定了數據庫的三層體系結構,明確了數據庫管理員DBA(DataBaseAdministrator)的概念,規定了DBA的作用與地位。DBTG系統雖然是一種方案而非實際的數據庫,但它所提出的基本概念卻具有普遍意義,不但國際上大多數網狀數據庫管理系統,如IDMS、PRIMEDBMS、DMSl70、DMSⅡ和DMS1100等都遵循或基本遵循DBTG模型,而且對後來產生和發展的關係數據庫技術也有很重要的影響,其體系結構也遵循DBTG的三級模式(雖然名稱有所不同)。下面我們簡要介紹一下DBTG的系統結構。
DBTG的系統結構
DBTG的系統結構主要包括模式(schema)、子模式(subschema)、物理模式(physicalschema)、數據操縱和數據庫管理系統(DBMS,DataBaseManagementSystem)等幾個部分。模式是對數據庫整體數據邏輯結構的描述,它對應數據庫的概念層,由數據庫管理員藉助模式數據描述語言DDL(DataDescriptionLanguage)建立。子模式是某一用户對他所關心的那部分數據的數據結構的描述,對應於數據庫的外層或用户視圖(userview),是由該用户自己或委託數據庫管理員藉助子模式數據描述語言加以定義的。物理模式或叫存儲模式(storageschema)是對數據庫的數據的存儲組織方式的描述,對應於數據庫的物理層,由數據庫管理員通過數據存儲描述語言DSDL(DataStorageDescriptionLanguage)加以定義(DSDL是DBTG報告的1978年版本提出的,之前的報告用的名稱叫數據介質控制語言DMCLDataMediaControlLanguage)。數據庫可由多個用户、多個應用共享,數據庫應用程序利用數據操縱語言DML(DataManupilationLanguage)實現對數據庫數據的操縱,但一個應用程序必須援引某一模式的某一子模式(也就是説它操作的數據限於某一用户視圖中的數據)。DML語句可以嵌在宿主語言(如COBOL,Fortran等)中,在數據庫管理系統的控制下訪問數據庫中的數據,並通過一個稱為用户工作區UWA(UserWorkArea)的緩衝區與數據庫通信,完成對數據庫的操作。數據庫管理系統的其他功能包括維護數據庫中數據的一致性(consistency)、完整性(integrity)、安全性(security)和一旦出現故障情況下的恢復(recovery),以及在多個應用程序同時存取同一數據單元時處理併發性(concurrency),以避免出現“髒數據”(dirtydata)或“丟失更新”(10seupdate)等不正常現象。由此可見,有關模式的數據描述語言DDL是建立數據庫的工具,數據操縱語言DML是操作數據庫、存取其中的數據的工具,而數據庫管理系統DBMS則是執行這種操作並負責維護與管理數據庫的工具,它們各司其職,完成數據庫整個生命期中的一切活動。
由於巴赫曼在以上兩方面的傑出貢獻,巴赫曼被理所當然地公認為“網狀數據庫之父”或“DBTG之父”,在數據庫技術的產生、發展與推廣應用等各方面都發揮了巨大的作用。
在數據庫的文檔資料中,有一種描述網狀數據庫模型的數據結構圖,這種圖解技術是巴赫曼發明的,通常被稱為“巴赫曼圖”(Bachmandiagram)。此外,在擔任ISO/TC97/SC—16主席時,巴赫曼還主持制定了著名的“開放系統互連”標準,即OSI(OpenSystemInterconection)。OSI對計算機終端設備、人員、進程或網絡之間的數據交換提供了一個標準規程,實現OSI對系統之間達到彼此互相開放有重要意義。巴赫曼也是建立在波士頓的計算機博物館的創始人之20世紀70年代以後,由於關係數據庫的興起,網狀數據庫受到冷落。但隨着面向對象技術的發展,有人預言網狀數據庫將有可能重新受到人們的青睞。但無論這個預言是否實現,巴赫曼作為數據庫技術先驅的歷史作用和地位是學術界和產業界普遍承認的。

查爾斯·巴赫曼發表的文章

巴赫曼發表了很多文章和論文,下面僅列出部分文章
1962年。"Precedence Diagrams: The Key to Production Planning, Scheduling and Control." In: ProCo Features. Supplement No 24, August 24. .
1965年。"Integrated Data Store." in: DPMA Quarterly, January 1965.
1969年。"Software for Random Access Processing." in: Datamation April 1965.
1969年。"Data Structure Diagrams." in: DataBase: A Quarterly Newsletter of SIGBDP. vol. 1, no. 2, Summer 1969.
1972年。"Architecture Definition Technique: Its Objectives, Theory, Process, Facilities, and Practice." co-authored with J. Bouvard. in: Data Description, Access and Control: Proceedings of the 1972 ACM-SIGFIDET Workshop, November 29-December 1, 1972.
1972年。"The Evolution of Storage Structures." In: Communications of the ACM vol. 15, no. 7, July 1972.
1972-73年。"Set Concept for Data Structure." In: Encyclopedia of Computer Science, 1972-1973.
1973年。"The Programmer as Navigator." In: Communications of the ACM vol. 16, no. 11, November 1973.
1974年。"Implementation Techniques for Data Structure Sets." In: Data Base Management Systems, 1974.
1977年。"Why Restrict the Modeling Capability of Codasyl Data Structure Sets?" In: National Computer Conference vol. 46, 1977.
1978年。"Commentary on the CODASYL Systems Committee's Interim Report on Distributed Database Technology." National Computer Conference vol. 47, 1978.
1978年。"DDP Will Be Infinitely Affected, So Managers Beware!" in: DM, March 1978.
1980年。"The Impact of Structured Data Throughout Computer-Based Information Systems." In: Information Processing 80, 1980.
1980年。"The Role Data Model Approach to Data Structures." In; International Conference on Data Bases, March 24, 1980.
1982年。"Toward a More Complete Reference Model of Computer-Based Information Systems." Co-authored with Ronald G. Ross. In: Computers and Standards 1, 1982.
1983年。"The Structuring Capabilities of the Molecular Data Model." In; Entity-Relationship Approach to Software Engineering. C. G. Davis, S. Jajodia, and R. T. Yeh. eds. June 1983.
1987. "A Case for Adaptable Programming." In: Logic vol. 2, no. 1, Spring 1987.
1989年。"A Personal Chronicle: Creating Better Information Systems, with Some Guiding Principles." In: IEEE Transactions on Knowledge and Data Engineering vol. 1, no. 1, March 1989.

查爾斯·巴赫曼成就及榮譽

巴赫曼是在1973年8月28日在亞特蘭大舉行的ACM年會上接受圖靈獎的,他發表了題為“作為導航員的程序員”(TheProgrammerasNavigator)的圖靈獎演説,刊載於CommunicationsofACM,1974年11月,653-658頁,也可見《前20年的ACM圖靈獎演説集》(ACMTuringAwardLecturesTheFirst20Yean:1966—1985,ACMPr.),269,286頁。

查爾斯·巴赫曼計算機數據處理發展史

為了説明巴赫曼的功績,讓我們先簡要回顧一下計算機數據處理發展的歷史。

查爾斯·巴赫曼20世紀40年代

計算機在20世紀40年代誕生之初只用於科學與工程計算,不能用於數據處理,因為當時的計算機還只能處理數字,不能處理字母和符號,而字母和符號恰是數據處理中的主要處理對象。此外,當時的計算機也還沒有數據處理所需要的大容量存儲器

查爾斯·巴赫曼20世紀50年代

20世紀50年代初,發明了字符發生器(CharacterGenerator),使計算機具有了能顯示、存儲與處理字母及各種符號的能力;又成功地將高速磁帶機用於計算機作存儲器,這是對計算機得以進入數據處理領域具有決定意義的兩大技術進展。但是磁帶只能順序讀寫,速度也慢,不是理想的存儲設備。

查爾斯·巴赫曼1956年

1956年,IBM公司和RemingtonRand公司先後實驗成功磁盤存儲器方案,推出了商用磁盤系統。磁盤不但轉速快,容量大,還可以隨機讀寫,為數據處理提供丁更加理想的大容量、快速存儲設備。有了這些硬件的支持,計算機數據處理便日益發展起來。
但是,初期的數據處理軟件只有文件管理(filemanagement)這種形式,數據文件和應用程序一一對應,造成數據冗餘,數據不一致性和數據依賴(datadependence)。所謂數據依賴就是編寫程序依賴於具體數據,拿COBOL這種常用的商用語言來説吧,程序員必須在數據部的文件節(DATADIVISION,FILESECTION)中詳細説明文件中各數據項的類型和長度、格式,在設備部的輸入一輸出節(ENVIRON—MENTDIVISION,INPUT-OUTPUTSECTION)中還要通過SELECT語句和ASSIGN語句把文件和具體設備聯繫起來,並使用ORGANIZATION語句和ACCESSMODE語句嚴格規定文件的組織方式和存取方式。根據這些具體規定,程序員再在過程部(PROCEDUREDIVISION)中用一系列命令語句導航,才能使系統完成預期的數據處理任務。應用程序與數據的存儲、存取方式密切相關這種狀況給程序的編制、維護都造成很大的麻煩。
後來出現了文件管理系統FMS(PileManagementSystem)作為應用程序和數據文件之間的接口,一個應用程序通過FMS可以和若干文件打交道,在一定程度上增加了數據處理的靈活性。但這種方式仍以分散、互相獨立的數據文件為基礎,數據冗餘、數據不一致性、處理效率低等問題仍不可避免。這些缺點在較大規模的系統中尤為突出。以美國在20世紀60年代初制定的阿波羅登月計劃為例,阿波羅飛船由約200萬個零部件組成,它們分散在世界各地製造生產。為了掌握計劃進度及協調工程進展,阿波羅計劃的主要合約者Rock-well公司曾研製、開發了一個基於磁帶的零部件生產計算機管理系統,系統共用了18盤磁帶,雖然可以工作,但效率極低,18盤磁帶中60%是冗餘數據,維護十分困難。這個系統的狀況曾一度成為實現阿波羅計劃的重大障礙之一。
針對上述問題,各國學者、計算機公司、計算機用户以及計算機學術團體紛紛開展研究,為改革數據處理系統進行探索與試驗,其目標主要就是突破文件系統分散管理的弱點,實現對數據的集中控制,統一管理。結果就是出現了一種全新的高效的管理技術——數據庫技術。Rockwell公司就與IBM公司合作,在當時新推出的IBM360系列上研製成功了世界上最早的數據庫管理系統之一IMS(1nformationManagementSystem),為保證阿波羅飛船1969年順利登月作出了貢獻。IMS是基於層次模型的。幾乎同時,巴赫曼在通用電氣公司主持設計與實現了網狀的數據庫管理系統IDS(IntegratedDataSystem)。