數據管理系統(tǒng)是用戶用以對計算機的數據庫進行控制、更新、擴充、傳送和其他操作的軟件系統(tǒng)。
發(fā)展
數據管理是指人們對數據進行收集、組織、存儲、加工、傳播和利用的一系列活動的總和,它經歷了人工管理、文件管理、數據庫管理三個階段。
1.人工管理階段
20世紀50年代以前,計算機主要是用于數據計算。從當時的硬件來看,外存只有紙帶、卡片、盒式錄音磁帶,沒有直接存取設備;從軟件看,沒有操作系統(tǒng)以及管理數據的軟件;從數據看,數據量小,數據無結構,由用戶直接管理,數據問缺乏邏輯組織,數據依賴于特定的應用程序,缺乏獨立性。
2.文件系統(tǒng)階段
20世紀50年代后期到60年代中期,出現了磁鼓、磁盤等直接存取數據的存儲設備。1954年出現了第一臺商業(yè)數據處理的電子計算機UNIACI,標志著計算機開始應用于以加工數據為主的事務處理階段。人們得益于計算機驚人的處理速度和大容量的存儲能力,從而克服了從大量傳統(tǒng)紙張文件中尋找數據的困難,出現基于計算機的數據處理系統(tǒng),并從此迅速發(fā)展起來。
這種數據處理系統(tǒng)是把計算機中的記錄進行存取,并可以實現對文件的修改、插入和刪除,這就是文件系統(tǒng)。文件系統(tǒng)實現了記錄內的結構化,即給出了記錄內各種數據間的關系。但是,文件從整體來看卻是無結構的。其數據面向特定的應用程序,因此數據共享性、獨立性差,且冗余度大,管理和維護的代價也很大。
3.數據庫管理階段
20世紀60年代后期,計算機性能得到提高,更重要的是出現了大容量磁盤,存儲容量大大增加且價格下降。在此基礎上,有可能克服文件系統(tǒng)管理數據的不足,而去滿足和解決實際應用中多個用戶、多個應用程序共享數據的要求,從而使數據能為盡可能多的應用程序服務,這就出現了數據庫這樣的數據管理技術。數據庫的特點是數據不再只針對某一特定程序應用,而是面向全組織,具有整體的結構性,共享性高,冗余度小,具有一定的程序與數據間的獨立性,并且實現了對數據進行統(tǒng)一的控制。數據庫技術的應用使數據存儲量猛增,用戶增加,而且數據庫技術的出現使數據處理系統(tǒng)的研制從圍繞以加工數據的程序為中心轉向圍繞共享數據來進行。這樣,既便于數據的集中管理,又有利于應用程序的研制和維護,從而提高了數據的利用率和相容性,并且有可能從企業(yè)或組織的全局來利用數據,從而提高了決策可靠性。
選擇因素
對一個用面向對象的分析與設計方法建立的系統(tǒng)模型,可選用不同的數據管理系統(tǒng)實現對象的永久存儲。盡管從理論上看面向對象數據庫管理系統(tǒng)最適合對象存儲,但是在工程中更強調從實際出發(fā),要考慮許多其他方面的因素。因此對許多項目而言,關系數據庫管理系統(tǒng)和文件系統(tǒng)都可能成為最合適的選擇。決定采用何種數據管理系統(tǒng),要綜合考慮技術和非技術兩方面的因素。
非技術因素
在非技術方面,主要考慮項目的成本、工期、風險、宏觀計劃等問題。在實際項目中這些問題往往比技術問題更具有決定意義。
①數據管理系統(tǒng)的成熟程度和先進性。
這是相矛盾的兩個方面。保守穩(wěn)健的方針是選用成熟的產品,這可以降低失敗的風險;具有開拓性的方針是選用技術先進,但未必很成熟的產品,這可能會創(chuàng)造更大的發(fā)展空間,并且搶得市場先機。目前大部分文件系統(tǒng)和時態(tài)數據庫都屬于比較成熟的產品;OODBMS從總體上看還不夠成熟,但比較先進。
②價格。
文件系統(tǒng)價格低廉,RDBMS價格有高有低,因產品的功能及性能強弱而異。OODBMS價格大都比較昂貴。
③開發(fā)隊伍的技術背景。
如果一個開發(fā)組織的技術人員已能駕輕就熟地使用某種數據管理系統(tǒng),換用一種他們不熟悉的系統(tǒng)往往意味著開發(fā)成本提高、工期延長和風險增大。
④與其他系統(tǒng)的關系。
技術因素
在技術方面,需要判斷各種數據管理系統(tǒng)適應哪些情況,不適應或不太適應哪些情況,從而根據應用系統(tǒng)的技術特點選用合適的數據管理系統(tǒng)。
①文件系統(tǒng)。
文件系統(tǒng)幾乎可存儲任何類型的數據,包括具有復雜內部結構(非原子)的數據和圖形、圖像、視頻、音頻等多媒體數據。以類和對象的形式定義的數據也可以用文件存儲——每個類對應一個文件,每個對象實例對應文件的一個記錄。
②關系數據庫管理系統(tǒng)。
時態(tài)數據庫對數據存取、數據共享、數據完整性維護、故障恢復、事務處理等功能的支持是強有力的,適合對這些功能要求較高的應用系統(tǒng)。它也很適合需大量保存和管理各類實體之間關系信息的應用系統(tǒng)。但是關系數據模型對數據模式的限制較多。例如,數據庫中的每個表至少要滿足第一范式——每個屬性必須是原子的,即不再含有內部結構。但是面向對象的分析、設計與編程所定義的對象,可以具有任何數據類型的屬性,當對象的內部結構較為復雜時,就不能直接地與關系數據庫的數據模式相匹配,需要經過轉換。時態(tài)數據庫更不適合圖形、圖像、音頻、視頻等多媒體數據和經過壓縮處理的數據。
③面向對象數據庫管理系統(tǒng)。
從純技術的角度看,在面向對象方法開發(fā)的應用系統(tǒng)上采用OODBMS實現其對象存儲是最合理的選擇,幾乎沒有不適合OODBMS的情況。如果說某些項目不適合選用OODBMS,那主要是由于上面所談的各種非技術因素,而不是由于技術因素。需要注意的是,各種OODBMS所采用的面向對象數據模型多少有些差異,與用戶選用的OOA&D方法及OOPL。中對象模型的匹配程度不盡一致,對不同的應用系統(tǒng)有不同的適應性。
功能
數據管理系統(tǒng)的基本功能是按照用戶的要求,從大量的數據資源中提取有信息價值的數據。例如可以通過檢索、排序、合并、轉換、匯總等方法獲得這些數據。數據管理系統(tǒng)要解決兩個主要的問題,一是定義各種數據的要求形式,二是如何由系統(tǒng)來處理這些要求。
對數據的要求可分常規(guī)的和特殊的兩種。所謂常規(guī)要求是用戶的日常業(yè)務活動經常發(fā)生的數據請求,可以事先預料到。例如企業(yè)領導要求知道當前企業(yè)的職工人數、某種產品的每月生產量等。所謂特殊要求是非常規(guī)性的,無法事先預料到的數據請求。例如企業(yè)領導想要知道由于某項原材料供應不足,而影響生產,不能按期把產品交付給訂貨單位的有哪些?應當分別賠償多少錢?
參考資料 >