云服务器内容精选
-
二级分区表自动扩展 创建二级分区表时,可以在创建列表分区定义上指定AUTOMATIC关键字,以支持二级分区表的一级自动扩展/二级自动扩展。 创建二级分区表时,在创建一级分区定义上指定AUTOMATIC,以支持一级自动扩展。 gaussdb=# CREATE TABLE autolist_range (c1 int, c2 int) PARTITION BY LIST (c1) AUTOMATIC SUBPARTITION BY RANGE (c2) ( PARTITION p1 VALUES (1, 2, 3) ( SUBPARTITION sp11 VALUES LESS THAN (5), SUBPARTITION sp12 VALUES LESS THAN (10) ), PARTITION p2 VALUES (4, 5, 6) ( SUBPARTITION sp21 VALUES LESS THAN (5), SUBPARTITION sp22 VALUES LESS THAN (10) ) ); 当插入数据无法匹配到已有的任意一级分区时,会自动创建一个新的一级分区,新一级分区的范围定义为单key(新数据对应的新分区键值),其下面会定义一个全集的二级分区。 --一级分区键插入数据9,因为现有的一级分区p1、p2的键值中不包含9,所以自动创建一个新的一级分区sys_p1,分区定义为VALUES (9) gaussdb=# INSERT INTO autolist_range VALUES (9, 0); 这一功能与如下命令等价: gaussdb=# ALTER TABLE autolist_range ADD PARTITION sys_p1 VALUES (9); gaussdb=# INSERT INTO autolist_range VALUES (9, 0); gaussdb=# DROP TABLE autolist_range; 创建二级分区表时,在二级分区定义上指定AUTOMATIC,以支持二级自动扩展。 gaussdb=# CREATE TABLE range_autolist (c1 int, c2 int) PARTITION BY RANGE (c1) SUBPARTITION BY LIST (c2) AUTOMATIC ( PARTITION p1 VALUES LESS THAN (5) ( SUBPARTITION sp11 VALUES (1, 2, 3), SUBPARTITION sp12 VALUES (4, 5, 6) ), PARTITION p2 VALUES LESS THAN (10) ( SUBPARTITION sp21 VALUES (1, 2, 3), SUBPARTITION sp22 VALUES (4, 5, 6) ) ); 当插入数据无法匹配到已有的任意二级分区时,会在对应的一级分区下自动创建一个新的二级分区,新二级分区的范围定义为单key(新数据对应的新分区键值)。 --二级分区键插入数据0,因为现有的二级分区的键值中不包含0,所以自动创建一个新的二级分区sys_sp1,分区定义为VALUES (0) gaussdb=# INSERT INTO range_autolist VALUES (4, 0); 这一功能与如下命令等价: gaussdb=# ALTER TABLE range_autolist MODIFY PARTITION p1 ADD SUBPARTITION sys_sp1 VALUES (0); gaussdb=# INSERT INTO range_autolist VALUES (4, 0); -- 清理示例 gaussdb=# DROP TABLE range_autolist; 创建二级分区表时,在一级/二级分区定义上同时指定AUTOMATIC,表示支持一级自动扩展/二级自动扩展。 gaussdb=# CREATE TABLE autolist_autolist (c1 int, c2 int) PARTITION BY LIST (c1) AUTOMATIC SUBPARTITION BY LIST (c2) AUTOMATIC ( PARTITION p1 VALUES (1, 2, 3) ( SUBPARTITION sp11 VALUES (1, 2, 3), SUBPARTITION sp12 VALUES (4, 5, 6) ), PARTITION p2 VALUES (4, 5, 6) ( SUBPARTITION sp21 VALUES (1, 2, 3), SUBPARTITION sp22 VALUES (4, 5, 6) ) ); 当插入数据无法匹配到已有的任意一级分区时,会自动创建一个新的一级分区,新一级分区的范围定义为单key(新数据对应的新分区键值),其下面会定义一个范围定义为单key的二级分区。 --一级分区键插入数据9,因为现有的一级分区p1、p2的键值中不包含9,所以自动创建一个新的一级分区sys_p1,分区定义为VALUES (9);同时二级分区键插入数据0,因为现有的二级分区的键值中不包含0,所以会在新的一级分区sys_p1定义一个新的二级分区sys_sp1,分区定义为VALUES (0)。 gaussdb=# INSERT INTO autolist_autolist VALUES (9, 0); 这一功能与如下命令等价: gaussdb=# ALTER TABLE autolist_autolist ADD PARTITION sys_p1 VALUES (9) (SUBPARTITION sys_sp1 VALUES (0)); gaussdb=# INSERT INTO autolist_autolist VALUES (9, 0); 当插入数据无法匹配到已有的任意二级分区时,会在对应的一级分区下自动创建一个新的二级分区,新二级分区的范围定义为单key(新数据对应的新分区键值)。 --二级分区键插入数据0,因为现有的二级分区的键值中不包含0,所以自动创建二级分区sys_sp2,分区定义为VALUES (0) gaussdb=# INSERT INTO autolist_autolist VALUES (4, 0); 这一功能与如下命令等价: gaussdb=# ALTER TABLE autolist_autolist MODIFY PARTITION p2 ADD SUBPARTITION sys_sp2 VALUES (0); gaussdb=# INSERT INTO autolist_autolist VALUES (4, 0); -- 清理示例 gaussdb=# DROP TABLE autolist_autolist; 二级分区表的列表分区自动扩展行为受AUTOMATIC关键字的指定位置影响: 若在一级分区后指定了AUTOMATIC关键字,则仅支持一级分区自动扩展,不支持二级分区的自动扩展,且不能定义有一级分区键值为DEFAULT分区。 若在二级分区后指定了AUTOMATIC关键字,则仅支持二级分区自动扩展,不支持一级分区的自动扩展,且不能定义有二级分区键值为DEFAULT分区。 若在一级分区和二级分区后同时指定了AUTOMATIC关键字,则同时支持一级分区和二级分区自动扩展,一级分区键值和二级分区键值均不能定义有DEFAULT分区。 父主题: 列表分区自动扩展
更多精彩内容
CDN加速
GaussDB
文字转换成语音
免费的服务器
如何创建网站
域名网站购买
私有云桌面
云主机哪个好
域名怎么备案
手机云电脑
SSL证书申请
云点播服务器
免费OCR是什么
电脑云桌面
域名备案怎么弄
语音转文字
文字图片识别
云桌面是什么
网址安全检测
网站建设搭建
国外CDN加速
SSL免费证书申请
短信批量发送
图片OCR识别
云数据库MySQL
个人域名购买
录音转文字
扫描图片识别文字
OCR图片识别
行驶证识别
虚拟电话号码
电话呼叫中心软件
怎么制作一个网站
Email注册网站
华为VNC
图像文字识别
企业网站制作
个人网站搭建
华为云计算
免费租用云托管
云桌面云服务器
ocr文字识别免费版
HTTPS证书申请
图片文字识别转换
国外域名注册商
使用免费虚拟主机
云电脑主机多少钱
鲲鹏云手机
短信验证码平台
OCR图片文字识别
SSL证书是什么
申请企业邮箱步骤
免费的企业用邮箱
云免流搭建教程
域名价格