MySQL/面试题:如何设计一个关系型数据库

MySQL/面试题:如何设计一个关系型数据库

咋一看这个题目有点空,其实能够考研我们对数据库设计的整体把控。首先数据库系统可以分为两层: - Server 层(也就是程序实例),提供获取以及管理数据的方式,还要必要的问题追踪机制。Server 层又可以细分为: - 存储管理:将数据的逻辑关系转换为物理关系 - 缓存机制:优化执行效率 - SQL 解析: - 日志管理:记录用户操作 - 权限划分:进行多用户管理 - 容灾机制:灾难恢复模块 - 索引管理:优化查询效率 - 锁管理:支持并发操作 - 存储系统系统(也就是数据库引擎,负责与文件系统打交道,把数据持久化到磁盘中)
上述的数据库模块实际和其他项目是类似的,很有借鉴意义。

评论