Part03_瞭解數據庫系統
01. 數據抽象
1.物理層(physical level):描述數據上實際上是怎樣存儲的。(最低層次的抽象)
2.邏輯層(logical level):描述數據庫存儲什麼數據及這些數據間存在什麼關係。(數據庫管理員使用抽象的邏輯層)
3.視圖層(view level):最高層次的抽象,只描述整個數據庫的某個部分。
02. 實例和模式
1.數據庫的實例(instance):特定時刻存儲在數據庫中的信息的集合。
2.數據庫的模式(schema):數據庫的總體設計。
1.物理模式(physical schema):在物理層描述數據庫的設計。
2.邏輯模式(logical schema):在邏輯層描述數據庫的設計。
3.子模式(subschema):描述數據庫的不同視圖。
03. 數據模型(data model)
0.概念:
數據庫結構的基礎是數據模型。
1.關係模型(relation model):
用表的集合來表示數據和數據間的聯繫。
2.實體-聯繫模型(entity-relationship model):
實體-聯繫(E-R)數據模型基於對現實世界的這樣一種認識:
現實世界由一組稱作實體的基本對象以及這些對象間的聯繫構成。
實體是現實世界中可區別於其他對象的一件“事情”或一個“物體”。
3.基於對象的數據模型(object-based data model):
可以看成是E-R模型增加了封裝、方法(函數)和對象標識等概念後的擴展。
4.半結構化數據模型(semistructured data model):
允許那些相同類型的數據項含有不同的屬性集的數據定義。
04.數據庫語言(在Part01的學習筆記中也有提及到,不同模型的數據庫這些操作語言會有些許不同)
1.數據庫操作語言(Data-Manipulation Language, DML)
0.概念:
使得用戶可以訪問或操縱那些按照某種適當的數據模型組織起來的數據。
1.過程化DML(procedural DML)
要求用戶指定需要什麼數據以及如何獲得這些數據。
2.聲明式DML(declarative DML)
只要求用戶指定需要什麼數據,而不指明如何獲得這些數據。
2.數據定義語言(Data-Definition Language, DDL)
0.概念:
數據庫系統所使用的存儲結構和訪問方式是通過一系列特殊的DDL語句來說明的。
1.一致性約束(consistency constraint):存儲在數據庫中的數據值必須滿足的條件。
1.域約束(domain constraint)
2.參照完整性(referential integrity)
3.斷言(assertion)
4.授權(authorization)
05.數據庫設計
0.概念:
數據庫設計的主要內容是數據庫模式的設計,數據庫系統被設計用來管理大量信息。
1.設計過程
初始階段:數據需求。(全面刻畫預期的數據庫用戶的數據需求)
概念設計階段:選擇數據模型,根據需求將其轉換成相對應的數據模式。
功能需求說明:設計模對模式進行復審,以確保它滿足功能需求。
邏輯設計階段:將高層的念模式映射到要使用的數據庫系統的實現數據模型上。
物理設計階段:指定數據庫的物理特性。
06.數據庫的子系統
1.存儲管理器
2.查詢管理器
07.事務
0.概念:
構成單一邏輯工作單元的操作集合稱作事務。
1.系統維護事務的特性:(ACID特性,來自每個特性的第一個英文字母)
1.原子性:事務的所有操作在數據庫中要麼全部正確反映出來,要麼全部不反映。
2.一致性:隔離執行事務時(即,沒有其他事務併發執行的狀態下)保持數據庫的一致性。
3.隔離性:儘管多個事務可能併發執行,但每個事務都感覺不到系統中有其他事務在併發執行。
4.持久性:一個事務成功完成後,它對數據庫的改變必須是永久的,即使出現系統故障。
08.數據庫的體系結構
1.集中式與客戶-服務器體系結構。
2.服務器系統體系結構
3.並行系統
4.分佈式系統
09.數據挖掘與信息檢索
數據挖掘(data mining):指半自動地分析大型數據庫並從中找出有用的模式的過程。
數據倉庫(data warehouse):從多個來源收集數據,建立統一的模式,駐留在單個節點上。
信息檢索(information retrieval):查詢非結構化的文本數據。
10.數據庫用戶
1.無經驗用戶(naive user):
是默認經驗的用戶,他們通過激活事先已經寫好的應用程序同系統進行交互。
2.應用程序員(application programmer):
是編寫應用程序的計算機專業人員。
3.老練的用戶(sophisticated user)
不通過編寫程序來同系統交互,而是用數據庫查詢語言或數據分析軟件這樣的工具來表達他們的要求。
4.專門的用戶(specialized user)
是編寫專門的、不適合於傳統數據處理框架的數據庫應用的富有經驗的用戶。
11.數據庫管理員
0.概念:
對系統進行集中控制的人。
1.職責:
模式定義(schema definition)
存儲結構及存取方法定義(storage structure and access-method definition)
模式及物理組織的修改(schema and physical-organization modification)
數據訪問授權(granting of authoriztion for data access)
日常維護(routine maintenance)