Versions Compared

Key

  • This line was added.
  • This line was removed.
  • Formatting was changed.

...

Code Block
languagesql
firstline1
titlegobblin_job_config


CREATE TABLE `gobblin_job` (
  `id` int(11) NOT NULL AUTO_INCREMENT,
  `name` varchar(255) NOT NULL,
  `description` varchar(255) DEFAULT NULL,
  `schedule` varchar(64) DEFAULT NULL,
  `is_disabled` tinyint(1) DEFAULT '0',
  `priority` smallint(6) DEFAULT NULL,
  `configs` text,
  `owner_email` varchar(255) DEFAULT NULL,
  `source_system` varchar(255) DEFAULT NULL,
  `target_system` varchar(255) DEFAULT NULL,
  `version``job_template` intvarchar(11255) DEFAULT NULL,
  `created_date` timestamp NOT NULL DEFAULT CURRENT_TIMESTAMP,
  `updated_date` timestamp NOT NULL DEFAULT CURRENT_TIMESTAMP ON UPDATE CURRENT_TIMESTAMP,
  PRIMARY KEY (`name`),
  KEY `name` (`name`),
  KEY `id` (`id`),
) ENGINE=InnoDB AUTO_INCREMENT=1 DEFAULT CHARSET=utf8;


CREATE TABLE gobblin_job_queue
(KEY `gobblin_job_template_fk` (`job_template`),
  KEY `source_system` queue_id(`source_system`),
  KEY  `target_system` varchar(255) NOT NULL`target_system`),
  CONSTRAINT  `gobblin_job_ibfk_name1` FOREIGN KEY (`source_system`) REFERENCES `gobblin_sync_system` varchar(255`id`) NOT NULL,
  CONSTRAINT  configs      text`gobblin_job_ibfk_2` FOREIGN KEY (`target_system`) REFERENCES `gobblin_sync_system` (`id`),
  CONSTRAINT  status       varchar(255) NOT NULL,
    job_id      `gobblin_job_template_fk` FOREIGN KEY (`job_template`) REFERENCES `gobblin_job_template` (`name`)
) ENGINE=InnoDB AUTO_INCREMENT=25 DEFAULT CHARSET=utf8;


CREATE TABLE `gobblin_job_template` (
  `name` varchar(255),
    created_date timestamp    NOT NULL DEFAULT CURRENT_TIMESTAMP'',
    updated_date timestamp    `configs` text NOT NULL DEFAULT CURRENT_TIMESTAMP ON UPDATE CURRENT_TIMESTAMP,
    PRIMARY KEY (queue_id`name`)
) ENGINE = InnoDB
  DEFAULT CHARSET = utf8;


CREATE TABLE `gobblin_jobsync_template`
system` (
  `id` varchar(255) `name`NOT NULL,
  `name` varchar(64) NOT NULL,
   `type` varchar(25564) NOT NULL DEFAULT '',
  `datacenter`  `source_system`varchar(64) DEFAULT NULL,
  `region` varchar(25564) DEFAULT NULL,
  `zone` varchar(64) DEFAULT NULL,
  `users` varchar(1024) DEFAULT NULL,
  `on_hold` tinyint(1)  `target_system` varchar(255)          DEFAULT NULL,
    `configs` text NOT NULL,
    NOT NULL DEFAULT '0',
  `deprecated` tinyint(1) NOT NULL DEFAULT '0',
  `source_support` tinyint(1) NOT NULL DEFAULT '0',
  `target_support` tinyint(1) NOT NULL DEFAULT '0',
  `configs` text,
  `created_date` timestamp NOT NULL DEFAULT CURRENT_TIMESTAMP,
  `updated_date` timestamp NOT NULL DEFAULT CURRENT_TIMESTAMP ON UPDATE CURRENT_TIMESTAMP,
  PRIMARY KEY (`name``id`)
) ENGINE = InnoDB
  DEFAULT CHARSET = utf8;


CREATE TABLE gobblin_job_owner
(
    name         varchar(255) NOT NULL,
    email        varchar(255) NOT NULL,
    team_name    int(11)               DEFAULT NULL,
    team_email   int(11)               DEFAULT NULL,
    org_name     int(11)               DEFAULT NULL,
    created_date timestamp    NOT NULL DEFAULT CURRENT_TIMESTAMP,
    updated_date timestamp    NOT NULL DEFAULT CURRENT_TIMESTAMP ON UPDATE CURRENT_TIMESTAMP,
    PRIMARY KEY (email)
) ENGINE = InnoDB
  DEFAULT CHARSET = utf8;




Alternate proposal: 

Code Block
languagesql
//Shirshanka: this will allow us to model job_config as a schema-d thing ... and evolve versions without having to use DDL to perform MySQL schema changes...  also allows to swap out a K-V store for this easily

CREATE TABLE `gobblin_job` (
  `id` int(11) NOT NULL AUTO_INCREMENT,
  `name` varchar(255) NOT NULL,
  `configs` text,
  `version` int(11),
  `created_date` timestamp NOT NULL DEFAULT CURRENT_TIMESTAMP,
  `updated_date` timestamp NOT NULL DEFAULT CURRENT_TIMESTAMP ON UPDATE CURRENT_TIMESTAMP,
  PRIMARY KEY (`name`),
  KEY `name` (`name`),
  KEY `id` (`id`)
) ENGINE=InnoDB AUTO_INCREMENT=1 DEFAULT CHARSET=utf8;



  • JOB MGMT. CRUD REST API


  1. Create New job example

...