【发布时间】:2013-08-12 01:17:42
【问题描述】:
我在 mongodb 上运行 YCSB 工具以对 db 进行基准测试,我注意到一旦我加载工作负载(例如工作负载)并运行事务(例如目标 1500),我就无法在不删除整个事务的情况下运行另一个事务数据库并再次加载数据库。原因是如果我在不删除和加载数据库的情况下运行另一个事务,我会收到“重复键错误”错误。
看起来第一笔交易输入了一些第二笔交易也尝试插入的键。有解决方法吗?还是我做的有问题。
这是我用来加载的命令:
./bin/ycsb load mongodb -P workloads/workloada
-p mongodb.url=<ip_address>:27020
-p mongodb.maxconnections=150 -s
-p mongodb.writeConcern=normal
-target 3500 -threads 200 > <output-file>
这是我用于交易阶段的命令
./bin/ycsb load mongodb
-P workloads/workloada
-p mongodb.url=<IP_address>:27020
-p mongodb.maxconnections=100 -s
-p mongodb.writeConcern=normal
-target 1500 -threads 100 > <output_file>
【问题讨论】:
-
但是您的事务命令行错误,您正在运行数据加载
-
将“load”替换为“run”——这就是运行工作负载的内容(仅加载插入,并且只需要运行一次)。