检测到您已登录华为云国际站账号,为了您更好的体验,建议您访问国际站服务网站 https://www.huaweicloud.com/intl/zh-cn
不再显示此消息
功能介绍 TaurusDB分区表完全兼容社区MySQL的语法和功能。同时,TaurusDB分区表相对于社区MySQL进行了功能增强,支持丰富的分区表类型及组合,使您可以更加便携、简单和高效的使用分区表。 TaurusDB兼容的社区MySQL分区表类型如下: HASH KEY RANGE
如何扩总分区? 增加基准带宽/代理数量,可以扩大总分区数。 在Kafka控制台的实例所在行,单击“更多 > 变更规格”,进入变更规格页面,根据实际情况扩容基准带宽/代理数量。具体操作请参考变更Kafka实例规格。 父主题: Topic和分区问题
列表分区 列表分区(List Partition)能够通过在每个分区的描述中为分区键指定离散值列表来显式控制行如何映射到分区。列表分区的优势在于可以以枚举分区值方式对数据进行分区,可以对无序和不相关的数据集进行分组和组织。对于未定义在列表中的分区键值,可以使用默认分区(DEFAU
分割后的新分区,可以与源分区名字相同,比如将分区p1分割为p1,p2。但数据库不会将分割前后相同名的分区视为同一个分区,这会影响分割期间对源分区p1查询,具体参考DQL/DML-DDL并发。 对范围分区表分割分区 对间隔分区表分割分区 对列表分区表分割分区 对*-RANGE二级分区表分割二级分区
分割分区 用户可以使用分割分区的命令来将一个分区分割为两个或多个新分区。当分区数据太大,或者需要对有MAXVALUE的范围分区/DEFAULT的列表分区新增分区时,可以考虑执行该操作。分割分区可以指定分割点将一个分区分割为两个新分区,也可以不指定分割点将一个分区分割为多个新分区。分
old的值,同时还需要预留部分空间以供其他功能使用。 新增分区不能作用于HASH分区上。 向范围分区表新增分区 向间隔分区表新增分区 向列表分区表新增分区 向二级分区表新增一级分区 向二级分区表新增二级分区 父主题: 分区表运维管理
分区(分区子表、子分区) 分区表中实际保存数据的表,对应的entry通常保存在pg_partition中,各个子分区的parentid作为外键关联其分区母表在pg_class表中的oid列。 示例1:t1_hash为一个分区表: gaussdb=# CREATE TABLE t1_hash
分区(分区子表、子分区) 分区表中实际保存数据的表,对应的entry通常保存在pg_partition中,各个子分区的parentid作为外键关联其分区母表在pg_class表中的oid列。 示例1:t1_hash为一个一级分区表: gaussdb=# CREATE TABLE t1_hash
对Local索引重命名索引分区 使用ALTER INDEX RENAME PARTITION可以对Local索引重命名索引分区。具体方法与一级分区表重命名分区相同。 父主题: 重命名分区
对二级分区表重命名一级分区 使用ALTER TABLE RENAME PARTITION可以对二级分区表重命名一级分区。具体方法与一级分区表相同。 父主题: 重命名分区
对*-LIST二级分区表分割二级分区 使用ALTER TABLE SPLIT SUBPARTITION可以对*-LIST二级分区表分割二级分区。 例如,假设*-LIST二级分区表hash_list_sales的二级分区product2_channel2的定义范围为DEFAULT。
分区剪枝 分区表静态剪枝 分区表动态剪枝 父主题: 分区表查询优化
对间隔分区表分割分区 对间隔分区表分割分区的命令与范围分区表相同。 对间隔分区表的间隔分区完成分割分区操作之后,源分区之前的间隔分区会变成范围分区。 例如,创建如下间隔分区表,并插入数据新增三个分区sys_p1、sys_p2、sys_p3。 CREATE TABLE interval_sales
对一级分区表删除分区 使用ALTER TABLE DROP PARTITION可以删除指定分区表的任何一个分区,这个行为可以作用在范围分区表、间隔分区表、列表分区表上。 例如,通过指定分区名删除范围分区表range_sales的分区date_202005,并更新Global索引。
诉求。但分区数增加会导致系统中文件数增加,影响系统的性能,一般对于单个表而言不建议分区数超过200。 修改分区属性 分区表和分区相关的部分属性可以使用类似非分区表的ALTER-TABLE命令进行分区属性修改,常用的分区属性修改语句包括: 增加分区 删除分区 删除/清空分区数据 切割分区
TABLESPACE tb1; 当范围分区表有MAXVALUE分区时,无法新增分区。可以使用ALTER TABLE SPLIT PARTITION命令分割分区。分割分区同样适用于需要在现有分区表的前面/中间添加分区的情形,请参见对范围分区表分割分区。 父主题: 新增分区
对列表分区表分割分区 使用ALTER TABLE SPLIT PARTITION可以对列表分区表分割分区。 例如,假设列表分区表list_sales的分区channel2定义范围为('6', '7', '8', '9')。可以指定分割点('6', '7')将分区channel2分割为两个分区,并更新Global索引。
参数化路径动态剪枝 参数化路径动态剪枝支持范围如下所示: 支持分区级别:一级分区、二级分区。 支持分区类型:范围分区、间隔分区、哈希分区、列表分区。 支持算子类型:indexscan、indexonlyscan、bitmapscan。 支持表达式类型:比较表达式(<,<=,=,>=,>)、逻辑表达式。
定的数据范围,将作业拆分为多少个子作业执行。 - 按表分区抽取 从MySQL导出数据时,支持从分区表的各个分区并行抽取数据。启用该功能时,可以通过下面的“表分区”参数指定具体的MySQL表分区。 该功能不支持非分区表。 数据库用户需要具有系统视图dba_tab_partition
数据库使用规范 数据库命名规范 所有的数据库对象名称(包括库名、表名、列名等)建议以小写字母命名,每个单词之间用下划线分隔。 所有的数据库对象名称禁止使用RDS for MySQL保留关键字。 MySQL官方保留字与关键字(MySQL 8.0):https://dev.mysql