Klustron (formerly KunlunBase) vs. OceanBase TPC-C Comparison Results
Klustron (formerly KunlunBase) vs. OceanBase TPC-C Comparison Results
The Klustron team believes in friendly communication, learning, and reference. After each release, we compare Klustron with several other common distributed database systems in terms of performance to provide reference for industry professionals. We will continue to publish the comparison results of various products. We welcome everyone to read, verify, and ask questions on our official forum.
Specifically, we compare Klustron with TiDB, CockroachDB, OceanBase in terms of sysbench, TPC-C, TPC-H, TPC-DS performance, and with Greenplum in terms of TPC-H and TPC-DS performance. Additionally, we compare Klustron-storage (the storage node of Klustron) with Percona-MySQL, PostgreSQL, OpenGauss in terms of sysbench and TPC-C performance. We welcome everyone to stay updated, share, and provide feedback on these comparisons.
Test Server Details:
IP | CPU | Memory | Disk | Operation System |
---|---|---|---|---|
132(enp5s0) | AMD Ryzen 9 5950X 16 cores 32 threads | 128G | 2T.m2 + 1T.m2 + 4THDD | Centos8.3 |
134(enp5s0) | AMD Ryzen 9 5950X 16 cores 32 threads | 128G | 2T.m2 + 1T.m2 + 4THDD | Centos8.3 |
140(enp5s0) | AMD Ryzen 9 5950X 16 cores 32 threads | 64G | 1T.m2 + 1T.m2 | Centos8.3 |
Cluster Configuration:
Klustron:
- Cluster mode: RBR
- Each server deploys one Cluster_mgr, Node_mgr, computing node, and metadata node
- Two storage shards are deployed on the three servers, with one primary shard on 132 and 134 respectively.
- Each storage shard has one master and two slave nodes.
OceanBase:
- Each test server deploys one observer
- One obproxy is deployed on 132 and 134 respectively.
Test Description:
- Benchmarksql 5.0 was used in this test.
- OceanBase modified Benchmarksql based on this article and used the official OceanBase jdbc driver.
- Both database clusters in this test had 50 warehouses loaded.
- The test duration was 5 minutes for each test.
- After each test, there was a 5-minute pause before proceeding to the next test.
Cluster Configurations
Klustron:
{
"comp":[{
"statement_timeout":1200000,
"mysql_read_timeout":1200,
"mysql_write_timeout":1200,
"lock_timeout":1200000,
"autovacuum": "off",
"log_min_duration_statement":1200000
}
],
"metadata":[{
"lock_wait_timeout":1200,
"innodb_lock_wait_timeout":1200
}
],
"storage":[{
"lock_wait_timeout":1200,
"innodb_lock_wait_timeout":1200,
"fullsync_timeout":1200,
"enable_fullsync": "OFF",
"innodb_flush_log_at_trx_commit": 0,
"sync_binlog": 0,
"innodb_buffer_pool_size": "32*1024*1024*1024",
"max_binlog_size": "1*1024*1024*1024"
}
]
}
OceanBase:
writing_throttling_trigger_percentage: 100
memory_limit_percentage: 80
syslog_io_bandwidth_limit: 10MB
enable_async_syslog: True
builtin_db_data_verify_cycle: 0
enable_monotonic_weak_read: False
weak_read_version_refresh_interval: 0
enable_sql_audit: False
enable_perf_event: False
syslog_level: PERF
enable_syslog_recycle: true
enable_syslog_wf: true
max_syslog_file_count: 4
Performance Results:
threads | OceanBase-tpmC | Klustron-tpmC |
---|---|---|
25 | 26727.9 | 22538.99 |
50 | 26449.72 | 33431.78 |
75 | 25716.25 | 36090.11 |
100 | 24998.16 | 36072.49 |
125 | 21698.29 | 35211.52 |
150 | 21011.14 | 40422.41 |
175 | 20230.11 | 38191.84 |
200 | 19124.72 | 36993.18 |
225 | 19829.38 | 35779.81 |
250 | 17830.15 | 29728.55 |