Я разрабатываю модель экспериментального фреймворка.Я внимательно прочитал статью об экспериментальной инфраструктуре Google Overlapping. Нужно ли добавлять условие в домен или эксперимент?
Я добавляю условие к эксперименту, потому что я думаю, что разделение трафика является сложным, чтобы добавить кодировку к домену. Но в статье Google говорится, что домен или эксперимент оба в порядке!
Это модель, которую я разработал.База данных Mysql 5.7:
CREATE TABLE `tbl_domain` (
`id` BIGINT NOT NULL AUTO_INCREMENT,
`name` VARCHAR(128) NOT NULL,
`status` TINYINT DEFAULT 0,
PRIMARY KEY (`id`)
) ENGINE=INNODB;
CREATE TABLE `tbl_layer` (
`id` BIGINT NOT NULL AUTO_INCREMENT,
`name` VARCHAR(128) NOT NULL,
`seed` BIGINT NOT NULL,
`status` TINYINT DEFAULT 0,
PRIMARY KEY (`id`)
) ENGINE=INNODB;
CREATE TABLE `tbl_domain_layer_relation` (
`id` BIGINT NOT NULL AUTO_INCREMENT,
`parent_id` BIGINT NOT NULL,
`parent_type` VARCHAR(64) NOT NULL COMMENT 'domain/layer',
`child_id` BIGINT NOT NULL,
`child_type` VARCHAR(64) NOT NULL COMMENT 'domain/layer',
`status` TINYINT DEFAULT 0,
PRIMARY KEY (`id`)
) ENGINE=INNODB;
CREATE TABLE `tbl_experiment` (
`id` BIGINT NOT NULL AUTO_INCREMENT,
`layer_id` BIGINT NOT NULL,
`name` VARCHAR(128) NOT NULL,
`description` VARCHAR(1024) NOT NULL,
`start_time` INT NOT NULL,
`end_time` INT UNSIGNED NOT NULL,
`condition` BLOB NOT NULL,
`owner` VARCHAR(64) NOT NULL,
`status` TINYINT DEFAULT 0,
PRIMARY KEY (`id`)
) ENGINE=INNODB;
CREATE TABLE `tbl_group` (
`id` BIGINT NOT NULL AUTO_INCREMENT,
`experiment_id` BIGINT NOT NULL,
`uniq_flag` VARCHAR(256) NOT NULL,
`status` TINYINT DEFAULT 0,
PRIMARY KEY (`id`)
) ENGINE=INNODB;
Я хочу узнать о преимуществах добавления условия к домену или недостатке моей модели.