数据库架构与关系模型知识解析
立即解锁
发布时间: 2025-08-23 00:50:13 阅读量: 10 订阅数: 49 


数据库系统:从设计到实现的核心指南
### 数据库架构与关系模型知识解析
#### 1. 数据库架构相关概念
- **客户端 - 服务器架构**
- 客户端 - 服务器架构描述了软件组件之间的交互方式。存在一个需要某种资源的客户端进程,以及一个提供该资源的服务器。
- **两层模型**:客户端处理用户界面和业务处理逻辑,服务器处理数据库功能。
- **三层模型**:在 Web 环境中,传统的两层模型已被三层模型取代,包括用户界面层(客户端)、业务逻辑和数据处理层(应用服务器)以及数据库管理系统(数据库服务器),这些层分布在不同的机器上。三层架构还可扩展为 n 层,通过添加额外的层来提供更多的灵活性和可扩展性。
- **中间件**
- 中间件是连接软件组件或应用程序的计算机软件。其类型包括:
- 远程过程调用(RPC,包括同步和异步)
- 发布/订阅
- 面向消息的中间件(MOM)
- 对象请求代理(ORB)
- 数据库中间件
- **Web 服务**
- Web 服务是一种旨在支持网络上机器间互操作性交互的软件系统,基于 XML、SOAP、WSDL 和 UDDI 等标准。
- **面向服务的架构(SOA)**
- 面向服务的架构是以业务为中心的软件架构,用于构建将业务流程实现为一组服务的应用程序,这些服务以与服务消费者相关的粒度发布。
- **云计算**
- 云计算是一种模型,可实现无处不在、便捷、按需的网络访问,以获取共享的可配置计算资源池(如网络、服务器、存储、应用程序和服务),这些资源可以快速调配和释放,只需最少的管理工作或与服务提供商的交互。主要的服务模型有:
- 软件即服务(SaaS)
- 平台即服务(PaaS)
- 基础设施即服务(IaaS)
- 基于云的数据库解决方案分为两类:数据即服务(DaaS)和数据库即服务(DBaaS)。
- **事务处理(TP)监视器**
- 事务处理监视器是一种控制客户端和服务器之间数据传输的程序,以提供一致的环境,特别是在线事务处理(OLTP)。其优点包括事务路由、分布式事务、负载均衡、集中处理和提高可靠性。
#### 2. 数据库操作流程
以 Oracle 数据库为例,一个典型的数据库操作流程如下:
1. 检查共享 SQL 区域中是否已有该语句的解析版本;如果没有,则为该语句分配一个新的共享 SQL 区域,以便对其进行解析和处理。
2. 服务器进程从实际数据文件(表)或系统全局区(SGA)中检索所需的数据值。
3. 服务器进程修改 SGA 中的数据。当高效时,数据库写入进程(DBWR)将修改后的块永久写入磁盘。由于事务已提交,日志写入进程(LGWR)立即将事务记录到在线重做日志文件中。
4. 服务器进程通过网络向应用程序发送成功/失败消息。
5. 在此期间,其他后台进程运行,监视需要干预的条件。此外,Oracle 服务器管理其他用户的事务,并防止请求相同数据的事务之间发生冲突。
#### 3. 关系模型的起源与发展
- **起源**
- 关系模型由 E. F. Codd 在 1970 年的论文 “A relational model of data for large shared data banks” 中首次提出。尽管此前曾有人提出过面向集合的模型,但 Codd 的论文被公认为数据库系统的一个里程碑。
- **目标**
- 允许高度的数据独立性,应用程序不应受内部数据表示修改的影响,特别是文件组织、记录排序或访问路径的更改。
- 为处理数据语义、一致性和冗余问题提供坚实的基础,引入了规范化关系的概念。
- 能够扩展面向集合的数据操作语言。
- **重要研究项目**
- **IBM 的 System R
0
0
复制全文
相关推荐










