Versions Compared

Key

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

...

Code Block
languagesql
firstline1
titlegobblin_job_config


CREATE TABLE gobblin`gobblin_job
job` (
    id           `id` int(11)      NOT NULL AUTO_INCREMENT,
    name          `name` varchar(255) NOT NULL,
    description`description`   varchar(255)          DEFAULT NULL,
    schedule     `schedule` varchar(64)           DEFAULT NULL,
    is`is_disableddisabled`   tinyint(1)            DEFAULT '0',
    priority      smallint              DEFAULT 100`priority` smallint(6) DEFAULT NULL,
    configs       `configs` text,
    owner`owner_emailemail`   varchar(255) NOTDEFAULT NULL,
    source`source_systemsystem` varchar(255) NOTDEFAULT NULL,
    target`target_systemsystem` varchar(255) NOTDEFAULT NULL,
    job`job_templatetemplate`  VARCHARvarchar(255) DEFAULT NULL,
    created_date `created_date` timestamp    NOT NULL DEFAULT CURRENT_TIMESTAMP,
    updated_date `updated_date` timestamp    NOT NULL DEFAULT CURRENT_TIMESTAMP ON UPDATE CURRENT_TIMESTAMP,
    PRIMARY KEY (name`name`),
  KEY `name` INDEX (name`name`),
  KEY `id` INDEX (id`id`),
) AUTO_INCREMENT = 1
  ENGINE = InnoDB
  DEFAULT CHARSET = utf8;


CREATE TABLE gobblin_job_queue
(
    queue_id     varchar(255) NOT NULL,
    job_name     varchar(255) NOT NULL,
    configs      text,
    status       varchar(255) NOT NULL,
    job_id       varchar(255),
    created_date timestamp   KEY `gobblin_job_template_fk` (`job_template`),
  KEY `source_system` (`source_system`),
  KEY `target_system` (`target_system`),
  CONSTRAINT `gobblin_job_ibfk_1` FOREIGN KEY (`source_system`) REFERENCES `gobblin_sync_system` (`id`),
  CONSTRAINT `gobblin_job_ibfk_2` FOREIGN KEY (`target_system`) REFERENCES `gobblin_sync_system` (`id`),
  CONSTRAINT `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) NOT NULL DEFAULT CURRENT_TIMESTAMP'',
  `configs`  updated_date timestamp    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` varchar(64) DEFAULT NULL,
  `source_system``region` varchar(25564) DEFAULT NULL,
  `zone` varchar(64) DEFAULT NULL,
  `users` varchar(1024) DEFAULT NULL,
  `on_hold` tinyint(1) NOT NULL DEFAULT '0',
  `target_system``deprecated` varchartinyint(2551) NOT NULL DEFAULT '0',
  `source_support` tinyint(1) NOT NULL DEFAULT NULL'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

...