一种SAPHANA性能评估的方法和设备与流程

专利2022-06-30  55


本领域涉及计算机领域,并且更具体地涉及一种saphana性能评估的方法和设备。



背景技术:

随着it技术的发展,企业服务器能够支撑的内存容量急剧增大,另外以oracle数据库为代表的磁盘数据库,随着企业数据量的增大,磁盘性能已成为瓶颈。现以saphana(sap公司的内存数据库平台)为代表的内存数据库产品市场逐渐增大。内存数据库将所有数据存放在内存中,所有数据库事务处理没有磁盘i/o读写的操作,能极大的提升数据库性能。但是一般评估saphana在联机交易中的性能,使用的工具通常是部署在saphana服务器上,然后在saphana服务器本地进行压力测试,但在实际环境中,应用系统saphana压力会有1个至多个应用服务器发起,数据库性能会受到网络带宽、延迟等因素的影响,只部署在saphana服务器上性能测试工具无法模拟多台应用服务器对saphana数据库服务器进行压力测试的情况。



技术实现要素:

有鉴于此,本发明实施例的目的在于提出一种saphana性能评估的方法和设备,通过使用本发明的方法,能够快速便捷的模拟多主机并发压力测试来评估saphana在联机交易中事务处理能力,更好的评估saphana在实际生产环境应用场景中的性能。

基于上述目的,本发明的实施例的一个方面提供了一种saphana性能评估的方法,包括以下步骤:

将多台服务器主机中的一个设置为主服务器,其他服务器主机设置为从服务器,将主服务器和从服务器连接到saphana服务器上,并在saphana服务器上分别创建测试用户和测试相关统计表;

将基底数据加载到saphana服务器中并为测试相关统计表创建索引;

在主服务器中配置主服务器文件,并在从服务器上配置从服务器文件;

响应于接收到测试的指令,使用测试用户基于主服务器文件打开主服务器进程,并基于主服务器进程的设置控制从服务器文件打开相应的从服务器进程,利用从服务器进程对spahana服务器中的spahana进行压力测试,并基于索引将测试结果写入测试相关统计表中输出。

根据本发明的一个实施例,基底数据包括连接到spahana的驱动类型、数据库主机地址、数据库连接用户与口令、数据加载线程数和数据量大小。

根据本发明的一个实施例,在主服务器中配置主服务器文件包括:设置从服务器名称数量、测试执行时间和调整事务类型比例和主服务器进程启动端口号。

根据本发明的一个实施例,在从服务器上配置从服务器文件包括:设置连接spahana数据库的驱动类型、数据库主机地址、数据库连接用户与口令、模拟用户数量、仓库数量、指定主服务器ip和主服务器进程启动端口号。

根据本发明的一个实施例,使用测试用户基于主服务器文件打开主服务器进程,并基于主服务器进程的设置控制从服务器文件打开相应的从服务器进程,利用从服务器进程对spahana服务器中的spahana进行压力测试包括:

在主服务器中打开一个主服务器进程,根据主服务器进程中设置的调用从服务器的参数在相应的从服务器中打开至少一个从服务器进程;

利用打开的从服务器进程对spahana服务器中的spahana进行压力测试。

本发明的实施例的另一个方面,还提供了一种saphana性能评估的设备,设备包括:

创建模块,创建模块配置为将多台服务器主机中的一个设置为主服务器,其他服务器主机设置为从服务器,将主服务器和从服务器连接到saphana服务器上,并在saphana服务器上分别创建测试用户和测试相关统计表;

导入模块,导入模块配置为将基底数据加载到saphana服务器中并为测试相关统计表创建索引;

配置模块,配置模块配置为在主服务器中配置主服务器文件,并在从服务器上配置从服务器文件;

测试模块,测试模块配置为响应于接收到测试的指令,使用测试用户基于主服务器文件打开主服务器进程,并基于主服务器进程的设置控制从服务器文件打开相应的从服务器进程,利用从服务器进程对spahana服务器中的spahana进行压力测试,并基于索引将测试结果写入测试相关统计表中输出。

