【问题标题】:YCSB with mysql Duplicate entry for primary key带有mysql的YCSB主键重复条目
【发布时间】:2014-10-14 12:54:14
【问题描述】:

我尝试用 mysql 运行 ycsb。每次我加载并运行 YCSB 的工作负载之一时,我都会手动删除插入的记录,否则我会收到消息“DuPlicate entry'userx for key 'PRIMARY'”。但是,当我加载并运行工作负载 d 时,尽管我已经截断了表,但我面临着重复的主键问题。可能在这种情况下,当我运行工作负载 d 时,它会在与负载相同的字段中插入数据。如果我创建一个没有主键的表,我不确定 ycsb 测试执行的可靠性。这个问题有解决方案吗?

【问题讨论】:

    标签: mysql duplicates ycsb


    【解决方案1】:

    我遇到了类似的问题,我的直觉是 YCSB 手动写入表的主键,而不是使用自增宏。所以每次你再次运行 YCSB 时,它都会从第一条记录开始,因此会导致主键重复。

    您需要将 YCSB 配置为从最后插入的主键运行。例如,如果您的加载语句是 ycsb load jdbc -s -P workloads/workloada -P jdbc-binding/conf/db.properties -p recordcount=25000000 -s > load.dat

    (这会将 db.properties 作为参数之一加载) 您需要插入该行 insertstart=100001 到您的 db.properties。 这个数字假设你的 ycsb 之前在 100000 结束,所以现在命令将从 100001 开始继续。

    【讨论】:

      猜你喜欢
      • 1970-01-01
      • 2012-08-18
      • 2018-05-02
      • 2014-10-27
      • 1970-01-01
      • 2019-02-23
      • 1970-01-01
      • 2018-05-01
      • 2017-02-17
      相关资源
      最近更新 更多