数据库管理系统

2021年2月23日 (二) 03:48米粒儿讨论 | 贡献的版本

(差异) ←上一版本 | 最后版本 (差异) | 下一版本→ (差异)

数据库管理系统英语:database management system,缩写:DBMS),是一种针对对象数据库,为管理数据库而设计的大型电脑软件管理系统。具有代表性的数据管理系统有:OracleMicrosoft SQL ServerAccessMySQLPostgreSQL等。通常资料库管理师会使用资料库管理系统来建立资料库系统。

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

描述

数据库管理系统是一套电脑程序,以控制数据库的分类数据存取。一套资料库包括:

  1. 模型语言,用以因应该资料库管理系统的数据模型,来定义各资料库的schema
    • 最常用的三大类分别为阶层式网络式关联式的模型。一个资料库管理系统可提供一种、两种,甚至全部三种方式,也可能提供其他形式。最适合的模型要视乎个别应用程序、交易进行比率及查询经常使用的程度等。现时最常使用的则是SQL所支援,相似于关联式模型但又有些微违背的方式。很多资料库管理系统也支援ODBC,以支援程序编写员以标准方法存取该资料库管理系统。
  2. 最佳化的数据结构(栏位纪录档案),以支援在永久储存装置(permanent data storage device,即比主内存(volatile main memory)慢得多)上储存极大量的数据。
  3. 查询语言及撰写报表的程序,让使用者可以互动方式查问资料库,进行数据分析及依使用者的权限来更新数据。
    • 它必须控制数据的保安,以防止不获授权的使用者观看甚至更新资料库的数据。使用者可以提供有效的密码来存取整个资料库或其中一部分。譬如员工资料库包括所有员工资料的数据,但某组使用者可能只被批准检视薪金相关的数据,其他的又可能只可以存取工作履历及病历数据。
    • 如果该资料库管理系统向使用者提供可输入更新资料库甚至进行查询的互动途径,则此能力可以用来管理个人的资料库。可是,它不一定提供审核或其他在多使用者环境中所需要的各种控制机制。这些机制可能要整套应用程序都为数据输入或更新而修改才能提供。
  4. 交易机制(最好可以保证ACID特性),在多使用者同时存取之下仍维持数据完整性(data integrity),与及提供故障排除(fault tolerance)。
    • 资料库管理系统依靠不容许超过一名使用者在同一时间更新同一项纪录来维持资料库的完整性。资料库管理系统可以用唯一索引限制来避免重复纪录。譬如不能有两位顾客有同一个顾客编号(主键)在资料库中存在。

结构

Dbms solution.jpg
  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)。

优点

一个好的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)

常见数据库管理系统

开放原始码数据库系统

  • Apache DerbyApache软件基金会的纯Java资料库管理系统
  • Berkeley DB加州大学Berkeley分校研究成果
  • eXist简单的XML开放源代码数据库
  • 火鸟
  • HSQL
  • Ingres
  • LevelDBGoogle所研发的键/值对数据库编程库
  • mSQL
  • MySQL网络上十分流行的数据库服务器,若结合Linux系统、PHP脚本技术和ApacheWeb服务器使用,则被称为LAMP
  • PostgreSQL
  • SQLite C库,支持完全的SQL标准数据库,基于命令行
  • Xindice简单的XML数据库,由Apache软件基金会开发

商业数据库系统

  • 4th Dimension或者叫4D,是一套从Mac OS发展出来的数据库系统。现在亦有閞发视窗版。
  • Adabas Software AG(德国)开发的的数据库参看
  • askSam,结合了数据库和文本编辑,具有很多革新特性
  • Caché,适用于企业内部系统应用
  • Conzept16
  • c-tree Plus FairCom公司的ISAM和关系数据库。
  • DB1 IBM产品
  • DB2 IBM产品,当前版本10.5(截至2013年11月1日)。
  • dBase在DOS时代十分重要的数据库,Windows版本是Visual dBase
  • FileMaker由Claris演化而来,一个界面非常友好的关系型数据库,能够同时在Mac OS和Windows上使用,最新版本12.0
  • FoxBase被微软收购,继续开发出微软FoxPro,2.6版之前有DOS和Windows版。
  • Google Fusion Tables
  • Gupta SQLBase,当前版本9.0
  • HyperFileSQL
  • IDMS
  • IMS
  • Informix,当前版本10.0(Cheetah)
  • InterBase
  • MaxDB参看SAP DB
  • Microsoft Access,微软公司Office组件之一,当前版本Access 2016(另外还有6.0、97、2000、XP/2002、2003、2007、2010、2013),从微软公司兼并的一家公司的产品发展而来。
  • Microsoft Visual FoxPro,当前版本9.0
  • MS SQL-Server,当前版本2014 SP1
  • Sybase,早期版本被微软购买开发出SQL-Server。
  • Oracle,当前版本18c,最受欢迎的商业数据库
  • Paradox Borland开发后转手CorelWordPerfect Office)继续开发
  • PrimeBase
  • RRDtool,Round Robin Database
  • SAP DB由SAP开发,后由MySQL继续开发和维护现属于MaxDB
  • Tamino XML数据库k,基于Adabas的版本由Software AG开发
  • Tdbengine
  • Teradata功能非常强大,适用于非常海量数据,通常用来从事资料仓储
  • Visual dBase,最终版本5.0,已退出市场。

参见


方法
应用领域
应用实例
  • 美国国家安全局
  • 定量构效关系
  • 监视 / 大规模监控 (e.g., 恒星风 (情报活动代号))
相关主题

数据挖掘是关于分析数据的;有关从数据中提取信息的信息,参见:

  • 数据集成
  • 信息抽取
  • 信息融合
  • 命名实体识别
  • 网页抓取


最后修改于2021年2月23日 (星期二) 03:48