我应该有一个数据库还是多个?

时间:2012-11-14 02:16:38

标签: mysql database-design

我希望对设备进行多次测试并记录reslts。

每次运行都包含

  • 开始时间戳
  • 结束时间戳
  • 用户提供了测试运行的文本描述
  • 各种测量设备的测量集合,以一秒的间隔进行

问题:我曾考虑为每次测试运行创建一个数据库(因为测量表将有多个特定于该运行的行,否则我将不得不添加一个额外的列作为索引)。

我是否正确使用多个数据库,或者有更好的方法,使用单个数据库?

3 个答案:

答案 0 :(得分:3)

如果你不得不问,答案总是一个。

如果您需要多个问题,就不会问这个问题,因为您已经超越思考您需要多个数据库来知道

您需要关注的是创建一个简单的架构,它可以处理您想要的内容并正确编制索引,以便快速查询。

答案 1 :(得分:3)

使用一个数据库。在测量表中,添加一个run_id字段,指定特定的运行。

以下示例 - 您的字段类型可能会有所不同,具体取决于您的需求。

CREATE TABLE IF NOT EXISTS measurements
(
    measurement_id INT NOT NULL AUTO_INCREMENT,
    run_id INT,
    start_time INT,
    stop_time INT,
    description VARCHAR(255),
    PRIMARY KEY (measurement_id)
);

CREATE TABLE IF NOT EXISTS runs
(
    run_id INT NOT NULL AUTO_INCREMENT,
    description VARCHAR(255),
    PRIMARY KEY (run_id)
);

答案 2 :(得分:1)

如果您正在寻找建议,则需要使用单个数据库。就易用性而言,它将帮助您实现可扩展性和维护。使用多个DB /模式将在以后阶段引起头痛。这只是一个建议。