0

デバイスの複数のテストを実行し、reslts を記録したいと考えています。

各実行は以下で構成されます

  • 開始タイムスタンプ
  • 終了タイムスタンプ
  • ユーザーが提供するテスト実行のテキスト記述
  • 1 秒間隔で取得された、さまざまな測定デバイスからの測定値のコレクション

質問: テスト実行ごとに 1 つのデータベースを作成することを考えました (測定テーブルにはその実行に固有の複数の行があり、そうしないとインデックスとして余分な列を追加する必要があるため)。

複数のデータベースを使用するのは正しいですか、それとも単一のデータベースを使用するより良い方法はありますか?

4

3 に答える 3

3

問われれば、答えはいつもひとつ。

複数のデータベースが必要場合、この質問をすることはありません。

焦点を当てる必要があるのは、必要なものを処理でき、適切にインデックスが付けられている単純なスキーマを作成して、クエリをすばやく実行できるようにすることです。

于 2012-11-14T02:19:36.697 に答える
3

1 つのデータベースを使用します。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)
);
于 2012-11-14T02:20:13.410 に答える
1

提案を探している場合は、単一のデータベースを使用する必要があります。使いやすさに関する限り、スケーラビリティとメンテナンスに役立ちます。複数の DB / スキーマを使用すると、後の段階で頭痛の種になります。ただし、それは単なる提案です。

于 2012-11-14T02:20:53.877 に答える