物理设计和查询编译基础
1. 引言
数据库技术在当今信息时代扮演着至关重要的角色。随着计算机系统的快速发展,数据库管理技术也在不断进步。本文将探讨物理设计和查询编译的基础,旨在帮助读者理解如何将逻辑设计转换为高效的查询计划,以实现数据的高效管理和访问。
1.1 逻辑与物理设计
在数据库系统中,信息可以分为数据和元数据。例如,一家名为ACME的公司需要管理其员工信息、薪资等。以下是元数据的一些示例:
- 玛丽是一名员工。
- 玛丽的员工编号是3412。
- 玛丽的薪水是72000。
与此相对应的元数据可能包括:
- 存在一种被称为员工的实体。
- 存在一些被称为员工编号、姓名和薪水的属性。
数据库系统的核心任务之一是将物理上与数据无关的查询编译成具体的查询计划,这些查询计划根据给定的物理设计表达,即通过各种数据结构、文件、记录和记录字段提供的操作来表达。例如,ACME公司的工资单系统可能包括以下参数化查询:
- 对于给定员工编号
p
的任何员工,找出其薪水。
由于查询不引用任何与物理设计相关的词汇,因此查询在物理上是数据独立的。数据库系统可能会将此请求编译成以下查询计划:
- 在
emp-file
文件上仅调用一次emp-lookup(p)
操作。如果找到了emp-file