- 電子商務數據庫技術(第3版)
- 潘郁
- 2317字
- 2019-12-11 15:42:18
2.1.1 數據管理技術的演變
數據管理技術的發展是與信息技術的整體發展水平同步的。軟、硬件技術和信息市場的客觀需求共同推動著數據庫技術的發展。存儲器類型的不斷推陳出新,以及呈幾何級數攀升的CPU速度為數據庫技術提供了良好的硬件基礎,高級語言的出現帶來了過程、控制、函數等概念,大大提高了處理各種數據的能力,從物質技術方面極大地推動了數據庫技術的研究和發展。從客觀需求來看,應用范圍的不斷擴大也提供了充足的動力,使得數據庫技術從僅用于科學計算擴展到用于行政管理和技術控制,使得數據庫技術的發展更加全面。
數據管理是數據庫的核心任務,其內容包括對數據的分類、組織、編碼、儲存、檢索和維護。數據管理技術隨著計算機硬件和軟件的發展而不斷地發展。從數據管理技術的發展來看,到目前為止,數據管理技術經歷了人工管理、文件系統和數據庫系統三個階段。
20世紀50年代中期以前為人工管理階段,這是數據管理的初級階段。當時計算機剛剛誕生不久,主要用于科學計算。從硬件來看,這一階段沒有磁盤等直接存取的存儲設備,只有磁帶、紙帶、卡片等;從軟件來看,該階段沒有操作系統和管理數據的軟件,只有簡單的管理程序。數據處理方式是批處理。
人工管理階段數據管理的特點如下。
(1)數據不保存。
由于該時期的計算機主要用于科學計算,通常不需要長期保存數據,只是在計算某一課題時將有關數據輸入,用完后不保存原始數據,也不保存計算結果。
(2)數據缺乏管理軟件。
沒有專門對數據進行管理的軟件系統,程序員不僅要規定數據的邏輯結構,而且還要在程序中設計物理結構,包括存儲結構、存取方法、輸入輸出方式等。
(3)數據冗余度高。
數據與程序不具有獨立性,一組數據對應于一個程序,數據是面向應用的。即使兩個程序使用相同的數據,也必須各自定義、各自組織,數據無法共享、無法相互利用和互相參照,從而導致程序和程序之間有大量重復的數據。
在這個時期,數據的管理基本上是手工的、分散的,計算機還沒有在數據管理中發揮應有的作用。所以,這種管理方式嚴重影響了計算機的使用效率。
人工管理階段的數據和程序之間的關系如圖2.1所示。

圖2.1 人工管理階段數據和程序之間的關系
20世紀50年代后期到60年代中期為文件系統階段。這一階段計算機技術有了很大的發展,出現了計算機的聯機工作方式,計算機開始大量用于管理。在硬件方面,外存儲器有了磁盤、磁鼓等可以直接存儲的設備。在軟件方面,出現了操作系統以及包含于其中的文件管理系統,專門對大量的數據進行管理。不過文件系統也只是簡單地存放數據,它們之間并沒有有機的聯系。數據的存儲依賴于應用程序的使用方法,不同的應用程序仍然很難共享同一數據文件。另外,文件系統對數據存儲沒有一個相應的模型約束,所以數據冗余大。
文件系統階段數據管理的特點如下。
(1)數據冗余度大。
文件系統中的文件都與某個應用程序相對應,數據仍是面向應用的,當不同的應用程序所需要的數據有部分相同也必須獨立建立各自的文件,而不能共享相同的數據。
(2)數據不一致。
由于同一信息在不同的應用范圍內采集,有可能造成采集標準不一樣,在不同的應用程序中有不同的數據表示。
(3)程序和數據具有物理獨立性,但不具有邏輯獨立性。
文件系統可以提供存取方法使程序與數據之間進行轉換,而不需要程序員進行維護,使得程序和數據具有物理獨立性。文件系統中的文件是為某一個特定應用程序服務的,文件的邏輯結構相對于該應用程序是優化的。但這樣使得系統難以擴充,一旦數據的邏輯結構改變則對應的應用程序必須修改。應用程序的改變也會影響文件的數據結構的改變,所以程序和數據之間缺乏邏輯獨立性。
文件系統階段數據和程序之間的關系如圖2.2所示。

圖2.2 文件系統階段數據和程序之間的關系
數據庫系統階段是從20世紀60年代后期開始的。由于計算機用于管理,從而使數據量急劇增加,其中非數值數據占據的比例較大,而非數值數據比數值數據復雜得多,不僅要知道各項數據的本身內容,而且還需要知道它們之間的關系,這就需要一個高度組織化的數據管理系統。另外,隨著計算機軟、硬件技術的飛速發展,網絡通信的出現使得各種用戶共享一個數據集合成為可能,在這種情況下出現了數據庫系統。在這一階段中,數據庫中的數據不再是面向某個應用或某個程序,而是面向整個企業(組織)或整個應用的。
數據庫系統解決了人工管理和文件系統的弊端,它把數據的定義和描述從應用程序中分離出去,程序對數據的存取全部由數據庫管理系統統一管理,從而保證了數據和程序的邏輯獨立性。這樣數據就可以供各種用戶共享且具有最小冗余度,若建立了一個良好的數據庫管理系統,就可以為多種程序并發地使用數據庫提供及時有效的處理,并保證數據的安全性和完整性。
數據庫系統階段的特點如下。
(1)使用復雜的數據模型來表示結構。
數據庫通過數據模型來描述數據本身的特征以及數據之間的關系。數據庫的管理不僅要考慮在一個程序中數據的結構,還要考慮在整個工程中應用處理的數據的結構。數據的結構化是數據庫的重要特征之一,是其與文件系統的根本區別所在。
(2)具有很高的數據獨立性。
用戶可以使用簡單的邏輯結構來操作數據而不需要考慮物理結構,同時,物理結構的改變也不影響數據的邏輯結構和應用程序。
(3)數據共享度高、冗余度小。
由于數據庫是從整體上來描述數據的,數據不再面向某一應用,所以大大減小了數據的冗余度,從而節省了存儲空間,減少了存取時間,避免了數據的不一致性。在具體使用時可以抽取整體數據的子集用于不同的應用系統。當應用改變時,只要重新選擇子集或者稍加改變,數據即可有更多的用途。
數據庫系統階段數據和程序之間的關系如圖2.3所示。

圖2.3 數據庫系統階段數據和程序之間的關系