加入收藏 | 设为首页 | 会员中心 | 我要投稿 李大同 (https://www.lidatong.com.cn/)- 科技、建站、经验、云计算、5G、大数据,站长网!
当前位置: 首页 > 百科 > 正文

11.读书笔记收获不止Oracle之 表设计之分区使用

发布时间:2020-12-12 14:17:08 所属栏目:百科 来源:网络整理
导读:11.读书笔记收获不止Oracle之 表设计之分区使用 1分区表最实用的特性 1.1高效的分区消除 分区表的最大意义在于,可以有效的做到分区消除。 不过分区数过都,调用时会带来开销的。 1.2强大的分区操作 Delete无法释放空间,而truncate却有效地释放了空间。Trun

11.读书笔记收获不止Oracle之 表设计之分区使用

1分区表最实用的特性

1.1高效的分区消除

分区表的最大意义在于,可以有效的做到分区消除。

不过分区数过都,调用时会带来开销的。

1.2强大的分区操作

Delete无法释放空间,而truncate却有效地释放了空间。Truncate往往不能轻易使用,因为DELETE往往是针对某些条件的局部记录删除,而TRUNCATE显然不能带上条件,无法做到局部删除。

ORACLE可以实现TRUNCATE某个分区

此外,ORACLE提供了一个非常棒的工具,就是分区交换,可以实现普通表和分区表的某个分区之间数据的相互交换,他们之间的交换非常快,基本在瞬间可以完成。两张表的字段必须是完全一样的。

此外还可以进行分区切割,将一个较大的分区切割成小的分区。

还有分区合并分区增删操作。

2.关于分区索引

分区索引分成两类,一类是全局索引,另一类是局部索引,其中全局索引和普通的建索引方式无异。局部索引需要增加LOCAL关键字。局部索引是针对各个分区所建的索引。

3.分区表之陷阱

3.1索引失效

查看索引状态

SQL>select index_name,status from user_indexeswhere index_name in (….);

Sql>selectindex_name,partition_name,status from user_ind_partitions where index_name=’…’;

当TRUNCATE 分区后,全局索引失效。

使用参数update global indexes关键字可以避免全局索引失效。

分区表设计要考虑在语句中有效用到分区条件,有无分区条件差别巨大。

(编辑:李大同)

【声明】本站内容均来自网络,其相关言论仅代表作者个人观点,不代表本站立场。若无意侵犯到您的权利,请及时与联系站长删除相关内容!

    推荐文章
      热点阅读