summaryrefslogtreecommitdiff
path: root/database
diff options
context:
space:
mode:
authorFabian Mastenbroek <mail.fabianm@gmail.com>2018-03-26 00:47:14 +0200
committerFabian Mastenbroek <mail.fabianm@gmail.com>2018-08-14 19:15:20 +0200
commit47994b66619872336519079846e845b313e948b0 (patch)
treeecdadd6a0d6a2a3996de2969bf86d47974349847 /database
parentfc7c58da98f0eddbd0109e2a09bf394dde555176 (diff)
feat: Add job metrics
Diffstat (limited to 'database')
-rw-r--r--database/schema.sql24
1 files changed, 22 insertions, 2 deletions
diff --git a/database/schema.sql b/database/schema.sql
index 36db1e17..f6286260 100644
--- a/database/schema.sql
+++ b/database/schema.sql
@@ -239,8 +239,8 @@ CREATE TABLE stage_measurements (
experiment_id INTEGER NOT NULL,
tick INTEGER NOT NULL CHECK (tick >= 0),
stage INTEGER NOT NULL CHECK (stage >= 0),
- cpu INTEGER NOT NULL CHECK (cpu >= 0),
- wall INTEGER NOT NULL CHECK (wall >= 0),
+ cpu BIGINT NOT NULL CHECK (cpu >= 0),
+ wall BIGINT NOT NULL CHECK (wall >= 0),
size INTEGER NOT NULL CHECK (size >= 0),
iterations INTEGER NOT NULL CHECK (iterations >= 0),
@@ -249,6 +249,26 @@ CREATE TABLE stage_measurements (
ON UPDATE CASCADE
);
+-- Metrics of a job task
+DROP TABLE IF EXISTS job_metrics;
+CREATE TABLE job_metrics (
+ id INTEGER PRIMARY KEY NOT NULL AUTO_INCREMENT,
+ experiment_id INTEGER NOT NULL,
+ job_id INTEGER NOT NULL,
+ critical_path INTEGER NOT NULL CHECK (critical_path >= 0),
+ critical_path_length INTEGER NOT NULL CHECK (critical_path_length >= 0),
+ waiting_time INTEGER NOT NULL CHECK (waiting_time >= 0),
+ makespan INTEGER NOT NULL CHECK (makespan >= 0),
+ nsl INTEGER NOT NULL CHECK (nsl >= 0),
+
+ FOREIGN KEY (experiment_id) REFERENCES experiments (id)
+ ON DELETE CASCADE
+ ON UPDATE CASCADE,
+ FOREIGN KEY (job_id) REFERENCES jobs (id)
+ ON DELETE CASCADE
+ ON UPDATE CASCADE
+);
+
-- Metrics of a single task
DROP TABLE IF EXISTS task_metrics;
CREATE TABLE task_metrics (