單體架構下鎖的實現方案 1. ReentrantLock全局鎖 ReentrantLock(可重入鎖),指的是一個線程再次對已持有的鎖保護的臨界資源時,重入請求將會成功。 簡單的與我們常用的Synchronized進行比較: ReentrantLock Synchronized 鎖實現機制 依賴AQ ...
1.1 資料庫系統概述
1.1.1 資料庫的四個基本概念
- 數據
- 資料庫
- 資料庫管理系統DBMS
- 資料庫系統DBS
1.1.2 資料庫的特點
- 數據結構化
- 數據的共用性高、冗餘度低並且易擴充
- 數據獨立性高
- 數據由資料庫管理系統統一管理和控制
1.2 數據模型
1.1.1 數據模型
數據模型也是一種模型,他是對現實世界數據特征的抽象。也就是說數據模型是用來描述數據、組織數據和對數據進行操作的。數據模型是資料庫系統的核心和基礎。
1.2.1 兩類數據模型
根據模型應用的不同目的,可以將模型劃為兩大類,它們屬於兩個不同的層次。第一類是概念模型,第二類是邏輯模型和物理模型。
- 概念模型是按用戶觀點來對數據和信息建模,主要用於資料庫設計。
- 第二類中邏輯模型主要包括層次模型、網狀模型、面向對象數據模型和對象關係模型等。第二類中的物理模型是對數據最底層的抽象,它描述數據在系統內的表示方式和存取方法,是面向電腦系統的。
1.2.2 概念模型
- 實體(entity)
客觀存在並且可以相互區別的食物成為實體。比如一個職工、一個學生、一個部門等 - 屬性(attribute)
實體所具有的某一特性成為屬性,一個實體可以由若幹個屬性來刻畫,比如學生實體可以由學號、姓名、性別等屬性構成。 - 碼(key)
唯一標識實體店屬性集稱為碼,比如學號屬性稱為學生實體的碼。 - 實體型(entity type)
實體名以及其屬性名集合來抽象和刻畫同類實體稱為實體,例如,學生(學號,姓名,性別,入學時間)就是一個實體型 - 實體集
同一類型實體的集合稱為實體集,例如全體學生就是一個實體集合。 - 聯繫
實體之間的聯繫通常指不同實體集之間的聯繫,比如實體之間的聯繫有一對一、一對多、多對多等類型
1.2.3 數據模型的組成要素
數據模型是嚴格定義一組概念的集合,因此數據模型通常由數據結構、數據操作和數據的完整性約束條件三部分組成
- 數據結構
數據結構描述資料庫組成和對象時間的關係 - 數據操作
數據操作是指對資料庫中各種對象的實例允許執行的操作的集合,包括操作以及有關的操作規則。 - 數據的完整性約束條件
數據的完整性約束條件是一組完整性規則。完整性規則是給定數據模型中數據及其聯繫所具有的制約和依存規則,用於限定數據模型的資料庫狀態以及狀態變化,從而保證數據的正確、有效和相容。在這裡描述的比較抽象,看不懂的也不用擔心,後面有詳細介紹,屆時會比較通俗易懂
1.2.4 關係模型
關係模型是最重要的一種數據模型,關係資料庫系統採用關係模型作為數據的組織方式。這也是我們研究的重點。
關係模型的數據結構
- 關係(relation):一個關係對應一張表,例如圖1.14
- 元組(tuple):表中的一行就是一個元組
- 屬性(attribute):表中的一列就是一個屬性,每個屬性的名稱稱為屬性名
- 碼(key):又稱為碼鍵,表中的某個可以唯一確定一個元組的屬性組稱之為碼
- 域(domain):域是一組具有相同數據類型的值的集合。屬性的取址範圍來自某個域。如人的性別取值範圍為(男,女)
- 分量:元素中的一個屬性值