正文 第六章 計算機的軟件組成(三)(2 / 3)

6.4數據管理係統

在計算機中,對數據信息的管理具有非常重要的意義。特別是像數據處理移動類型的工作,例如人口普查中的統計分析,企業事務管理,檔案管理,情報檢索等。在這類任務中,數據量很大,管理問題更顯得重要。在本節中我們將介紹三種數據管理方式。

一、程序直接管理數據方式

在早期,程序員在編寫程序時,需要自己考慮安排數據的存儲位置。換句話說,自己需要的數據,由自己的程序管理,這稱為程序直接管理數據方式。我們用在這種方式中程序與數據之間的關係。表示程序與數據都在主存中,可分為程序區與數據區。表示數據先在磁盤中,調人主存數據區後,方可操作處理。在這兩種情況中,程序和數據之間是一對一直接管理的關係,數據附屬於有關的程序。

當數據量不大,而且是一個用戶獨占時,仍可采用這種方式。

二、文件係統管理數據方式

操作係統的出現,使數據管理方式進入文件係統時代。如前所述,一組具有獨立完整含義的信息集合,可以構成一個獨立的文件,冠以文件名。一個數據文件由若幹記錄組成,每個記錄包含若幹相關的數據元素。用戶可以建立程序文件與獨立的數據文件,所有這些文件都交由操作係統管理。用戶程序就可簡化數據管理部分,隻需按文件名進行存取與修改。表示了在文件係統管理方式下,程序與數據間的關係。所舉的例子假定:程序A需要使用數據文件C,而程序B需要使用數據文件D及E,表示一個用戶可以建立與處理一個或幾個有關的數據文件。其中有些文件可以共享,例如程序A與B都可以調用文件D。

文件係統管理數據方式至今仍廣泛使用,但對於大量數據的管理與檢索,普通的文件係統也有不足之處:數據共享能力不夠強,存儲空間利用率不夠高。

三、數據庫係統管理數據方式

為了減少不必要的信息重複,便於實現數據的共享,出現了數據庫的概念。數據庫是在計算機存儲設備上合理存放的、相互關聯的數據的集合,能提供給所有可能的不同用戶,共享使用,被獨立地維護。

數據庫是一種獨立的、不依附於任一用戶程序的、完整的數據集合,平時可保存在磁盤中,由一個數據庫管理係統進行管理。需要時將有關部分送入主存,供處理機使用,各種用戶可在數據庫管理係統的管理下,使用、建立、修改、刪除有關數據。

與一般的數據集合相比,數據庫具有如下一些特點:

(1)盡可能減少信息重複,以節約存儲空間。

(2)能為多個用戶共享,使各用戶可以方便地調用有關數據。

(3)數據的存放盡可能獨立於用戶程序,換句話說,數據具有獨立性,不依賴於應用程序。

(4)由一個軟件統一管理這些數據,如維護、增加、變更、檢索等,這種統一管理有助於保持數據的完整性。用戶不必過問這些數據在計算機中如何存放。

以上這些特點是很有價值的,由於許多計算機是用於數據處理領域,因此數據庫技術的出現,對計算機的應用有很重要的意義。

一個數據庫係統由下麵幾個部分組成:

1.數據模型

這是指用怎樣的結構來組織數據,常用的有三種模型,相應地有三類數據庫係統。

(1)關係模型

它的特點是用各種關係框架來組織相關的數據,並描述他們之間的聯係,通過各種關係之間的連接,進一步建立聯係。

例如設計一個教學情況檔案數據庫,可以包含幾種關係框架:學生關係、課程關係、教員關係、任課關係、學習關係等。每種關係框架中含有若幹信息項。如在學生關係框架中有:學號、姓名、年齡、性別等:在課程關係框架中有:課程號、課程名、學時數等,在教員關係框架中有:姓名、年齡、職稱等,在任課關係框架中有:課程號、任課教師等:在學習關係框架中有:學號、課程號、分數等。根據這種關係模型,可以查找出某個學生學了哪些課,成績如何?也可以查找出某位教師講了哪幾門課,有多少學生聽課,成績如何?或是沿其他一些檢索方式查詢。

廣泛流行的關係型數據庫管理係統dBASE,就是采用關係模型。

(2)層次模型

這種模型采取分層樹形結構,組織相關的數據,並描述他們之間的聯係,例如將一個學生成績檔案分成幾級:第一級是各班的平均成績,第二級是各班每個學生的手均成績,第三級是每個學生分科成績!

(3)網絡模型

在分層模式的基礎之上,如果允許一個下層元素節點可以和多個上層元素節點相聯係,則形成一種比樹狀結構更複雜的網絡結構。

2.數據庫

數據模型隻是一種結構框架,而信息才是其中的內容,既有結構模型,又有數據信息,才構成一個實際的數據庫。

3.數據庫管理軟件

這是對數據庫進行管理與控製的係統軟件。它負責裝配數據,蒐新內容,重新定義,查詢檢索,通信控製,對用數據庫語言編寫的程序進行翻譯,控製有關的運行操作等。

4.數據庫語言

每種數據庫係統都向用戶提供一套數據庫語言,用戶可用它來描述和定義數據的邏輯結構、物理特征、訪問規則,並表達對數據庫進行操作的控製命令,如要求進行檢索、增加、刪除、修改數據。

數據庫管理係統是在操作係統支持和管理下的一個係統軟件分支,對構造計算機信息管理係統有很重要的意義。

6.5服務性程序

服務性程序是指:為了幫助用戶使用與維護計算機,提供服務性手段,而編製.的一類程序。這類程序可以包含很廣泛的內容,一般指程序的輸入與裝配,編輯,診斷,數製轉換,複製等。隨著技術的不斷發展,許多幫助用戶的輔助程序,繼續大量湧現。

1.編輯程序

編輯程序是經常使用的一種服務程序,它使用戶能夠通過鍵盤與顯示終端,方便地輸入並編輯自己的程序或其他文件。編輯功能如刪除、修改1插入某些內容,進行搬遷組裝,複製等。