数据库审计设备的测试方法和装置的制造方法

文档序号:8301488阅读:699来源:国知局
数据库审计设备的测试方法和装置的制造方法
【技术领域】
[0001]本发明涉及互联网领域,具体而言,涉及一种数据库审计设备的测试方法和装置。
【背景技术】
[0002]数据库审计系统主要用于监视并记录对数据库服务器的各类操作行为,通过对网络数据的分析,实时地、智能地解析对数据库服务器的各种操作,并记入审计数据库中以便日后进行查询、分析、过滤,实现对目标数据库系统的用户操作的监控和审计。目前,越来越多的大型企业意识到了数据库行为审计的重要性,现在采用独立的数据库审计产品已经成为业界的趋势。
[0003]性能测试是全面反映数据库审计系统处理分析能力的重要指标,而审计产品性能测试目前并没有统一的方法。一般的审计产品性能测试指标主要为每秒处理事件数,测试方法为数据包回放或使用高端测试仪器模拟数据库数据。无论采用哪种方式进行测试,都是使用测试工具提供的回放数据或发模拟数据的时间作为处理时间,而一般的审计产品为了提高系统性能,都有数据缓存能力,收到数据并不代表处理完成,也没有真正写入系统,所以这种测试方法并不能准确反映系统的处理能力。另外,数据库审计系统处理性能还与背景流量大小、会话处理能力、缓存能力等多项指标有关,所以上述测试方法也不能准确全面反映系统的处理性能。
[0004]针对现有技术中数据库审计系统的性能测试不准确的问题,目前尚未提出有效的解决方案。

【发明内容】

