深入理解数据库-数据库组件
目录
深入理解数据库–数据库组件
数据库组件
核心组件
进程管理器:很多数据库具备一个需要妥善管理的进程/线程池。再者,为了实现纳秒级操作,一些现代数据库使用自己的线程而不是操作系统线程。
网络管理器:网路I/O是个大问题,尤其是对于分布式数据库。所以一些数据库具备自己的网络管理器。
文件系统管理器:磁盘I/O是数据库的首要瓶颈。具备一个文件系统管理器来完美地处理OS文件系统甚至取代OS文件系统,是非常重要的。
内存管理器:为了避免磁盘I/O带来的性能损失,需要大量的内存。但是如果你要处理大容量内存你需要高效的内存管理器,尤其是你有很多查询同时使用内存的时候。
安全管理器:用于对用户的验证和授权。
客户端管理器:用于管理客户端连接。
。。。
工具
备份管理器:用于保存和恢复数据。
复原管理器:用于崩溃后重启数据库到一个一致状态。
监控管理器:用于记录数据库活动信息和提供监控数据库的工具。
Administration管理器:用于保存元数据(比如表的名称和结构),提供管理数据库、模式、表空间的工具。
。。。
查询管理器
- 查询解析器:用于检查查询是否合法。
- 查询重写器:用于预优化查询。
- 查询优化器:用于优化查询。
- 查询执行器:用于编译和执行查询。
数据管理器
- 事务管理器:用于处理事务。
- 缓存管理器:数据被使用之前置于内存,或者数据写入磁盘之前置于内存。
- 数据访问管理器:访问磁盘中的数据。