在DRDS上申请执行分库分表的DDL需要4步:
1、在IDB上提建表申请单
2、主管审批,DBA审批
3、发按日期分表的DDL邮件给DBA(指定日期范围)
4、DBA分表建好后,通知刈刀,在DRDS中配置分库分表策略
分库分表DDL的IDB申请流程(第1、2步)同单库单表,这篇主要介绍第3、4步骤
在IDB上提交建表申请后,即可着手发邮件给DBA。
发邮件给DBA是让DBA跑脚本批量建按日期的分表。需要干2件事情
1、指定所用的DRDS的库:
高德地图amap aos相关的业务:use autonavi_aos_da_[00-24];
开放平台相关的业务:use autonavi_api_da_[00-24];
[00-24]表示24个drds库
2、在具体DDL语句中,指定按日期分表的范围:
在create table tableneame后添加_yyyy[mm-mm][dd-dd],
yyyy表示年,[mm-mm]表示月的范围,[dd-dd]表示每个月的日期的范围。如:
CREATE TABLE s_amap_aos_cube_naviod_poi_2015[01-12][01-31]
表示新建的表按日期分表的范围为2015年每天
如果新建表分表的范围需要跨年,责需要每年的分开各写一条。如:
需要建2015年全年2016年全年的分表:
需要两个建表语句:第一个建表语句指定2015年的时间范围,第二个指定2016年:
CREATE TABLE s_amap_aos_cube_naviod_poi_2015[01-12][01-31] .......
CREATE TABLE s_amap_aos_cube_naviod_poi_2016[01-12][01-31] .......
一个完整的建表邮件范例,如下:
春植,您好:
现需要在autonavi_ aos _da 库中,新建2张表。麻烦您操作~ 感谢!
use autonavi_aos_da_[00-24];
CREATE TABLE `s_amap_aos_cube_naviod_2015[01-12][01-31]` (
`id` BIGINT(20) UNSIGNED NOT NULL AUTO_INCREMENT,
`d_datebuf` DATE DEFAULT NULL COMMENT '日期',
`d_poiid` VARCHAR(20) DEFAULT NULL COMMENT 'POI运营编号',
`d_poiname` VARCHAR(150) DEFAULT NULL COMMENT 'POI名称',
`d_poitype` VARCHAR(255) DEFAULT NULL