根据本发明的一个实施例,基底数据包括连接到spahana的驱动类型、数据库主机地址、数据库连接用户与口令、数据加载线程数和数据量大小。

根据本发明的一个实施例,配置模块还配置为设置从服务器名称数量、测试执行时间和调整事务类型比例和主服务器进程启动端口号。

根据本发明的一个实施例,配置模块还配置为设置连接spahana数据库的驱动类型、数据库主机地址、数据库连接用户与口令、模拟用户数量、仓库数量、指定主服务器ip和主服务器进程启动端口号。

根据本发明的一个实施例,测试模块还配置为:

在主服务器中打开一个主服务器进程,根据主服务器进程中设置的调用从服务器的参数在相应的从服务器中打开至少一个从服务器进程;

利用打开的从服务器进程对spahana服务器中的spahana进行压力测试。

本发明具有以下有益技术效果:本发明实施例提供的saphana性能评估的方法,通过将多台服务器主机中的一个设置为主服务器,其他服务器主机设置为从服务器,将主服务器和从服务器连接到saphana服务器上,并在saphana服务器上分别创建测试用户和测试相关统计表;将基底数据加载到saphana服务器中并为测试相关统计表创建索引;在主服务器中配置主服务器文件,并在从服务器上配置从服务器文件;响应于接收到测试的指令,使用测试用户基于主服务器文件打开主服务器进程,并基于主服务器进程的设置控制从服务器文件打开相应的从服务器进程,利用从服务器进程对spahana服务器中的spahana进行压力测试,并基于索引将测试结果写入测试相关统计表中输出的技术方案,能够快速便捷的模拟多主机并发压力测试来评估saphana在联机交易中事务处理能力,更好的评估saphana在实际生产环境应用场景中的性能。

附图说明

为了更清楚地说明本发明实施例或现有技术中的技术方案,下面将对实施例或现有技术描述中所需要使用的附图作简单地介绍,显而易见地,下面描述中的附图仅仅是本发明的一些实施例,对于本领域普通技术人员来讲,在不付出创造性劳动的前提下,还可以根据这些附图获得其他的实施例。

图1为根据本发明一个实施例的saphana性能评估的方法的示意性流程图;

图2为根据本发明一个实施例的saphana性能评估的设备的示意图;

图3为根据本发明一个实施例的主服务器进程与从服务器进程的关系的示意图。

具体实施方式

为使本发明的目的、技术方案和优点更加清楚明白,以下结合具体实施例,并参照附图,对本发明实施例进一步详细说明。

基于上述目的,本发明的实施例的第一个方面,提出了一种saphana性能评估的方法的一个实施例。图1示出的是该方法的示意性流程图。

如图1中所示,该方法可以包括以下步骤:

s1将多台服务器主机中的一个设置为主服务器,其他服务器主机设置为从服务器,将主服务器和从服务器连接到saphana服务器上,并在saphana服务器上分别创建测试用户和测试相关统计表,创建测试用户(schema),使用该用户进行性能测试,创建用户需要对用户进行授权,授予连接、创建表、索引等权限,测试相关统计表包括测试结果统计表和测试参数存储表;

s2将基底数据加载到saphana服务器中并为测试相关统计表创建索引,该过程需要使用参数配置文件与设置相关的参数,将基本参数加载到saphane服务器中;

s3在主服务器中配置主服务器文件,并在从服务器上配置从服务器文件;

s4响应于接收到测试的指令,使用测试用户基于主服务器文件打开主服务器进程,并基于主服务器进程的设置控制从服务器文件打开相应的从服务器进程,利用从服务器进程对spahana服务器中的spahana进行压力测试,并基于索引将测试结果写入测试相关统计表中输出。

本发明的方法是用于测试saphana在联机交易中事务处理的能力,saphana是一款内存数据库,部署在saphana服务器上,通过主服务器管控多个从服务器对saphana服务器上的数据库进行压力测试。

