
# 测试方法
RDS for SQL Server是基于华为云平台的，完全兼容微软SQL Server的在线关系型数据库服务。具有稳定可靠、安全运行、弹性伸缩、轻松管理和经济实用等特点。拥有高可用架构、数据安全保障和故障秒级恢复功能，提供了灵活的备份方案。
#### 测试环境
- 区域：华北-北京一。
- 可用分区：可用区1。
- ECS实例：规格为高性能计算型HC2，8核16GB ，存储类型为SSD，存储空间为200GB，操作系统镜像使用Windows Server 2012 R2 Standard 64bit，网络类型为VPC。
 
#### 测试工具
HammerDB是一款开源的图形化数据库负载测试和基准测试工具，可以测试任意操作系统上运行的多种数据库系统，目前有Windows和Linux版本。HammerDB支持自动化、多线程和可扩展的动态脚本。您可以使用HammerDB创建一个测试schema，加载数据，并针对OLTP（online transaction processing ，联机事务处理）和OLAP（online analytical processing，在线分析处理）场景模拟多个虚拟用户对数据库的工作负载。
本文使用的HammerDB版本为2.19，[HammerDB最新下载](http://www.hammerdb.com/download.html)。
安装后的界面如下。
![](https://support.huaweicloud.com/pwp-rds-mssql/zh-cn_image_0000002229550858.png)
#### 测试基准
TPC(Transaction Processing Performance Council)是一家非营利性公司，旨在确定交易处理和数据库基准，并向业界传播客观、可验证的TPC性能数据。TPC包含多种测试基准，常见的有TPC-A、TPC-C和TPC-H等，详细请参见官方文档。TPC-C是一种在OLTP基准。由于TPC-C具有多种事务类型，更复杂的数据库和总体执行结构，TPC-C与TPC-A不同且更为复杂。
本次采用TPC-C测试基准。
**华为云完全基于** **HammerDB** **工具自建测试模型，不需要对模型结构进行任何优化修改。**
#### 测试步骤
1. 打开HammerDB，如[图1]。
   
   图1打开   
   ![](https://support.huaweicloud.com/pwp-rds-mssql/zh-cn_image_0000002264630189.png)
   
   
2. 双击"SQL Server"，在弹出框中选择"MSSQL Server"和"TPC-C"，单击"OK"，如[图2]。
   
   图2选择   
   ![](https://support.huaweicloud.com/pwp-rds-mssql/zh-cn_image_0000002264630177.png)
   
   
3. 设置连接信息，创建对象数据库"tpcc"。 
   选择"SQL Server \> TPC-C \> Schema Build"，双击"Options"，如[图3]。
   ![](https://support.huaweicloud.com/pwp-rds-mssql/public_sys-resources/notice_3.0-zh-cn.png)
   弹出框中"Schema"需选择"Updated"。
   图3Options   
   ![](https://support.huaweicloud.com/pwp-rds-mssql/zh-cn_image_0000002229710658.png)
   
   
4. 选择"SQL Server \> TPC-C \> Schema Build \> Build"，在弹出框单击"是"，创建schema，如[图4]。
   
   图4Build   
   ![](https://support.huaweicloud.com/pwp-rds-mssql/zh-cn_image_0000002229550830.png)
   等待初始化完成，如[图5]。
   图5初始化完成   
   ![](https://support.huaweicloud.com/pwp-rds-mssql/zh-cn_image_0000002229710674.png)
   
   
5. 单击![](https://support.huaweicloud.com/pwp-rds-mssql/zh-cn_image_0000002264630185.png)停止执行，如[图6]。
   
   图6停止执行   
   ![](https://support.huaweicloud.com/pwp-rds-mssql/zh-cn_image_0000002229710654.png)
   
   
6. 选中"SQL Server \> TPC-C \> Driver Script"，双击"Options"，确保连接信息准确，如[图7]。
   
   图7检查连接信息   
   ![](https://support.huaweicloud.com/pwp-rds-mssql/zh-cn_image_0000002229550834.png)
   
   
7. 选中"SQL Server \> TPC-C \> Driver Script"，双击"Load"，如[图8]。
   
   图8Load   
   ![](https://support.huaweicloud.com/pwp-rds-mssql/zh-cn_image_0000002264550133.png)
   
   
8. 选中"SQL Server \> TPC-C \> Virtual User"，双击"Options"，设置虚拟用户数，可以通过不断调整用户数，查看TPM值（Transaction Per Minute，每分钟处理的事务数，它是衡量数据库系统处理能力的重要指标），直到出现稳定最高TPM峰值。 
   ![](https://support.huaweicloud.com/pwp-rds-mssql/public_sys-resources/notice_3.0-zh-cn.png)
   建议不要勾选"Show Output"选项，可能会导致客户端无响应。
   ![](https://support.huaweicloud.com/pwp-rds-mssql/zh-cn_image_0000002264630181.png)
   
   
9. 单击"是"，完成创建。 
   ![](https://support.huaweicloud.com/pwp-rds-mssql/zh-cn_image_0000002264550149.png)
   
   
10. 选择"Virtual User"，双击"Run"，直到出现稳定TPM峰值。 
    图9稳定TPM峰值   
    ![](https://support.huaweicloud.com/pwp-rds-mssql/zh-cn_image_0000002264550129.png)
    
    
 
