该基准测试基于 TPC-H 数据

我们对 TPC-H 的 dbgen 程序进行了轻微的修改以生成我们需要的数据,主要的修改是改变它的字段长度。

在 TPC-H 的各种表中, lineitem 表的尺寸最大, 因此我们使用 lineitem 来进行测试.

Notice: TPC-H dbgen 使用 | 作为分隔符.

TPC-H lineitem 有一个 comment 字段, 这个字段是原始的纯文本数据并且是压缩算法的主要压缩对象。这个字段在原始的 dbgen 中被硬编码为 27 bytes,为了让它能够更加适应我们的实际需要,我们添加了一个用来修改这个字段长度的环境变量。另外我们创建了一个 dbgen.sh 来直接生成表数据:dbgen.sh intro

环境

  • CPU : Intel(R) Xeon(R) CPU E5-2682 v4 @ 2.50GHz 40 core
  • Memory : 224GB
  • DISK : 2TB SSD

压缩率

原始数据 Record Size TerarkDB 压缩 RocksDB 压缩
40 GB 128 bytes 8.1 GB 19 GB
104 GB 512 bytes 12 GB 40 GB
415 GB 512 bytes 34 GB 170 GB
128 GB 2048 bytes 4.4 GB 35 GB

OPS

  • Read Only
    • 约 2,000,000/seconds
  • Read Write Mixed
    • 读测试性能非常高, 从 600,000/s 到 1,200,000/s.
    • 写速度约 100,000/seconds

Random Read Latency

Read Latency Read Write Mixed Read
(无后台压缩)
Read
(有后台压缩)
< 100ms 100% 99.99% 100%
< 15ms 99.99% 99.99% 100%
< 5ms 99.98% 99.99% 100%
< 2ms 99.94% 99.99% 100%
< 0.5ms 94.70% 99.99% 99.99%

results matching ""

    No results matching ""

    results matching ""

      No results matching ""