事务是由对数据库数据表insert、update、select等单个sql语句或多个sql语句组成。说白了就是测试数据库insert、update、select等sql语句的执行性能,而多个sql语句组合在一起完成一个事情,这些多个语句在一起就统一称为一个事务。例如,去银行变更联系电话,首先需要查询出之前联系电话(select),然后需要变更成新的联系电话(update),通过select和update完成了变更联系方式这个事务。

通过本发明的技术方案,能够快速便捷的模拟多主机并发压力测试来评估saphana在联机交易中事务处理能力,更好的评估saphana在实际生产环境应用场景中的性能。

在本发明的一个优选实施例中,基底数据包括连接到spahana的驱动类型、数据库主机地址、数据库连接用户与口令、数据加载线程数和数据量大小,该基底数据加载过程需要使用参数配置文件预设置连接spahana的驱动类型、数据库主机地址、数据库连接用户与口令、数据加载线程数和数据量大小,其中数据量大小以仓库(warehouse)参数体现。

在本发明的一个优选实施例中,在主服务器中配置主服务器文件包括:设置从服务器名称数量、测试执行时间和调整事务类型比例和主服务器进程启动端口号。在主服务器中配置主服务器文件,主服务器进程负责管理调度从服务器进程以对saphana行压力测试,主服务器、从服务器以及主服务器进程与从服务器进程的关系可参见图3。主服务器上只启动单个主服务器进程,从服务器上可启动多个从服务器进程,具体每个从服务器上的进程数量可根据实际需求启动。主服务器进程控制从服务器进程对saphana进行压力测试,并管理压力测试执行时间和管理事务比例。在主服务器文件中可设置从服务器名称数量、运行时间和调整事务类型比例及主服务器进程启动时的端口号。

在本发明的一个优选实施例中,在从服务器上配置从服务器文件包括:设置连接spahana数据库的驱动类型、数据库主机地址、数据库连接用户与口令、模拟用户数量、仓库数量、指定主服务器ip和主服务器进程启动端口号。在从服务器上配置从服务器文件,每个从服务器进程对应一个从服务器文件。在从服务器文件中预设置连接spahana的驱动类型、数据库主机地址、数据库连接用户与口令、模拟用户数量、warehouse数量、指定主服务器主机ip、主服务器启动端口号。每个从服务器可以设置不同数量的模拟用户数量和warehouse数量。

在本发明的一个优选实施例中,使用测试用户基于主服务器文件打开主服务器进程,并基于主服务器进程的设置控制从服务器文件打开相应的从服务器进程,利用从服务器进程对spahana服务器中的spahana进行压力测试包括:

在主服务器中打开一个主服务器进程,根据主服务器进程中设置的调用从服务器的参数在相应的从服务器中打开至少一个从服务器进程;

利用打开的从服务器进程对spahana服务器中的spahana进行压力测试。

可以根据本发明的方法编写自动化脚本对spahana进行压力测试。

通过本发明的技术方案,能够快速便捷的模拟多主机并发压力测试来评估saphana在联机交易中事务处理能力,更好的评估saphana在实际生产环境应用场景中的性能。

需要说明的是,本领域普通技术人员可以理解实现上述实施例方法中的全部或部分流程,可以通过计算机程序来指令相关硬件来完成,上述的程序可存储于计算机可读取存储介质中,该程序在执行时,可包括如上述各方法的实施例的流程。其中存储介质可为磁碟、光盘、只读存储器(read-onlymemory,rom)或随机存取存储器(randomaccessmemory,ram)等。上述计算机程序的实施例,可以达到与之对应的前述任意方法实施例相同或者相类似的效果。

此外,根据本发明实施例公开的方法还可以被实现为由cpu执行的计算机程序,该计算机程序可以存储在计算机可读存储介质中。在该计算机程序被cpu执行时,执行本发明实施例公开的方法中限定的上述功能。

基于上述目的,本发明的实施例的第二个方面,提出了一种saphana性能评估的设备,如图2所示,设备200包括:

