Sequoiadb1.10集群性能测试报告



目录

1. 测试产品 3

2. 测试环境 3

3. 测试数据 3

4. 测试场景 4

4.1. 单进程顺序写(开启事务,逐条提交) 4

4.2. 单进程随机写(开启事务,逐条提交) 5

4.3. 单进程顺序写 5

4.4. 单进程随机写 6

4.5. 单进程批量写(每次2000条记录) 6

4.6. 多进程写(2进程,非批量) 7

4.7. 多进程写(4进程,非批量) 7

4.8. 多进程写(9进程,非批量) 8

4.9. 单进程顺序读(逐条读) 8

4.10. 单进程随机读(逐条读) 9

4.11. 单进程全表扫描(无条件query 9

4.12. 多进程随机读(2进程,逐条读)(2节点) 10

4.13. 多进程随机读(4进程,逐条读)(2节点) 10

4.14. 多进程随机读(8进程,逐条读)(2节点) 11

4.15. 多进程随机读(8进程,逐条读)(4节点) 11

4.16. 单进程顺序更新(逐条更新) 12

4.17. 单进程随机更新(逐条更新) 12

5. 测试结果 12

6. 测试总结&分析 13

 

 

 

 

 

 

 

 

 

 

 

 

1. 测试产品

产品名称:sequoiadb

产品版本:社区版  1.10

 

2. 测试环境

Linux ocsdev103 2.6.32-220.el6.x86_64 #1 SMP Wed Nov 9 08:03:13 EST 2011 x86_64 x86_64 x86_64 GNU/Linux

 

16核心,内存:64G

 

Sequoiadb1.10 测试应用驱动:C++

 

Sequoiadb 集群部署

物理主机:两台

协调分组:I个,两节点

编目分组:1个,两节点

数据分组:1个,两节点(案例4.15增加到4节点)

PageSize 65536

ReplSize 1

 

3. 测试数据

单行记录大小:200字节

写案例中

记录总数:100W

总大小  :200M

读案例中

记录总数:10000W

总大小  :2G

更新案例中

记录总数:10000W

总大小  :2G

 

记录案例:

{

  "_id": {

    "$oid": "54d2d1d65b97b25115000000"

  },

  "acc_no": 13000000000,

  "session_id": "sid:10000000",

  stutas:10000000,

  "context": "asdadasdadsaasdadasdadsadsadasdadasdadsadsadasdadasdadsadsaddsad"

}

4. 测试场景

场景说明:

1. 没特殊说明的,默认采取无事务模式;

 

4.1. 单进程顺序写(开启事务,逐条提交)

 

平均值:2109/

 

4.2. 单进程随机写(开启事务,逐条提交)

 

平均值:2004/

 

4.3. 单进程顺序写

 

平均值:6250/

 

4.4. 单进程随机写

 

平均值:5692/

4.5. 单进程批量写(每次2000条记录)

 

 

平均值:40160条记录/

 

 

 

4.6. 多进程写(2进程,非批量)

 

平均值:10094条记录/

 

4.7. 多进程写(4进程,非批量)

 

平均值:18068条记录/

 

4.8. 多进程写(9进程,非批量)

 

平均值:19584条记录/

 

4.9. 单进程顺序读(逐条读)

 

平均值:3189条记录/

 

4.10. 单进程随机读(逐条读)

 

平均值:2539条记录/

 

4.11. 单进程全表扫描(无条件query

 

平均值:544623条记录/

 

 

4.12. 多进程随机读(2进程,逐条读)(2节点)

 

平均值:5016条记录/

 

4.13. 多进程随机读(4进程,逐条读)(2节点)

 

平均值:8961条记录/

 

4.14. 多进程随机读(8进程,逐条读)(2节点)

 

平均值:13321条记录/

 

4.15. 多进程随机读(8进程,逐条读)(4节点)

 

平均值:12366条记录/

 

注备:基于sequoiadb的读写分离机制,理论上4节点的整体读性能应该高于2节点的,但测试结果与之不符。原因待分析,猜想可能原因:

1. 只是单纯的增加节点,没有增加物理主机,局限于系统IO

2. Sequoiadb相关配置;

 

4.16. 单进程顺序更新(逐条更新)

 

平均值:4147条记录/

 

4.17. 单进程随机更新(逐条更新)

 

平均值:4019条记录/

 

5. 测试结果

针对单纯写场景,Sequoiadb性能较高。单线程处理能力达到6000/秒,结合《hbase集群读写性能测试报告_V2.0.doc》及网络数据,Sequoiadb单纯写性能均优于HbaseMongoDB等同行数据库;

针对批量写场景,Sequoiadb性能同样优于HbaseMongoDB等同行数据库;

多线程同时写的场景中,当线程数较少时,整体写性能与线程数成正比,当整体性能达到20000/每秒后,不再上升;

 

针对单纯读场景,SequoiadbHbase性能十分接近,结合网络数据,Sequoiadb单纯读性能劣与MongoDB

无条件全表扫描场景中,性能较优,达到50W记录/秒;

 

Sequoiadb写性能 > Sequoiadb更新性能 > Sequoiadb读性能;

6. 测试总结&分析

相对MongoDBSequoiadb大大提升了其插入性能;

虽然Sequoiadb没有提供MongoDBHBase相应的缓冲池技术,但是其相应的批量导入性能也并不逊色于MongoDBHBase,可见操作系统内核自带的文件缓冲技术并不逊色于MongoDBHBase特有的缓冲池;

多线程同时写场景中,在线程数为4个以后整体性能就难以提升,猜测性能可能局限于磁盘IO。后续修改PageSize大小再行测试验证;

多线程同时读场景中,增加分组内节点数并没有明显提升整体性能,与预期结果不一致,待后续分析;

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值