3。2。1 数据库指标
连接数(connect):一个数据库所能提供的访问能力,某种程度上就体现在数据库在正常 工作状态下所能保持的连接数上。同时,连接数的异常增加有可能是恶意访问的开始。
锁数量(lock):由于共享数据的存在,必然会发生多个请求需要使用同一个资源的现象, 因此就必然会产生锁。如果锁的数量过多,就会影响系统对请求的响应。
回滚比例(rollback):当程序发生错误的时候就会发生回滚,如果回滚和正常访问的比例 过高,那么对系统的运行就是一个不安全因素,因为你无法预知某一次回滚会导致系统奔溃。 缓存命中率(cache):为了提高数据访问的速度,数据库也引入了缓存技术,缓存命中率
的高低直接影响着数据库数据访问的效率。
Prepared 事务:事务是数据库中的原子操作,事务数量和连接数一起在一定程度上可以评 估上层系统的访问效率。
3。2。2 主机监控指标
Cpu 使用率:作为一个长时间运行的商业型主机,其 cpu 的利用率应该是很高的,这样才 能更好的发回其价值。
内存使用率(ramuse):在数据库系统中,内存作为提高数据访问速度的有效手段,它使 用率过高或过低都会对系统造成影响。
Iops:这是可以用来衡量磁盘读写负载的指标,如前文 2。2。2 中所述,分布式数据系统对 于数据的读写能力要求很高,同时其在超过自己读写能力的情况下有可能导致系统奔溃,因 此监控磁盘的读写是否到达极限是很重要的。
数据流入/流出:这里的流入流出是指网络中的数据,如前文 2。2。1 中所述,分布式系统之
第 6 页 本科毕业设计说明书
间的通信主要靠网络,那么监控网络的好坏是必须的[11]。 磁盘使用量:作为应对大数据时代的系统,磁盘的使用量是需要实时关心的。每日写入
的数据都是十分庞大的,如果不能及时把握磁盘的空间情况很有可能会出现数据丢失的情况。
3。3 整体设计
3。3。1 数据库模型
由于分布式数据库系统技术的多样性,建立一个万能的数据库监控系统是不太可能的, 因此本文所提出的监控系统是建立在一种分布式数据库模型的基础上。在这个模型中,数据 库采用 PostGreSql(一个自由的对象——关系数据管理系统,一下简称 PG),物理结构上采 用主从节点的方式搭建数据库。来*自~优|尔^论:文+网www.youerw.com +QQ752018766*
请参考图 3。1。
图 3。1 分布式数据库模型
PostgreSQL 是一种对象-关系型数据库管理系统。它是由加州大学伯克利分校计算机系写 的 POSTGRES 软件包发展而来的。经过十几年的发展,它是世界上最先进的开放源码的数 据库系统, 它提供了多版本并行控制,支持几乎所有 SQL 构件(包括子查询,事务和用户 定义类型和函数), 并且可以获得非常广阔范围的开发语言绑定(包括 C,C++,Java,perl, tcl,和 python)。
3。3。2 监控系统功能
监控功能:作为一个监控系统,监控功能必然是其核心功能。作为一个面向数据库的监 控系统,其实时性要求是很高的,因为数据库的状态每时每刻都在变化,监控模块必须及时的得到数据库的信息。 数据分析与存储:监控系统的目的之一是减少维护成本,因此在监控得到数据后还应该