创建模块201,创建模块201配置为将多台服务器主机中的一个设置为主服务器,其他服务器主机设置为从服务器,将主服务器和从服务器连接到saphana服务器上,并在saphana服务器上分别创建测试用户和测试相关统计表;

导入模块202,导入模块202配置为将基底数据加载到saphana服务器中并为测试相关统计表创建索引;

配置模块203,配置模块203配置为在主服务器中配置主服务器文件,并在从服务器上配置从服务器文件;

测试模块204,测试模块204配置为响应于接收到测试的指令,使用测试用户基于主服务器文件打开主服务器进程,并基于主服务器进程的设置控制从服务器文件打开相应的从服务器进程,利用从服务器进程对spahana服务器中的spahana进行压力测试,并基于索引将测试结果写入测试相关统计表中输出。

在本发明的一个优选实施例中,基底数据包括连接到spahana的驱动类型、数据库主机地址、数据库连接用户与口令、数据加载线程数和数据量大小。

在本发明的一个优选实施例中,配置模块203还配置为设置从服务器名称数量、测试执行时间和调整事务类型比例和主服务器进程启动端口号。

在本发明的一个优选实施例中,配置模块203还配置为设置连接spahana数据库的驱动类型、数据库主机地址、数据库连接用户与口令、模拟用户数量、仓库数量、指定主服务器ip和主服务器进程启动端口号。

在本发明的一个优选实施例中,测试模块204还配置为:

在主服务器中打开一个主服务器进程,根据主服务器进程中设置的调用从服务器的参数在相应的从服务器中打开至少一个从服务器进程;

利用打开的从服务器进程对spahana服务器中的spahana进行压力测试。

需要特别指出的是,上述系统的实施例采用了上述方法的实施例来具体说明各模块的工作过程,本领域技术人员能够很容易想到,将这些模块应用到上述方法的其他实施例中。

此外,上述方法步骤以及系统单元或模块也可以利用控制器以及用于存储使得控制器实现上述步骤或单元或模块功能的计算机程序的计算机可读存储介质实现。

本领域技术人员还将明白的是,结合这里的公开所描述的各种示例性逻辑块、模块、电路和算法步骤可以被实现为电子硬件、计算机软件或两者的组合。为了清楚地说明硬件和软件的这种可互换性,已经就各种示意性组件、方块、模块、电路和步骤的功能对其进行了一般性的描述。这种功能是被实现为软件还是被实现为硬件取决于具体应用以及施加给整个系统的设计约束。本领域技术人员可以针对每种具体应用以各种方式来实现的功能,但是这种实现决定不应被解释为导致脱离本发明实施例公开的范围。

上述实施例,特别是任何“优选”实施例是实现的可能示例,并且仅为了清楚地理解本发明的原理而提出。可以在不脱离本文所描述的技术的精神和原理的情况下对上述实施例进行许多变化和修改。所有修改旨在被包括在本公开的范围内并且由所附权利要求保护。


技术特征:

1.一种saphana性能评估的方法,其特征在于,包括以下步骤:

将多台服务器主机中的一个设置为主服务器,其他所述服务器主机设置为从服务器,将所述主服务器和所述从服务器连接到所述saphana服务器上,并在所述saphana服务器上分别创建测试用户和测试相关统计表;

将基底数据加载到所述saphana服务器中并为所述测试相关统计表创建索引;

在所述主服务器中配置主服务器文件,并在所述从服务器上配置从服务器文件;

响应于接收到测试的指令,使用所述测试用户基于所述主服务器文件打开主服务器进程,并基于所述主服务器进程的设置控制所述从服务器文件打开相应的从服务器进程,利用所述从服务器进程对所述spahana服务器中的spahana进行压力测试,并基于所述索引将测试结果写入所述测试相关统计表中输出。

2.根据权利要求1所述的方法,其特征在于,所述基底数据包括连接到所述spahana的驱动类型、数据库主机地址、数据库连接用户与口令、数据加载线程数和数据量大小。

3.根据权利要求1所述的方法,其特征在于,在所述主服务器中配置主服务器文件包括:设置从服务器名称数量、测试执行时间和调整事务类型比例和主服务器进程启动端口号。

