1

我正在尝试使用 YCSB ( https://github.com/brianfrankcooper/YCSB ) 对 MySQL 数据库进行基准测试,但我在文档中遇到了这一行:

对于 CoreWorkload,YCSB 客户端将假定有一个名为“usertable”的“表”,它具有灵活的模式:可以在运行时根据需要添加列。

但是我如何在 MySQL 上做到这一点?我在任何地方都找不到任何关于如何在 MySQL 上创建灵活模式的说明

提前致谢

4

2 回答 2

0

这对于关系数据库(例如 MySQL)来说并不完全正确。对于这些,您应该使用 YCSB 所需的确切列数创建表。

JDBCClient课程必须为您提供以下提示:

CREATE TABLE usertable 
(
  YCSB_KEY VARCHAR(100),
  FIELD1 VARCHAR(100), FIELD2 VARCHAR(100),
  FIELD3 VARCHAR(100), FIELD4 VARCHAR(100),
  FIELD5 VARCHAR(100), FIELD6 VARCHAR(100),
  FIELD7 VARCHAR(100), FIELD8 VARCHAR(100),
  FIELD9 VARCHAR(100), FIELD10 VARCHAR(100),

} PRIMARY KEY (YCSB_KEY);

这实际上是针对另一个数据库的,但您可以轻松地调整特定的 MySQL 语法。

于 2014-06-02T19:59:12.353 回答
0

Oracle 允许在运行时在生产系统上添加列。

我认为语法类似于 ALTER TABLE。

我确信其他数据库系统也允许修改表 - 但在使用表时不允许。

例如:

CREATE TABLE usertable 
(
  YCSB_KEY VARCHAR(100),
  FIELD1 VARCHAR(100), FIELD2 VARCHAR(100),


} PRIMARY KEY (YCSB_KEY);

ALTER TABLE usertable (....这将更改表以具有更多字段、索引等。

于 2015-12-17T20:06:48.243 回答