【DM8分区表的创建和管理】

1分区表

在许多中大型的企业的数据库应用中,要处理的数据量可能会达到 TB
级,对于数据量大的表执行全表扫描或者 DML 操作时,效率是非常低的。
为了提高数据库在大数据量读写操作和查询时的效率,达梦数据库提供了对
表和索引进行分区的技术,把表和索引等数据库对象中的数据分割成小的单位,
分别存放在一个个单独的段中,用户对表的访问转化为对较小段的访问,以改善
大型应用系统的性能。

1.1范围分区表

先创建多个不同的表空间
在这里插入图片描述
查询创建成功
select NAME,TOTAL_SIZE from v$tablespace;
在这里插入图片描述
创建范围分区表
在这里插入图片描述
查看确认刚刚创建表的类型显示为分区表
select table_name,PARTITIONED from dba_tables where table_name=‘R_CTIY’;
在这里插入图片描述
对分区表插入数据
在这里插入图片描述

查看分区表的分区,显示为4个分区
select table_name,partition_name from dba_tab_partitions where
table_name=‘R_CTIY’;
在这里插入图片描述
查询分区最高值
Select DBA_TAB_PARTITIONS.PARTITION_NAME,DBA_TAB_PARTITIONS.HIGH_VALUE from SYS.DBA_TAB_PARTITIONS where DBA_TAB_PARTITIONS.TABLE_NAME = ‘R_CTIY’;
在这里插入图片描述
查询各个分区中的记录数
在这里插入图片描述
可以看到每个分区都只有1条数据

插入大于最大限制的值则会报错
在这里插入图片描述
新增分区并插入数据
在这里插入图片描述
在这里插入图片描述

分区最大不设置限制后,多大都可以插入
在这里插入图片描述
在这里插入图片描述

1.2列表分区表

列表分区按列上面的值进行分区,一般用于区号,城市,国别,分散较小的数值。
在这里插入图片描述
创建时候,也要有默认分区
在这里插入图片描述
在这里插入图片描述
在这里插入图片描述
查询各个分区中的记录数
在这里插入图片描述
因为没插入深圳相关的数据,所以p4为空
查看分区表的分区,显示为4个分区
在这里插入图片描述
加默认分区
在这里插入图片描述
在这里插入图片描述

可以看到数据成功插到p4了
在这里插入图片描述
注:列表分区表也可以设置分配在不同表空间里
在这里插入图片描述

1.3哈希分区表

如果表中的列值不满足范围分区和列表分区,那么就可以考虑使用哈希分区。数据库就会根据分区键的散列值将行映射到分区。是数据能均匀的分布在各个分区
在这里插入图片描述

建表插数据
在这里插入图片描述
查看数据分布情况
在这里插入图片描述
如果不需指定分区表名,可以通过指定哈希分区个数来建立哈希分区表。
在这里插入图片描述
PARTITIONS 后的数字表示哈希分区的分区数,STORE IN 子句中指定了哈希
分区依次使用的表空间。
例如:在这里插入图片描述
不指定表空间则默认分给了MAIN

1.4多级分区表

如果数据表经过一次分区后,单个子分区还是很大,就可以考虑对子分区进行再分区。如果建一个LIST-RANG分区
在这里插入图片描述
建表插数据
在这里插入图片描述
可以看到有4个子模板
在这里插入图片描述
插入数据
在这里插入图片描述
在这里插入图片描述
数据已按地区分配
在这里插入图片描述
社区地址:https://eco.dameng.com

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值