我最近在 CouchDB 上使用 2 个不同的工作负载运行了 YCSB 基准测试。两个工作负载都使用包含 500.000 个文档的数据库,并且都执行了 100.000 次操作。每个工作负载的操作分布是:
Workload OLTP
READS=80%
INSERTS=10%
UPDATES=10%
Workload Cloud
READS=80%
INSERTS=20%
UPDATES=0%
运行两个基准测试我收集了以下结果。
现在我不明白为什么 INSERT 操作是稳定的,而 READ 的延迟会随着执行的 READ 的增加而增加。不应该反过来吗?在某一时刻,OLTP-READs 甚至超过了 INSERTs。为什么这样?
此外,为什么第二个工作负载(读取云)中的读取速度比第一个(OLTP 读取)中的快?云工作负载不使用更新,但这对 READ 的速度有何影响?