280 likes | 472 Views
資料庫管理系統 緒 論. 定 義. 資料庫由不同的檔案構成 就辦公室或機關內的需求加以規劃 以資料不重覆的方法儲存在一起 . 優 點. 避免資料的重覆 維持資料的一致性 資料具獨立性 , 程式撰寫較簡單 資料具保密性和安全性 強化制度的標準化 平衡企業各方面之需求. 缺 點. 設計及維護成本高 資料庫管理師 (DBA) 不容易培訓 需經常備份 , 否則意外狀況將造成重大傷害. DBMS. 資料庫管理系統 (Database Management System)
E N D
資料庫管理系統 緒 論
定 義 • 資料庫由不同的檔案構成 • 就辦公室或機關內的需求加以規劃 • 以資料不重覆的方法儲存在一起
優 點 • 避免資料的重覆 • 維持資料的一致性 • 資料具獨立性, 程式撰寫較簡單 • 資料具保密性和安全性 • 強化制度的標準化 • 平衡企業各方面之需求
缺 點 • 設計及維護成本高 • 資料庫管理師(DBA) 不容易培訓 • 需經常備份,否則意外狀況將造成重大傷害
DBMS • 資料庫管理系統 (Database Management System) • 一套獨特的軟體,同時用來建立以及維持資料庫,使能針對每一不同的商業應用焠取資料,並產生其所需之報表。 • DBMS的三元件 • 資料定義語言(DDL) • 資料使用語言(DML) • 資料字典(Data Dictionary)
功 能 • 具親和力的使用介面 • 可事先檢查存取資料之權利 • 可事先檢查欲儲存資料的合理性, 以確保資料的完整性 • 提供資料共享能力
DBA 之職責 • 決定資料庫的內容及關係 • 決定檔案結構及存取方式 • 決定資料一致性及安全性之檢查方法 • 定義備份及復原之步驟 • 監視日常作業並配合需求改變資料庫 • 控制重覆(redundancy) • 限制未授權者使用 • 提供多位使用者之介面
DBS 資料庫系統 • 硬體: CPU、記憶體、各種輸出入設備軟體(存取資料之應用程式、資料庫管理系統) • 資料: 以不重覆儲存為目標,以達多人共享之目的 • 使用者: 如連線作業之使用者 • 資料庫管理師: 負責建立、修正、維護及管理資料庫
資料庫基本特性 • 獨立性: 防止應用程式因 “資料儲存結構” 和 “資料存取方法” 的改變, 而牽一髮動全身 • 安全性: 只有合法授權的使用者才能使用資料庫中的資料 • 復原性: 可將資料恢復成正確狀態 • 同作性: 可避免多個使用者同時存取同一筆資料 • 完整性: 隨時保持資料的正確性
End Users External External External External Level View A View B View N external/conceptual mapping Conceptual Level Conceptual Schema conceptual/internal mapping Internal Level Internal schema Stored Database 資料庫的三層及觀點 (view) 外層:最接近使用者, 不同的使用者使用不同的資料, 對資料庫也產生不同的觀點 概念層:外層是資料庫某部分之表示, 概念層則是對整個資料及其可能關係之描述, 所以此層是群體使用者的觀點 內層:最接近系統底層實體儲存媒體的部份,以一邏輯的位址空間對應於資料實際存放的位置
root 資料庫邏輯結構 -1 • 階層式 (Hierarchical Model): • 將資料組織成如樹狀之結構,每筆記錄可將其劃分成數個區段(Segments) • 上層與下層具有一對多之親子關係 • 在實體觀中,藉pointers之建立連結上下層之區段(作為資料搜尋用) • 適用於較固定之資料搜尋內容以及報告列印格式 • 由上層對下層搜尋容易, 但由下層往上層搜尋則難 • 同層搜尋亦難
資料庫邏輯結構 -2 • 網路式(Network Model): • 區段之間為多對多之關係 • 可與階級式資料庫相互轉換 • 比階級式資料庫少重複之資料,較多彈性 • 利用網狀結構,提供多對多關係,較複雜且存取路徑須事先設定,重新建立關係或新鏈結,亦較麻煩 • 必須建立複雜的指標 Pointers 資料結構
資料庫邏輯結構 -3 • 關連式(Relational): • 以表格(Table) 表示個體之間的關係,交易量屬中-低,易取用資料,且易使用 • 利用Relation (or Table二維度表格)作查詢,可從不同的表格內, 經由作業(operations)而得到所需報表之內容及資料 • Operations的種類: Select, Join, Project, • #Truple指在Relational Database下之 Record • 其利用共用值(Shared Value)來建立個體關係,不用任何指標結構
資料庫 vs 資訊系統 • 在關聯式資料庫尚未成熟前,企業資訊系統的重點在於資料處理,功能為增加效率及降低成本 • 關連式資料庫成功發展後,資料間的關係即不受限制 (Logicl & Physical Independent),使決策者容易找出各資料間的關係來制定決策 • 透過網路,使得EIS逐漸受重視 • 往後還會發展出具地域獨立性的分散式資料庫、具推理能的知識庫、物件導向資料庫及多媒體資料庫等,皆以關連式資料庫為基礎
資料庫發展新趨勢 • 分散性資料庫系統 (Distributed Database) • 物件導向式 (Object-Oriented, OO) • 資料庫系統 • 超媒體資料庫 (Hypermedia Database) • 資料倉庫 (Data Warehouse) • 資料探勘 (Data Mining) • 知識庫 (Knowledge Management)
E/R Model 目的 • 雖然DBMS不支援語意模型, 但使用者在設計資料庫之前, 應先用語意模型去模型化真實世界中所感興趣之資料 • 根據所建立之語意模型去規劃資料庫的基本關聯 (Base Relation) • 在設計 SQL程式時, 遵循語意模型中之語意規定, 以避免不當之操作
Relation-ship Property 常用語意概念 基本三元素: • 個體 (Entity):基本資料處理單元, 如: 張小姐是客戶資料、玫瑰花是銷售產品、訂購也是一項資料記錄 • 關聯 (Relationship):描述個體與個體間之關係,如: 訂購行為把客戶與銷售產品間建立了關係 • 屬性 (Property):描述個體之屬性,如: 客戶姓名、地址、身高、體重、出生日期、學歷、嗜好… Entity
常用語意概念-屬性表 個體(資料表) 與屬性 (欄位)表示: EXAMPLE: 客戶資料 Foreign Key 資料表名稱 (一) Foreign Key Primary Key Primary Key 訂購 資料表名稱 (二) 銷售產品 Primary Key
E/R Diagram 1 實體(entity)可分為二類 • 一般實體(regular entity):不屬於 weak entity 的實體稱為regular entity, 又可稱為強實體 (strong entity) • 弱實體(weak entity): 此實體的存在相依於另一個實體的存在, 即當所依存的實體不存在時, 它就無法存在. 例如學生家長即為一弱實體, 當學生實體不存在時, 學生家長就無存在之必要
E/R Diagram 2 • 屬性 (property) • 簡單值(simple) 或 組合值 (composite) • 鍵值(key): 用以唯一識別每個實體 • 單值(single-valued)或多值(multi-valued):如年齡和獎懲記錄 • 從缺(missing):表不詳或不需要記錄, 如身分證上的父母欄可為不詳 • 基本(base)性質或衍生(derived)性質:如重量與密度 • 關係 (relationship) • 次型別 (subtype) • 以不同角度觀看實體時,一個實體型別依照某些性質可以再細分為多種不同的型別,稱之為次型別 (subtype) • 最原始的實體型則稱為超型別 (supertype)
各種鍵之定義 • 主鍵(Primary Key): 辨識所有值組的某(些)個屬性 • 唯一性(Uniqueness): 不會有相同的主鍵值 • 最小性(Minimality): 去除其任一屬性皆會破壞其唯一性 • 外鍵(Foreign Key): 為另一表格中之主鍵,用以連結原來之表格 • 候選鍵(Candidate): 符合唯一性及最小性兩種特性之屬性集合 • 候補鍵(Alternate): 除去主鍵以外之候選鍵 • 超鍵(Super Key): 用來辨識值組(tuple) 之屬性集合, 最大超鍵為所有屬性之集合,而最小超鍵則候選鍵
資料庫設計 • 需求分析: 不同使用者及群體有關應用系統及資訊需求之確認 • 概念設計: 對使用者及應用系統 (如人事薪資管理系統)之資訊觀點, 建立E-R Model) • 正規化 • 邏輯設計: 將觀念架構轉換成所選定之DBMS • 實體設計
需求分析 • 定義資料庫的範圍 • 確立原始資料內容 • 確定使用者對資料之觀點 • 確立資料之生命週期 • 明定操作上之需求 • 製作資料流程圖 (Data Flow Diagram) • 建立資料辭典 (Data Dictionary) • 文件:各種報表,檔案,文件及螢幕顯示
概念設計 Conceptual • 尋找個體和屬性 • 建立個體關係 • 作法 • Entity, Attribute,Relation (含Constraints), Keys • 文件: E/R Model
正規化Normalization • 濃縮複雜的使用者觀點(view) • 去除重複的資料儲存 • 得一組簡化且穩定的資料結構 • 做法: 至少經第一~第三正規化 • 文件: E/R Diagram
正規化 • 第一正規化(1NF, First Normal Form):一筆記錄沒有重覆的資料項 • 第二正規化 (2NF , Second Normal Form):已1NF,且記錄中每筆資料可由主鍵單一辨視,但不能由部份主鍵來辨識 • 第三正規化 (3NF, Third Normal Fomr):已2NF,且所有和主鍵無關之資料項彼此間獨立 • Boyce-Codd正規化:將多個候選鍵中挑出一個決定因子作為主鍵 • 4NF:去除多值相依性 • 5NF:克服合併相依性 • Boyce-Codd及第四、第五正規化等格式,實務上不常發生
邏輯設計Logical design • 轉換: E/R Model Mapping →資料庫 Model • 資料限制(Constraints) • 欄位限制條件, 如NOT NULL, UNIQUE • 判斷式(assertion), 如CHECK(…) • 指定必要的index field和Primary key • 建立各表格的關連 • 分割 • 垂直切割:將檔案中最常用的屬性與較不常用的屬性各自獨立為兩個檔案 • 水平切割:將檔案中較常用的記錄(row)與較不常用的記錄各自獨立為兩個檔案
實體設計Physical • 將邏輯資料模式轉換成硬體及所選用的DBMS所適用之形式 • 決定資料儲存之結構與檢索路徑