性能测试

性能测试

1. 测试介绍
* 数据来源
    采集小说书本章节以及章节内容作为源数据,并存储到mysql数据库。100万数据,数据库大小为8.1G。

* 方法
    建立索引时间:从数据库中循环读取1000条循环建立索引。当$prefix/tmp/booktest_db.rcv、$prefix/tmp/booktest_db.snd文件都不存在时,
        读取索引日志文件$prefix/tmp/indexd.log最后一行booktest记录作为索引建立完成时间;
    搜索速度:索引建立完成后,执行7次不同任意关键词的第一次搜索,结果去掉最大和最小值,然后取5次的平均值;
    索引大小:获取$prefix/data/booktest/下,db和db_a的目录大小;

* 结论
    建立索引时间: 每1万条数据花费时间约为4.14分钟;
    搜索速度:100万数据搜索速度在0.5秒左右;
    索引大小:索引大小大约为数据大小的3.5倍;

* 环境
    操作系统:Ubuntu 10.04.3 LTS  2.6.32-33-server; 
    PHP:5.3.6;
    CPU:Intel(R) Xeon(R) CPU E5504 @ 2.00GHz; 
    内存大小:7.81G;

* 备注
    $prefix表示Xunsearch的安装目录;
    建立索引时从数据库中循环读取的执行时间,100万条数据约为2分钟(对结果影响不大,忽略此时间);
    测试结果仅供参考;

2. 测试结果图表

数据库大小与索引大小关系

数据库大小与索引大小关系

数据库条数与搜索时间

数据库条数与搜索时间

数据库条数与索引建立时间

数据库条数与索引建立时间

测试结果数据

测试结果数据