测试环境:PC :HP NC6000 Note Book
CPU:Intel Pentium M 725 1600 MHz
MEM:1.5G Memory PC2700 (166 MHz)
用例数据占用:13,592K Memory
HDB自身占用: 9K Memory
********************************************************************************
* 用例说明:
* 该测试以10万条通讯记录的通讯费用计算为例,模拟电信通话费用计算,并按本地呼叫
* 长途呼叫、漫游呼叫等复杂情况进行测试,并统计测试数据。
*
* 用例数据:
* 不同的费率数据保存在费率表[T_FEETYPE]中,随机模拟生成10万条通讯记录,并保存在
* 到通讯记录表[T_RECORD]中。然后对其中每条记录,依次对应费率表[T_FEETYPE]中不同的
* 费率计算方法分别进行计算,并将最终结果插入费用表[T_CHARGE]中。
*
* === 内存表名 :T_FEETYPE ====================================================
* 容量 :10000条
* 字段名称 |索引类型 |字段说明
* ----------|----------------|--------------------------------------
* CallType |唯一顺序索引 |通话类型:本地"LOCAL" 外地"OUTER" 字符串类型
* FeeRate |无 |费率 元/分钟 浮点数类型
* 表功能说明:
* 用来存放所有的通话费率信息,通话记录根据通话类型(CallType) 查询该表,得
* 到相应的费率(FeeRate)
* 如:一条通话记录的通话类型为本地通话(CallType=LOCAL),通过该表得到本地通
* 话的费率是0.1元/分钟(FeeRate=0.1),用于继续计算这条通话记录的费用。
*
* === 内存表名 :T_RECORD ====================================================
* 容量 :100000条
* 表字段 |索引类型 |说明
* ----------|----------------|--------------------------------------
* CallType |非唯一顺序索引 |通话类型:本地"LOCAL" 外地"OUTER" 字符串类型
* Time |无 |通话分钟数: 秒 整数类型
* 表功能说明:
* 用来存放通话记录信息。因为通话记录有多条。所以CallType字段采用非唯一顺序
* 索引。
*
* === 内存表名 :T_CHARGE ====================================================
* 容量 :100000条
* 表字段 |索引类型 |说明
* ----------|----------------|--------------------------------------
* Charge |非唯一顺序索引 |通话费用:元 浮点类型
* CallType |无 |通话类型:本地"LOCAL" 外地"OUTER" 字符串类型
* Time |非唯一顺序索引 |通话分钟数
* 表功能说明:用来存放所有通话费用信息。所以在通话费用上可能相同,建立
* 非唯一索引,通话分钟数也是如此。
*
* 用例将展现:
* 1) 10万条记录生成并插入通讯记录内存表[T_RECORD]的所耗时间、每秒操作数
* 2) 10万条记录计算完成并插入费用内存表中[T_CHARGE]的所耗时间、每秒操作数
* 3) 读取费用内存表中[T_CHARGE]所有的所耗时间、每秒操作数
* 4) 用例提供检测计算结果选项,用于展现各表中记录内容
* 5) 对表中的指定记录进行数值验证
* 6) 对不同类型字段的索引处理支持
* 方法:在 makefile 文件中的 "CCOPTIONS" 增加 "-DCHECK" 选项
* 如:CCOPTIONS = -D__$(PLATFORM)__ $($(PLATFORM)FLAGS) -DCHECK
*
* HDB V1.0.0: (Jan 27 , 2008)
*******************************************************************************
速度数据:
[100000] 条记录插入 [T_RECORD] 表成功!
报告: 耗时: 0.061000 秒 : 1.63934e+006 ops per sec
[100000] 条记录计算费用完成并插入 [T_CHARGE] 表成功!
报告: 耗时: 2.243000 秒 : 44583.1 ops per sec
[100000] 条记录从 [T_CHARGE] 表中读取成功!
报告: 耗时: 0.010000 秒 : 1e+007 ops per sec
测试数据抽查
>>>>>>Record No1 in [T_CHARGE]: CallType[LOCAL], Charge[0.000000], Time[0]
>>>>>>Record No2 in [T_CHARGE]: CallType[OUTER], Charge[0.300000], Time[1]
>>>>>>Record No3 in [T_CHARGE]: CallType[LOCAL], Charge[0.200000], Time[2]
>>>>>>Record No4 in [T_CHARGE]: CallType[OUTER], Charge[0.900000], Time[3]
>>>>>>Record No99997 in [T_CHARGE]: CallType[LOCAL], Charge[9999.600586], Time[99996]
>>>>>>Record No99998 in [T_CHARGE]: CallType[OUTER], Charge[29999.101563], Time[99997]
>>>>>>Record No99999 in [T_CHARGE]: CallType[LOCAL], Charge[9999.799805], Time[99998]
>>>>>>Record No100000 in [T_CHARGE]: CallType[OUTER], Charge[29999.701172], Time[99999]
测试结束,退出!
## Flyxx ##