概論
1.1 數據庫的地位
- 數據庫技術產生於六十年代末,是數據管理的最新技術,是計算機科學的重要分支。
- 數據庫技術是信息系統的核心和基礎它的出現極大地促進了計算機應用向各行各業的滲透。
- 數據庫的建設規模、數據庫信息量的大小和使用頻度已成為衡量一個國家信息化程度的重要標志。
1.2 數據庫的四個基本概念
- 數據:
-
數據 (Data) 是數據庫中存儲的基本對象。
-
數據的定義:是用來描述事物的符號。
數字、字符串、日期、邏輯值、文本、圖形、圖象、聲音這些都是數據。不同的數據用不同的符號來描述。
-
數據的特點:數據與其語義是不可分的。
列如:一個學生是1996年出生的,這里1996年的語義表示的就是出生年份。單單把1996拿出來就沒有語義,別人就不知道是什么意思。在存儲一個數字93作為數據,但沒有提供語義,別人就不知道93是什么意思,它有可能是:學生某門課的成績、某人的體重、某班的人數等等。所以需要提供語義。
-
一個完整的數據:
李明,男,197205,江蘇南京市,計算機系,1990
語義:學生姓名、性別、出生年月、籍貫、所在院系、入學時間
解釋:李明是個大學生,1972年5月出生,江蘇南京市人,1990年考入計算機系
-
數據庫:
- 數據庫 (Database, 簡稱 DB) 是長期儲存在計算機內、有組織的、可共享的數據集合。
- 數據庫的基本特征:
- 數據按一定的數據模型組織、描述和儲存
- 可為各種用戶共享
- 冗余度較小
- 數據獨立性較高
- 易擴展
-
數據庫管理系統:
- 數據庫管理系統( Database ManagementSystem ,簡稱 DBMS )是位於用戶與操作系統之間的一層數據管理軟件。
- DBMS 的用途
– 科學地組織和存儲數據、高效地獲取和維護數據 - DBMS 的主要功能:
- 數據定義功能
提供數據定義語言(DDL)
定義數據庫中的數據對象 - 數據組織、存儲和管理
分類組織、存儲和管理各種數據
確定組織數據的文件結構和存取方式
實現數據之間的聯系
提供多種存取方法提高存取效率 - 數據操縱功能
提供數據操縱語言(DML)
實現對數據庫的基本操作 (查詢、插入、刪除和修改) - 數據庫的事務管理和運行管理
數據庫在建立、運行和維護時由DBMS統一管理和控制
保證數據的安全性、完整性、多用戶對數據的並發使用
發生故障后的系統恢復 - 數據庫的建立和維護功能(實用程序)
數據庫初始數據裝載轉換
數據庫轉儲
介質故障恢復
數據庫的重組織
性能監視分析等 - 其它功能
DBMS與網絡中其它軟件系統的通信
兩個DBMS系統的數據轉換
異構數據庫之間的互訪和互操作
- 數據定義功能
-
數據庫系統:
- 什么是數據庫系統(Database System,簡稱DBS)
在計算機系統中引入數據庫后的系統構成
-
數據庫系統的構成:
- 數據庫
- 數據庫管理工具(及其應用開發工具)
- 應用程序
- 數據庫管理員(dba)
1.3 數據管理技術的產生和發展
1.3.1 什么是數據管理
-
對數據進行分類、組織、編碼、存儲、檢索和維護
-
數據處理的中心問題
1.3.2 數據管理技術的發展過程
-
人工管理階段(20世紀40年代中–50年代中)
- 產生的背景:
- 應用需求:科學計算
- 硬件水平:無直接存取存儲設備
- 軟件水平:沒有操作系統
- 處理方式:沒有共享、大家想要同一份數據需要進行批處理,每個人復制一份。
- 特點:
- 數據的保存:應用程序,數據不保存。
- 數據面向的對象:某個單一的應用程序
- 數據的共享程度:無共享、冗余度極大
- 數據的獨立性:數據和應用程序不獨立
- 數據的結構化:無結構
- 數據控制能力:應用程序自己控制
- 產生的背景:
-
文件系統階段(20世紀50年代末–60年代中)
- 產生的背景:
- 應用需求:科學計算、管理
- 硬件水平:磁盤、磁鼓
- 軟件水平:有文件系統進行管理
- 處理方式:聯機實時處理、批處理,有一定的共享能力
- 特點:
-
數據的保存:文件系統,數據可長期保存、按文件名訪問,按記錄存取。
-
數據面向的對象:某個單一的應用程序
-
數據的共享程度:共享差、冗余度大
-
數據的獨立性:獨立性差
-
數據的結構化:記錄內有結構 , 整體無結構
記錄內有結構:在進行存儲的時候,只有當前的內容有結構,跟其他內容不能夠聯系起來。 列如:a老師有:姓名、性別、身高等信息結構,但跟他有關聯的b學生的信息結構不能體現出聯系關系,兩者之間相互獨立的。
-
數據控制能力:應用程序自己控制
-
- 產生的背景:
-
數據庫系統階段(20世紀60年代末–現在)
- 產生的背景:
- 應用需求:大規模管理
- 硬件水平:大容量磁盤
- 軟件水平:有數據庫管理系統
- 處理方式:聯機實時處理 , 分布處理 , 批處理
- 特點:
-
數據的保存:文件系統,數據可長期保存、使用DBMS進行管理。
-
數據面向的對象:對現實世界的模擬來進行存儲數據
-
數據的共享程度:共享高、冗余度小
數據的高共享性的好處: 降低數據的冗余度,節省存儲空間 避免數據間的不一致性,使系統易於擴充。
-
數據的獨立性:高度的物理獨立性和一定的邏輯獨立性
物理獨立性 指用戶的應用程序與存儲在磁盤上的數據庫中數據是相互獨立的。 當數據的物理存儲改變了,應用程序不用改變。 比如:數據原本存儲在機械硬盤現在搬遷到固態硬盤,兩者的存儲邏輯變了,程序不用為了這個改變而改變代碼。 邏輯獨立性 指用戶的應用程序與數據庫的邏輯結構是相互獨立的。 數據的邏輯結構改變了,用戶程序也可以相對不變 比如:字段的類型變了,字段變長了,用戶程序也可以相對不變。
-
數據的結構化:整體結構化
整體數據的結構化是數據庫的主要特征之一 數據庫中實現的是數據的真正結構化 – 數據的結構用數據模型描述,無需程序定義和解釋。 – 數據可以變長。 – 數據的最小存取單位是數據項。 列如:一個老師帶多少個學生,多少個班級,這樣的一對多關系結構模型是可以在數據庫中體現出來的。老師帶領的學生和班級這些數據是可以變長的,在讀取a老師帶的b學生時,可以完整的讀取到b學生的姓名、學號、性別等各個屬性(數據項),一個數據項是由其他各個數據元素結合起來的。
-
數據控制能力:由 DBMS 統一管理和控制
DBMS提供的數據控制功能 (1)數據的安全性(Security)保護· 保護數據,以防止不合法的使用造成的數據的泄密和破壞。 (2)數據的完整性(Integrity)檢查 將數據控制在有效的范圍內,或保證數據之間滿足一定的關系。 (3)並發(Concurrency)控制 對多用戶的並發操作加以控制和協調,防止相互干擾而得到錯誤的結果。 (4)數據庫恢復(Recovery) 將數據庫從錯誤狀態恢復到某一已知的正確狀態。
-
- 產生的背景:
1.3.3 數據管理技術的發展動力
- 應用需求的推動
- 計算機硬件的發展
- 計算機軟件的發展