数据库系统包含复杂的数据结构。为了使系统在数据检索方面高效并且在用户可用性方面降低复杂性, 开发人员使用抽象, 即向用户隐藏无关的细节。这种方法简化了数据库设计。
主要有3数据抽象级别:
【数据抽象和数据独立详细指南】物理上:这是最低级别的数据抽象。它告诉我们数据实际上是如何存储在内存中的。诸如顺序访问或随机访问之类的访问方法以及诸如B +树之类的文件组织方法, 都使用散列法。可用性, 内存大小以及记录的次数是我们在设计数据库时需要知道的因素。
假设我们需要存储员工的详细信息。用户看不到用于这些目的的存储块和存储量。
逻辑上:此级别包括实际上以表形式存储在数据库中的信息。它还以相对简单的结构存储数据实体之间的关系。在此级别上, 用户在视图级别上可用的信息是未知的。
我们可以存储员工的各种属性和关系, 例如与经理一起也可以存储。
视图:这是最高级别的抽象。用户仅查看实际数据库的一部分。存在此级别是为了简化单个用户对数据库的访问。用户以行和列的形式查看数据。表和关系用于存储数据。可能存在同一数据库的多个视图。用户只需查看数据并与数据库进行交互, 即可从中隐藏存储和实现细节。
文章图片
数据抽象的主要目的是实现数据独立性, 以节省修改或更改数据库时所需的时间和成本。
由这些抽象级别引起的数据独立性有两个级别:
物理层数据独立性:它是指能够出于优化目的而修改物理模式而不对概念或逻辑模式进行任何更改的特性, 例如, 数据库的概念结构将不受数据库系统存储大小的任何变化的影响服务器。从顺序访问文件更改为随机访问文件就是这样的一个例子。对物理结构的这些更改或修改可能包括:
- 使用新的存储设备。
- 修改用于存储的数据结构。
- 更改索引或使用其他文件组织技术等
如果发现任何不正确的地方, 或者想分享有关上述主题的更多信息, 请写评论。
推荐阅读
- 使用Python进行数据分析和可视化
- 2021年将使用22个替代搜索引擎
- 让开发人员的生活更轻松的十大Python工具
- 汇丰面试经历分享|S7
- 汇丰面试经历|S3(在校园内–软件开发人员)
- 为什么精益与DevOps相得益彰()
- 6个删除顽固文件的工具
- 企业该如何解决DevOps转型道路上的常见障碍()
- (服务运维)Zabbix主被动模式原理支持上千监控节点