这是我参与「第五届青训营」笔记创作活动的第9天
RDBMS
关系数据库管理系统 (RDBMS) 是程序和功能的集合,使 IT 团队和其他人能够创建、更新、管理关系数据库并以其他方式与 关系数据库交互。RDBMS 以表的形式存储数据,大多数商业关系数据库管理系统使用结构化查询语言( SQL ) 来访问数据库。但是,由于 SQL 是在关系模型最初发展之后发明的,因此 RDBMS 没有必要使用它。
RDBMS 是全球组织中最流行的数据库系统。它提供了一种可靠的方法来存储和检索大量数据,同时提供系统性能和易于实施的组合。
RDBMS 与 DBMS
通常,数据库存储可在其他应用程序中查询使用的数据集。数据库管理系统支持数据库平台的开发、管理和使用。
RDBMS 是一种数据库管理系统(DBMS),它将数据存储在连接相关数据元素的基于行的表结构中。RDBMS 包括维护数据的安全性、准确性、完整性和一致性的功能。这与 DBMS 中使用的文件存储不同。
数据库管理系统和关系数据库管理系统之间的其他区别包括:
- 允许的用户数。 DBMS 一次只能接受一个用户,而 RDBMS 可以与多个用户一起操作。
- 硬件和软件要求。 与 RDBMS 相比,DBMS 需要更少的软件和硬件。
- 数据量。 RDBMS 可以处理任何数量的数据,从小到大,而 DBMS 只能管理少量数据。
- 数据库结构。 在 DBMS 中,数据以分层形式保存,而 RDBMS 使用表,其中标题用作列名,行包含相应的值。
- 酸实施。 DBMS 不使用原子性、一致性、隔离性和持久性 ( ACID ) 模型来存储数据。另一方面,RDBMS 的数据结构基于 ACID 模型以确保一致性。
- 分布式数据库。 虽然 RDBMS 提供对分布式数据库的完整支持,但 DBMS 不提供支持。
- 管理的程序类型。 RDBMS 有助于管理其并入的数据表之间的关系,而 DBMS 则侧重于维护存在于计算机网络和系统硬盘中的数据库。
- 支持数据库规范化。 RDBMS 可以规范化,但 DBMS 不能。
关系型数据库管理系统的特点
支配基本关系数据库的关系数据库管理系统的元素对于操作来说是如此内在,以至于在实践中很难将两者分开。
最基本的 RDBMS 功能与创建、读取、更新和删除操作相关——统称为CRUD。它们构成了一个组织良好的系统的基础,该系统促进了数据的一致处理。
RDBMS 通常提供在数据处理中有用的数据字典和元数据集合。这些以编程方式支持定义明确的数据结构和关系。数据存储管理是 RDBMS 的一项常见功能,这已由从二进制大对象(或 blob)字符串到存储过程的数据对象定义。像这样的数据对象扩展了基本关系数据库操作的范围,并且可以在不同的 RDBMS 中以多种方式处理。
RDBMS 最常用的数据访问方式是 SQL。其主要语言成分包括数据操作语言和数据定义语言语句。扩展可用于将 SQL 与通用编程语言(例如通用面向业务的语言 ( COBOL )、Java和 .NET)配对使用的开发工作。
RDBMS 使用复杂的算法,支持多个并发用户访问数据库,同时保持数据完整性。强制执行基于策略的访问的安全管理是 RDBMS 为企业设置中使用的基本数据库提供的另一种覆盖服务。
RDBMSes 支持数据库管理员 ( DBA )的工作,他们必须管理和监控数据库活动。实用程序有助于自动化数据加载和数据库备份。RDBMSes 管理日志文件,这些日志文件根据选定的操作参数跟踪系统性能。这可以衡量数据库的使用情况、容量和性能,尤其是查询性能。RDBMS 提供图形界面,帮助 DBA 可视化数据库活动。
虽然不仅仅限于 RDBMS,但 ACID 合规性是关系技术的一个属性,已证明在企业计算中很重要。这些功能特别适合用于处理业务事务的 RDBMS。
随着 RDBMS 的成熟,它们已经实现了越来越高的查询优化水平,并且它们也已成为企业报告、分析和数据仓库应用程序的关键部分。RDBMS 是各种企业应用程序操作所固有的,并且是大多数主数据管理系统的核心。
RDBMS 的工作原理
如前所述,RDBMS 将以表的形式存储数据。每个系统都有不同数量的表,每个表都有自己唯一的主键。然后使用主键来标识每个表。
表格内有行和列。这些行被称为记录或水平实体;它们包含单个条目的信息。这些列被称为垂直实体,并拥有关于特定领域的信息。
在创建这些表之前,RDBMS 必须检查以下约束:
- 主键——这标识了表中的每一行。一张表只能包含一个主键。键必须是唯一的并且没有空值。
- 外键——用于链接两个表。外键保存在一张表中,指的是与另一张表关联的主键。
- 非空——这确保每一列都没有空值,例如空单元格。
- 检查——确认列或行中的每个条目都满足精确条件,并且每个列都包含唯一数据。
- 数据完整性——在创建数据之前必须确认数据的完整性。
确保数据的完整性包括几个特定的测试,包括实体、域、引用和用户定义的完整性。实体完整性确认表中的行不重复。域完整性可确保根据特定条件(例如文件格式或值范围)将数据输入表中。引用完整性确保无法删除任何重新链接到不同表的行。最后,用户定义的完整性确认该表将满足所有用户定义的条件。