4.根据权利要求1所述的方法,其特征在于,在所述从服务器上配置从服务器文件包括:设置连接所述spahana数据库的驱动类型、数据库主机地址、数据库连接用户与口令、模拟用户数量、仓库数量、指定主服务器ip和主服务器进程启动端口号。

5.根据权利要求1所述的方法,其特征在于,使用所述测试用户基于所述主服务器文件打开主服务器进程,并基于所述主服务器进程的设置控制所述从服务器文件打开相应的从服务器进程,利用所述从服务器进程对所述spahana服务器中的spahana进行压力测试包括:

在所述主服务器中打开一个所述主服务器进程,根据所述主服务器进程中设置的调用所述从服务器的参数在相应的从服务器中打开至少一个所述从服务器进程;

利用打开的所述从服务器进程对所述spahana服务器中的所述spahana进行压力测试。

6.一种saphana性能评估的设备,其特征在于,所述设备包括:

创建模块,所述创建模块配置为将多台服务器主机中的一个设置为主服务器,其他所述服务器主机设置为从服务器,将所述主服务器和所述从服务器连接到所述saphana服务器上,并在所述saphana服务器上分别创建测试用户和测试相关统计表;

导入模块,所述导入模块配置为将基底数据加载到所述saphana服务器中并为所述测试相关统计表创建索引;

配置模块,所述配置模块配置为在所述主服务器中配置主服务器文件,并在所述从服务器上配置从服务器文件;

测试模块,所述测试模块配置为响应于接收到测试的指令,使用所述测试用户基于所述主服务器文件打开主服务器进程,并基于所述主服务器进程的设置控制所述从服务器文件打开相应的从服务器进程,利用所述从服务器进程对所述spahana服务器中的spahana进行压力测试,并基于所述索引将测试结果写入所述测试相关统计表中输出。

7.根据权利要求6所述的设备,其特征在于,所述基底数据包括连接到所述spahana的驱动类型、数据库主机地址、数据库连接用户与口令、数据加载线程数和数据量大小。

8.根据权利要求6所述的设备,其特征在于,所述配置模块还配置为设置从服务器名称数量、测试执行时间和调整事务类型比例和主服务器进程启动端口号。

9.根据权利要求6所述的设备,其特征在于,所述配置模块还配置为设置连接所述spahana数据库的驱动类型、数据库主机地址、数据库连接用户与口令、模拟用户数量、仓库数量、指定主服务器ip和主服务器进程启动端口号。

10.根据权利要求6所述的设备,其特征在于,所述测试模块还配置为:

在所述主服务器中打开一个所述主服务器进程,根据所述主服务器进程中设置的调用所述从服务器的参数在相应的从服务器中打开至少一个所述从服务器进程;

利用打开的所述从服务器进程对所述spahana服务器中的所述spahana进行压力测试。

技术总结
本发明提供了一种SAP HANA性能评估的方法和设备,方法包括:将多台服务器主机中的一个设置为主服务器,其他服务器主机设置为从服务器,将主服务器和从服务器连接到SAP HANA服务器上,并在SAP HANA服务器上分别创建测试用户和测试相关统计表;将基底数据加载到SAP HANA服务器中并为测试相关统计表创建索引;在主服务器中配置主服务器文件,并在从服务器上配置从服务器文件;响应于接收到测试的指令,使用测试用户基于主服务器文件打开主服务器进程,并基于主服务器进程的设置控制从服务器文件打开相应的从服务器进程,利用从服务器进程对SPA HANA服务器中的SPA HANA进行压力测试。通过使用本发明的方法,能够模拟多主机并发压力测试来评估SAP HANA在联机交易中事务处理能力。

技术研发人员:刘兵;张远斌
受保护的技术使用者:苏州浪潮智能科技有限公司
技术研发日:2020.01.19
技术公布日:2020.06.05

转载请注明原文地址: https://bbs.8miu.com/read-59022.html

最新回复(0)