数据库管理系统

可运行数据库,与最终用户、其他应用程序和数据库本身交互以捕获和分析数据的计算机软件

数据库管理系统(英語:database management system缩写DBMS) 是一种针对对象数据库,为管理数据库而设计的大型电脑软件管理系统。具有代表性的数据管理系统有:OracleMicrosoft SQL ServerAccessMySQLPostgreSQL等。通常資料庫管理師會使用資料庫管理系統來建立資料庫系統。

现代DBMS使用不同的数据库模型追踪实体、属性和关系。在个人电脑、大型计算机和主机上应用最广泛的数据库管理系统是关系型DBMS(relational DBMS)。在關係型數據庫中,用二维表格表示数据库中的数据。这些表格称为关系[1]

描述编辑

資料庫管理系統是一套電腦程式,以控制資料庫的分類數據存取。一套資料庫包括:

  1. 模型語言,用以因應該資料庫管理系統的數據模型,來定義各資料庫的schema
    • 最常用的三大類分別為階層式網路式關聯式的模型。一個資料庫管理系統可提供一種、兩種,甚至全部三種方式,也可能提供其他形式。最適合的模型要視乎個別應用程式、交易進行比率及查詢經常使用的程度等。現時最常使用的則是SQL所支援,相似於關聯式模型但又有些微違背的方式。很多資料庫管理系統也支援ODBC,以支援程式編寫員以標準方法存取該資料庫管理系統。
  2. 最佳化的數據結構(欄位紀錄檔案),以支援在永久儲存裝置(permanent data storage device,即比主記憶體(volatile main memory)慢得多)上儲存極大量的數據。
  3. 查詢語言及撰寫報表的程式,讓使用者可以互動方式查問資料庫,進行數據分析及依使用者的權限來更新數據。
    • 它必須控制數據的保安,以防止不獲授權的使用者觀看甚至更新資料庫的數據。使用者可以提供有效的密碼來存取整個資料庫或其中一部分。譬如員工資料庫包括所有員工資料的數據,但某組使用者可能只被批准檢視薪金相關的數據,其他的又可能只可以存取工作履歷及病歷數據。
    • 如果該資料庫管理系統向使用者提供可輸入更新資料庫甚至進行查詢的互動途徑,則此能力可以用來管理個人的資料庫。可是,它不一定提供審核或其他在多使用者環境中所需要的各種控制機制。這些機制可能要整套應用程式都為數據輸入或更新而修改才能提供。
  4. 交易機制(最好可以保證ACID特性),在多使用者同時存取之下仍維持數據完整性(data integrity),與及提供故障排除(fault tolerance)。
    • 資料庫管理系統依靠不容許超過一名使用者在同一時間更新同一項紀錄來維持資料庫的完整性。資料庫管理系統可以用唯一索引限制來避免重覆紀錄。譬如不能有兩位顧客有同一個顧客編號(主鍵)在資料庫中存在。

結構编辑

 

  1. 外部層(External Level)或稱觀點層(View Level):包括數個外部綱要(External Schema)或使用者觀點(User Views),每個外部綱要描述了特定族群有興趣的部分資料庫並對該族群隱藏剩下的部分,如同概念層,每個外部綱要一般使用表達性資料模型(Representational Data Model)實作。
  2. 概念層(Conceptual Level):包含了概念綱要(Conceptual Schema),概念綱要描述了整個使用者社群的資料庫結構,其隱藏了實際儲存資料的結構並專注於描述實體(Entity)、資料型態(Data Type)、關係(Relationships)、使用者操作(User Operations)以及限制(Constraints)。通常資料庫系統被實作時,表達性資料模型也被用於描述概念綱要。
  3. 內部層(Internal Level):內有內部綱要(Internal Schema),內部綱要描述的是實際儲存資料的結構,其使用實體資料模型(Physical Data Model)並詳細描述資料庫的資料儲存(Data Storage)及存取路徑(Access Path)。[2]

優點编辑

一個好的DBMS應該具有的特點應包括:

  • 減少多餘的資料儲存(Controlling Redundancy)
  • 限制未授權的存取(Restricting Unauthorized Access)
  • 提供程式物件的持續保存(Providing Persistent Storage for Program Objects)
  • 為達有效查詢的目的提供儲存結構及搜尋技術(Providing Storage Structure and Search Techniques for Efficient Query Processing)
  • 提供備份及復原(Providing Backup and Recovery)
  • 提供多使用者介面(Providing Multiple User Interfaces)
  • 表達資料間的複雜關係(Representing Complex Relationships among Data)
  • 強化完整限制(Enforcing Integrity Constraint)
  • 使用"規則"及"觸發"以允許推斷及動作(Permitting Inferencing and Actions Using Rules and Triggers)[3]

常见数据库管理系统编辑

開放原始碼數據庫系統编辑

商業數據庫系統编辑

参考文献编辑

  1. ^ Kenneth C.Laudon and Jane P.Laudon,《Management Information Systems》, Pearson, 07 March 2011, Chapter6 Information systems Organizations and Strategy p.143
  2. ^ Elmasri, R., & Navathe, S. B. (2017). Fundamentals of database systems. Hoboken, NJ: Pearson.
  3. ^ Ramez Elmasri,Shamkant B. Navathe《Fundamentals of Database Systems》, Pearson, Chapter1 Databases and Database Users p.47

外部链接编辑

参见编辑