我必须像这样制作一个有 6-7 个分区的表 -
块引用
CREATE TABLE test_cdr
( `id` BIGINT(20) NOT NULL AUTO_INCREMENT,
`dataPacketDownLink` BIGINT(20) DEFAULT NULL,
`dataPacketUpLink` BIGINT(20) DEFAULT NULL,
`dataPlanEndTime` DATETIME DEFAULT NULL,
`dataPlanStartTime` DATETIME DEFAULT NULL,
`dataVolumeDownLink` BIGINT(20) DEFAULT NULL,
`dataVolumeUpLink` BIGINT(20) DEFAULT NULL,
`dataplan` VARCHAR(255) DEFAULT NULL,
`dataplanType` VARCHAR(255) DEFAULT NULL,
`createdOn` DATETIME DEFAULT NULL,
`deviceName` VARCHAR(500) DEFAULT NULL,
`duration` INT(11) NOT NULL,
`effectiveDuration` INT(11) NOT NULL,
`hour` TINYINT(4) DEFAULT NULL,
`eventDate` DATETIME DEFAULT NULL,
`msisdn` BIGINT(20) DEFAULT NULL,
`quarter` TINYINT(4) DEFAULT NULL,
`validDays` INT(11) DEFAULT NULL,
`dataLeft` BIGINT(20) DEFAULT NULL,
`completedOn` DATETIME DEFAULT NULL,
`evedate` DATE DEFAULT NULL,
PRIMARY KEY (`id`,`evedate`),
KEY `evedate_index` (`evedate`),
KEY `hour_index` (`hour`),
KEY `msisdn_index` (`msisdn`) )
ENGINE=MYISAM
PARTITION BY RANGE COLUMNS(evedate)(
PARTITION p01 VALUES LESS THAN '2013-9-07'),
PARTITION p02 VALUES LESS THAN ('2013-09-10'),
PARTITION p03 VALUES LESS THAN '2013-09-18'),
PARTITION p04 VALUES LESS THAN ('2013-09-23'),
PARTITION p05 VALUES LESS HAN ('2013-09-25'),
PARTITION p06 VALUES LESS THAN ('2013-09-27'),
PARTITION p07 VALUES ESS THAN ('2013-10-01'),
PARTITION p08 VALUES LESS THAN (MAXVALUE));
在这张表(有 40+ 百万行)上创建这个索引是否很好,因为我们将在每 15 分钟内插入 30,000 条记录。但我也不想伤害插入操作?快速查询也需要索引。
所以请告诉我一些中间解决方案。
谢谢你。