github链接(更新中)
https://github.com/pourtheworld/mydb
大纲(更新中)
(0)mydb的架构设想
快照介绍
通过记录实时状态,DBA可以了解当前系统的运行状况,在基于此进行性能监控和调优。
快照级别
一般来说为:
- 数据库级快照:可能包含连接数量、索引读写次数、索引IO次数、执行事务总数、磁盘空间占用、内存占用、CPU开销等。
- 会话级快照:可能包含连接开始时间、执行事务总数、索引读写次数、CPU占用、内存占用、当前状态等。
- 表级快照:可能包含读写总数、记录总数、创建时间等。
- 语句快照:可能包含执行总数、消耗CPU总数、索引读写次数、执行时间总量等。
快照实现
由于我们暂时没有表的概念,所以将快照定义到语句-会话级的级别,实现如下功能即可:
- 插入总次数。
- 删除总次数。
- 查询总次数。
- 会话开启到现在的运行时间。
快照类定义
class MonAppCB
{
public:
MonAppCB();
~MonAppCB();
void setInsertTimes(long long insertTimes);
long long getInsertTimes()const;
void increaseInsertTimes(

本文介绍了数据库快照的作用,包括数据库级、会话级、表级和语句快照的不同级别,并详细阐述了一个简化版的快照实现,主要关注语句-会话级别的快照,如插入、删除、查询次数及会话运行时间。同时,提到了快照类的设计与实际运用方法。
最低0.47元/天 解锁文章
171

被折叠的 条评论
为什么被折叠?



