title: Benchmark layout: page show_sidebar: false menubar: overview_menu

测试环境

机器配置:

  • CPU:Intel(R) Xeon(R) CPU E5-2620 v3 @ 2.40GHz (24 cores)
  • 内存​:128GB
  • 存储:480G RAID0 SSD *8
  • 网卡:10Gb

集群配置:

  • 节点数:5个replica server节点
  • 测试表的Partition数:64个

测试工具:

  • YCSB (使用Pegasus Java Client)
  • 读写请求的数据分布特征:zipfian,可以理解为遵守80/20原则的数据分布,即80%的访问都集中在20%的内容上。

备注:

  • 运行时长单位:小时。
  • QPS单位:条/秒。
  • 延迟单位:微秒。

V1.11.6 测试结果

multi_get/batch_set

特别注意:测试环境和参数以此为准

  • 测试case:读使用multi_get,写使用batch_set,1QPS的batch_set等于3QPS的set操作
  • 数据大小:单条数据3KB,sort_key数量为3
  • 测试表的Partition数:128个
  • rocksdb_block_cache_capacity = 40G
  • pegasu-client = 1.11.7-thrift-0.11.0-inlined-release

| 测试Case | 读写比 | 运行时长 | Max缓存命中率 | 读QPS | 读Avg延迟 | 读P99延迟 | 读P999延迟 | 写QPS | 写Avg延迟 | 写P99延迟 | 写P999延迟 | | ----------------------------- | ------ | -------- | -------- | --------- | --------- | ----- | --------- | --------- | ------ | --------- | | 3客户端15线程 | ​20:1 | 1h | 10% | 150K | 263 | 808 | 12615 | 8k | 1474 | 7071 | 26342 | | ​3客户端7线程 | ​20:1 | 2h | 17% | 75K | 226 | 641 | 5331 | 4K | 1017 | 4583 | 14983 |

v1.11.1 测试结果(20KB)

  • 单条数据大小:20KB
  • 测试时间:2018/11/9

2备份

测试Case读写比运行时长读QPS读Avg延迟读P99延迟写QPS写Avg延迟写P99延迟
(1)数据加载: 3客户端*10线程0:10.98---8439355732223
(2)​读写同时: 3客户端*15线程​1:30.6631594428344959472325125071
​(3)读写同时: 3客户端*30线程​30:11.2564358133013975214516996467
(4)数据只读: 6客户端*100线程1:0​​0.9130491327412167---

3备份

测试Case读写比运行时长读QPS读Avg延迟读P99延迟写QPS写Avg延迟写P99延迟
(1)数据加载: 3客户端*10线程0:11.40---5919506340639
(2)​读写同时: 3客户端*15线程​1:31.1118766927446395632561276095
​(3)读写同时: 3客户端*30线程​30:11.63493411751216151644193511159
(4)数据只读: 6客户端*100线程1:0​​0.9125456392315679---

v1.11.1 测试结果(10KB)

  • 单条数据大小:10KB
  • 测试时间:2018/11/5

2备份

测试Case读写比运行时长读QPS读Avg延迟读P99延迟写QPS写Avg延迟写P99延迟
(1)数据加载: 3客户端*10线程0:10.78---14181211015468
(2)​读写同时: 3客户端*15线程​1:30.52402452094124712069178014495
​(3)读写同时: 3客户端*30线程​30:10.761058418169613352711074155
(4)数据只读: 6客户端*100线程1:0​​​1.0416215018686733---

3备份

测试Case读写比运行时长读QPS读Avg延迟读P99延迟写QPS写Avg延迟写P99延迟
(1)数据加载: 3客户端*10线程0:11.16---9603311520468
(2)​读写同时: 3客户端*15线程​1:30.6930435657387839126314027956
​(3)读写同时: 3客户端*30线程​30:10.899013593713324300211854816
(4)数据只读: 6客户端*100线程1:0​1.0815486919457757---

RocsDB配置:

    rocksdb_abnormal_get_time_threshold_ns = 10000000
    rocksdb_abnormal_get_size_threshold = 1000000
    rocksdb_abnormal_multi_get_time_threshold_ns = 100000000
    rocksdb_abnormal_multi_get_size_threshold = 10000000
    rocksdb_abnormal_multi_get_iterate_count_threshold = 1000

    rocksdb_write_buffer_size = 67108864
    rocksdb_max_write_buffer_number = 6
    rocksdb_max_background_flushes = 4
    rocksdb_max_background_compactions = 12
    rocksdb_num_levels = 6
    rocksdb_target_file_size_base = 67108864
    rocksdb_target_file_size_multiplier = 1
    rocksdb_max_bytes_for_level_base = 671088640
    rocksdb_max_bytes_for_level_multiplier = 10
    rocksdb_level0_file_num_compaction_trigger = 4
    rocksdb_level0_slowdown_writes_trigger = 30
    rocksdb_level0_stop_writes_trigger = 60
    rocksdb_disable_table_block_cache = false
    rocksdb_compression_type = snappy none

v1.10.0 测试结果

  • 单条数据大小:320字节
  • 测试时间:2018/07/27
测试Case读写比运行时长读QPS读Avg延迟读P99延迟写QPS写Avg延迟写P99延迟
(1)数据加载: 3客户端*10线程0:11.89---440396793346
(2)​读写同时: 3客户端*15线程​1:31.2416690311892500767914396
​(3)读写同时: 3客户端*30线程​30:11.04311633264511103886192468
(4)数据只读: 6客户端*100线程1:0​​0.17​978884623​1671---
(5)数据只读: 12客户端*100线程1:0​​0.28​11943941003​2933---