[0005]本发明的主要目的在于提供一种数据库审计设备的测试方法和装置,以解决数据库审计系统的性能测试不准确的问题。
[0006]为了实现上述目的,根据本发明实施例的一个方面,提供了一种数据库审计设备的测试方法。根据本发明的数据库审计设备的测试方法包括:获取测试用例和待测试数据包:检测所述数据库审计设备按照所述测试用例多次接收的测试仪器发送的所述待测试数据包;在检测到所述数据库审计设备接收到所述待测试数据包时,记录多次接收所述待测试数据包过程中所述待测试数据包的入库时间和丢包率,其中,所述入库时间为所述数据库审计设备第一次接收到所述待测试数据包的时间至将最后一个接收到的所述待测试数据包写入数据库之间的时间。
[0007]为了实现上述目的,根据本发明实施例的另一方面,提供了一种数据库审计设备的测试装置。根据本发明的数据库审计设备的测试装置包括:获取单元,用于获取测试用例和待测试数据包;检测单元,用于在检测所述数据库审计设备是否按照所述测试用例多次接收测试仪器发送的所述待测试数据包;记录单元,用于在检测到所述数据库审计设备接收所述待测试数据包时,记录多次接收所述待测试数据包过程中所述待测试数据包的入库时间和丢包率,其中,所述入库时间为所述数据库审计设备第一次接收到所述待测试数据包的时间至将最后一个接收到的所述待测试数据包写入数据库之间的时间。
[0008]根据发明实施例,获取测试用例和待测试数据包:检测数据库审计设备按照测试用例多次接收的测试仪器发送的待测试数据包;在检测到数据库审计设备接收到待测试数据包时,记录多次接收待测试数据包过程中待测试数据包的入库时间和丢包率,其中,入库时间为数据库审计设备第一次接收到待测试数据包的时间至将最后一个接收到的待测试数据包写入数据库之间的时间,通过利用多个测试用例测试审计设备的多个系统性能,能够全面覆盖数据库审计设备的处理性能,同时,通过计算审计设备接收到第一个数据包到将最后一个接收到的数据包写入到数据库的时间准确体现了审计设备处理数据包的时间,避免了现有技术将回放数据或发模拟数据的时间作为处理时间,提高了计时的准确性,由于审计设备的系统性能参数利用处理时间来进行计算,因此,提高了审计设备的性能测试的准确性。
【附图说明】
[0009]构成本申请的一部分的附图用来提供对本发明的进一步理解,本发明的示意性实施例及其说明用于解释本发明,并不构成对本发明的不当限定。在附图中:
[0010]图1是根据本发明实施例的数据库审计设备的测试方法的流程图;以及
[0011]图2是根据本发明实施例的数据库审计设备的测试装置的示意图。
【具体实施方式】
[0012]需要说明的是,在不冲突的情况下,本申请中的实施例及实施例中的特征可以相互组合。下面将参考附图并结合实施例来详细说明本发明。
[0013]为了使本技术领域的人员更好地理解本发明方案,下面将结合本发明实施例中的附图,对本发明实施例中的技术方案进行清楚、完整地描述,显然,所描述的实施例仅仅是本发明一部分的实施例,而不是全部的实施例。基于本发明中的实施例,本领域普通技术人员在没有做出创造性劳动前提下所获得的所有其他实施例,都应当属于本发明保护的范围。
[0014]需要说明的是,本发明的说明书和权利要求书及上述附图中的术语“第一”、“第二”等是用于区别类似的对象,而不必用于描述特定的顺序或先后次序。应该理解这样使用的数据在适当情况下可以互换,以便这里描述的本发明的实施例。此外,术语“包括”和“具有”以及他们的任何变形,意图在于覆盖不排他的包含,例如,包含了一系列步骤或单元的过程、方法、系统、产品或设备不必限于清楚地列出的那些步骤或单元,而是可包括没有清楚地列出的或对于这些过程、方法、产品或设备固有的其它步骤或单元。
[0015]本发明实施例提供了一种数据库审计设备的测试方法。该数据库审计设备的测试方法能对数据库审计设备的处理性能进行测试。该测试方法可以采用多个测试用例对数据库审计设备的处理性能进行测试,全面覆盖了体现数据库审计设备性能的多项指标,能够准确反映数据库审计设备的处理性能。同时,由于该测试方法采用数据库审计设备记录收到数据到将接收到的数据存入到数据库审计设备的数据库中的时间,从而提高了计算数据库审计设备的处理速率的准确性,也就解决了现有技术中数据库审计系统的性能测试不准确的问题,达到了提高测试数据库审计系统的性能的准确性的效果。在记录了数据库审计设备的处理性能的测试结果后,可以根据测试结果找出数据审计设备的处理瓶颈,以便对数据库审计设备进行优化。
[0016]图1是根据本发明实施例的数据库审计设备的测试方法的流程图。如图1所示,该数据库审计设备的测试方法包括步骤S102至步骤S106:
[0017]步骤S102,获取测试用例和待测试数据包。测试用例可以是多个测试用例,每个测试用例测试数据库审计设备的一个性能。测试用例可以对数据库审计设备的多项性能进行测试,例如,无背景流量时前景数据入库性能、有背景流量时前景数据入库性能、多会话处理能力、多网卡抓包性能和缓存写满时间等。
[0018]获取待测试数据包时,连接客户端和数据库服务器,采集客户端和数据库服务器之间通信的数据包,该数据包包括了完整的会话数据,如用户的登录、登录后的操作以及登出等数据。一般测试常用的数据库如Oracle和SQL server数据库,客户端连接到数据库后执行DQL (数据查询语言),DML (数据操作语言),TCL (事务控制语言),DDL (数据定义语言),DCL(数据控制语言)等操作,操作完成后断开数据库的连接。针对不同的数据库的测试可以采集相应的数据库的数据包,本实施例的测试方法可以对多种数据库的性能进行测试。在获取到待测试数据包时,需要去除无用的数据包,仅保留数据库连接的数据包。
[0019]步骤S104,检测数据库审计设备按照测试用例多次接收的测试仪器发送的待测试数据包。在数据库审计设备中设置了计时单元、会话统计单元、自检单元和性能分析单元。其中,计时单元用于计算数据库审计设备从接收到数据包到将接收到的数据全部写入到数据库的时间;会话统计单元可以统计写入数据库审计设备的会话数;自检单元可以用来检测数据库审计设备的缓存是否写满;性能分析单元可以用来计算测试时间内事件解析入库的平均处理能力。在执行测试用例时,可以使用crontab定期调用上述测试单元中的一个或多个。其中,crontab是UNIX系统下定期执行任务的触发器。用户把要定期执行的任务记录在这个文件下面,然后crond定期的去检查这个定期执行列表,有要执行的工作时便自动执行。
[0020]步骤S106,在检测到数据库审计设备接收到待测试数据包时,记录多次接收待测试数据包过程中待测试数据包的入库时间和丢包率,其中,入库时间为数据库审计设备第一次接收到待测试数据包的时间至将最后一个接收到的待测试数据包写入数据库之间的时间。数据库审计设备接收到待测试数据包
当前第1页1 2 3 4 5 
网友询问留言 已有0条留言
  • 还没有人留言评论。精彩留言会获得点赞!
1