admin管理员组文章数量:1287490
数据是所有现代软件应用程序的基石,而数据库则是存储和管理应用程序所用数据的最常见方式。
随着网络和云技术的爆炸式发展,数据库已从传统的关系数据库发展到更先进的数据库类型,如 NoSQL、列式数据库、键值数据库、分层数据库和分布式数据库。每种类型都能处理结构化、半结构化甚至非结构化数据。
此外,数据库还不断处理关键任务数据和敏感数据。再加上合规性要求和大多数数据集的分布式性质,数据库的管理变得非常复杂。因此,企业需要强大、安全和用户友好的工具来维护这些数据库。
这就是数据库管理系统发挥作用的地方,它提供了一个管理数据库的平台。
什么是数据库管理系统?
数据库管理系统(DBMS)是一种能让用户轻松管理数据库的软件工具。它允许用户访问数据库中的基础数据并与之交互。这些操作从简单的查询数据到定义数据库模式(从根本上影响数据库结构)不等。
此外,数据库管理系统允许用户与数据库进行安全的并发交互,而不会干扰每个用户,同时还能保持数据的完整性。
DBMS 中的数据库任务
可使用 DBMS 执行的典型数据库管理任务包括:
-
配置身份验证和授权。轻松配置用户账户、定义访问策略、修改限制和访问范围。通过这些操作,管理员可以限制对基础数据的访问、控制用户操作以及管理数据库中的用户。
-
提供数据备份和快照。DBMS 可以通过提供更简单明了的界面来管理备份和快照,从而简化数据库的备份过程。它们甚至可以将这些备份移动到第三方位置(如云存储)进行保管。
-
性能调整。DBMS 可以使用集成工具监控数据库的性能,并使用户能够通过创建优化索引来调整数据库。它可减少 I/O 使用量,优化 SQL查询,使数据库达到最佳性能。
-
数据恢复。在恢复操作中,DBMS 提供了一个恢复平台,其中包含将数据库完全或部分恢复到其先前状态所需的工具。
所有这些管理任务都可以通过一个管理界面来完成。大多数现代 DBMS 都支持从一个集中式 DBMS 软件处理多个数据库工作负载,即使在分布式数据库场景中也是如此。此外,它们还允许组织以有组织的方式自上而下地查看所有数据、用户、组、位置等。
DBMS 系统示意图
下图是 DBMS 系统示意图:
数据库管理系统的组件
所有数据库管理系统都带有执行几乎所有数据库管理任务所需的各种集成组件和工具。有些数据库管理系统甚至可以直接或通过插件与第三方工具和服务集成,从而扩展核心功能。
我们将介绍所有 DBMS 软件通用的组件,包括
-
存储引擎:存储引擎是 DBMS 的核心组件,它在操作系统层面与文件系统交互以存储数据。所有与底层数据交互的 SQL 查询都要经过存储引擎。
-
查询语言:从创建数据库到简单地插入或检索数据,与数据库交互都需要数据库访问语言。一个合适的数据库管理系统必须支持一种或多种查询语言和语言方言。结构化查询语言(SQL)和 MongoDB 查询语言(MQL)是两种用于与数据库交互的查询语言。
在许多查询语言中,查询语言功能可根据具体任务进一步分类:-
数据定义语言(DDL)。这包括可用于定义数据库模式或修改数据库对象结构的命令。
-
数据操作语言(DML)。直接处理数据库中数据的命令。所有 CRUD 操作都属于 DML。
-
数据控制语言(DCL)。处理数据库的权限和其他访问控制。
-
事务控制语言(TCL)。处理数据库内部事务的命令。
-
-
查询处理器:它是用户查询和数据库之间的中介。查询处理器对用户的查询进行解释,并将其转化为数据库可以理解的可执行命令,从而执行相应的功能。
-
优化引擎:优化引擎允许 DBMS 深入了解数据库在优化数据库本身和查询方面的性能。与数据库监控工具配合使用时,它可以提供一个强大的工具集,使数据库获得最佳性能。
-
元数据目录:这是数据库中所有对象的集中目录。创建对象时,数据库管理系统会使用元数据目录保存该对象的记录和一些元数据。然后,这条记录就可以用来:
- 验证用户请求是否指向适当的数据库对象
- 提供完整数据库结构的概览
-
日志管理器:该组件将保存数据库管理系统的所有日志。这些日志包括用户登录和活动、数据库功能、备份和恢复功能等。日志管理器可确保所有这些日志都被正确记录并易于访问。
-
报告和监控工具:报告和监控工具是数据库管理系统的另一个标准组件。报告工具可以让用户生成报告,而监控工具则可以监控数据库的资源消耗、用户活动等。
-
数据工具:除上述所有功能外,大多数 DBMS 软件还带有额外的内置实用程序,可提供以下功能:
-
数据完整性检查
-
备份和还原
-
简单的数据库修复
-
数据验证
-
数据库管理系统的类型
数据库管理系统有许多不同类型,但我们可以将最常用的数据库管理系统分为三类。
关系数据库管理系统(RDBMS)
这是最常见的数据库管理系统类型。它们用于与包含预定义关系的表格格式结构化数据的数据库交互。此外,它们使用结构化查询语言(SQL)与数据库交互。Microsoft SQL、MySQL 和 Oracle 数据库都属于这类数据库管理系统。
文档数据库管理系统(DoDBMS)
这些 DoDBMS 用于管理包含以类似 JSON 的结构存储的数据的数据库,其关系结构有限或没有关系结构。它们使用 MongoDB 查询语言(MQL)等查询语言进行数据库操作。MongoDB、Azure Cosmos DB 就是 DoDBMS 的一些突出例子。
列式数据库管理系统(CDBMS)
顾名思义,这类数据库管理系统用于管理以列而不是行存储数据的列式数据库,强调高性能。使用列格式的数据库有 Apache Cassandra、Apache HBase 等。
DBMS 的优势
引入 DBMS 是为了解决与传统文件系统中的数据存储、管理、访问、安全和审计相关的基本问题。软件用户和组织可通过使用 DBMS 获得以下好处:
提高数据安全性
数据库管理系统提供了控制用户和执行安全与合规管理策略的能力。这种受控的用户访问方式提高了数据库的安全性,使数据不易受到安全漏洞的影响。
简单的数据共享
DBMS 使用户无论身处何地,都能安全地访问数据库。因此,他们可以迅速处理任何与数据库有关的任务,而无需复杂的访问方法或担心数据库安全。此外,数据库管理系统允许多个用户在与数据库交互时进行有效协作。
数据集成
DBMS 允许用户对分布在多个地点的数据库进行集中查看,并使用单一界面对其进行管理,而不是将其作为独立实体进行操作。
抽象性和独立性
DBMS 使用户能够更改数据库的物理模式,而无需更改管理数据库关系的逻辑模式。因此,企业可以在不影响数据库操作的情况下扩展底层数据库基础设施。
此外,对逻辑模式的任何更改也不会影响访问数据库的应用程序。
简化备份和恢复机制
大多数数据库都有内置的备份和恢复工具。然而,数据库管理系统提供的集中式工具能更方便地促进备份和恢复功能,从而提供更好的用户体验。通过以下功能,数据安全变得前所未有的简单:
- 自动快照
- 备份调度
- 备份验证
- 多种恢复方法
统一管理和监控
DBMS 提供了执行所有管理和监控任务的单一界面,从而简化了数据库管理员的工作量。这些任务包括数据库创建、模式修改、报告和审计。
DBMS 至关重要
DBMS 是任何组织管理数据库的重要组成部分。DBMS 的规模、复杂性和功能集取决于特定的 DBMS 和组织的要求。
由于不同的 DBMS 提供不同的功能集,因此企业在使用单一系统之前,必须对 DBMS 软件进行严格评估。不过,配置得当的 DBMS 将大大简化任何规模数据库的管理和维护工作。
版权声明:本文标题:DBMS:数据库管理系统详解 内容由网友自发贡献,该文观点仅代表作者本人, 转载请联系作者并注明出处:http://www.betaflare.com/biancheng/1741183270a2353879.html, 本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌抄袭侵权/违法违规的内容,一经查实,本站将立刻删除。
发表评论