一个关系型数据库的设计考虑应从模块化考虑:
一个关系型数据库的设计考虑应从模块化考虑:
首先大体上分为一:存储模块(文件存储系统,用于将数据持久化存储进入磁盘)和用于管理的所存储数据的二:程序实例部分。
程序实例部分划分为:
1.存储管理模块,用于将数据的逻辑结构映射为物理结构,存储数据块(应该考虑存储的优化,减少查询I/O)
2,缓存机制模块(出于第一点存储查询的优化,引入缓存机制,由于查询一条数据可能会查询此数据的周边多条数据。因此将查询出数据块存入内存中,方便提高下次查询速率)
3.sql解析模块用于将sql语句解析为可执行的机器指令,同理为提高速率,可将sql语句也引入缓存机制。
4.日志管理模块用于记录操作和BINLOG日志
5.权限管理模块用户的权限划分
6.容灾机制模块 用户做事务回滚和灾难备份机制
7.索引管理模块 优化数据库性能的考虑
8.锁管理模块 引入并发操作的锁管理