Oracle数据库:分区,重组,性能优化。
来源:互联网 发布:网络兼职打字员靠谱吗 编辑:程序博客网 时间:2024/05/16 19:03
Oracle数据库:分区,重组,性能优化。
为什么要考虑使用分区。原因是多方面的,可能是分区能提高数据的可用性,或者是可以减少管理员(DBA)的负担,另外在某些情况下,还可能提高性能。一旦很好地了解了使用分区的原因,接下来将介绍如何对表及其相应的索引进行分区。
分区的好处:
1.提高数据的可用性:这个特点对任何类型的系统都适用,而不论系统本质上是OLTP还是仓库系统。
2.由于从数据库中去除了大段,相应地减轻了管理的负担。在一个100GB的表上执行管理操作时(如重组来删除移植的行,或者在“净化”旧信息后回收表左边的“空白”空间),与在各个10GB的表分区上执行10次同样的操作相比,前者负担要大得多。另外,通过使用分区,可以让净化例程根本不留下空白空间,这就完全消除了重组的必要!
3.改善某些查询的性能:主要在大型仓库环境中有这个好处,通过使用分区,可以消除很大的数据区间,从而不必考虑它们,相应地根本不用访问这些数据。但这在事务性系统中并不适用,因为这种系统本身就只是访问少量的数据。
4.可以把修改分布到多个单独的分区上,从而减少大容量OLTP系统上的竞争:如果一个段遭遇激烈的竞争,可以把它分为多个段,这就可以得到一个副作用:能成比例地减少竞争。
- 出现错误时的停机时间会减少,因为恢复所需的工作量大幅减少。
- 优化器能够消除分区,这意味着许多用户可能甚至从未注意到某些数据是不可用的。
简单地说,利用分区,原先让人畏惧的操作(有时甚至是不可行的操作)会变得像在小数据库中一样容易。
查看分区及分区范围的情况 select * from sys.partitions where object_id = object_id('SecureUsbLog'); select * from sys.partition_range_values; 查看分区架构情况 select * from sys.partition_schemes; 查看某一特定分区列值属于哪个分区 select M2.$partition.Part_mediasec_func('20150325') as partition_num; 查看某一特定分区的记录 select * from SecureUsbLog where M2.$partition.Part_mediasec_func(logTime) = 3 查看分区及分区范围的情况 select * from sys.partitions where object_id = object_id('SecureUsbLog'); select * from sys.partition_range_values; 查看分区架构情况 select * from sys.partition_schemes; 查看某一特定分区列值属于哪个分区 select M2.$partition.Part_mediasec_func('20150325') as partition_num; 查看某一特定分区的记录 select * from SecureUsbLog where M2.$partition.Part_mediasec_func(logTime) = 3 查看各分区所包含的记录数 select $partition.Part_mediasec_func(logTime) as partition_num, count(*) as record_num from SecureUsbLog group by $partition.Part_mediasec_func(logTime) order by $partition.Part_mediasec_func(logTime);
阅读全文
0 0
- Oracle数据库:分区,重组,性能优化。
- 优化Oracle数据库性能
- 优化Oracle数据库性能
- 优化Oracle数据库性能
- oracle数据库性能优化
- oracle数据库性能优化
- oracle数据库性能优化
- ORACLE性能优化之表分区
- 【性能优化】ORACLE数据库性能优化概述
- Oracle数据库性能优化技术
- Oracle数据库性能优化技术
- Oracle数据库性能终极优化
- Oracle数据库性能优化技术
- Oracle数据库性能优化技术
- Oracle数据库性能的优化
- ORACLE数据库性能优化技术
- 【转】优化Oracle数据库性能
- 《Oracle数据库性能优化实务》
- Vue 创建项目
- UVA
- Spring配置过程 (二)面向切面编程AOP
- 关于 Spring 中 Autowired 注入接口的几个问题
- linux学习笔记一:在linux编写及调试c语言
- Oracle数据库:分区,重组,性能优化。
- 幂等理论与实践
- BufferedReader高效的原因
- 修改Ubuntu的aptget源为阿里源的方法
- 初学Qt:限制lineEdit文本框输入内容的方法
- 优先级问题
- ABP官方文档(五)【多租户】
- 高性能无阻塞无界队列 ConcurentLinkedQueue
- oracle 登陆解锁命令