`
maosheng
  • 浏览: 565404 次
  • 性别: Icon_minigender_1
  • 来自: 北京
社区版块
存档分类
最新评论

Oracle分区技术介绍

阅读更多
Oracle的分区技术基本原理
分而治之:
Oracle分区表简单而言就是将一张大表按一定规则划分为物理上的很多小表,而逻辑上仍然维持为一张大表。因此,分区表技术对应用是透明的,即对应用无需进行任何改动,就可从原来访问非分区表改为直接访问分区表。



分区概述:
大数据对象 (表, 索引)被分成小物理段
当分区表建立时,记录基于分区字段值被存储到相应分区。
分区字段值可以修改。(row movement enabled)
分区可以存储在不同的表空间
分区可以有不同的物理存储参数
分区支持IOT表,对象表,LOB字段,varrays等

分区技术的效益和目标:
1)性能
Select和DML操作只访问指定分区
并行DML操作
Partition-wise Join
2)可管理性:
数据删除,数据备份
历史数据清除
提高备份性能
指定分区的数据维护操作
3)可用性
将故障局限在分区中
缩短恢复时间
4)分区目标优先级
高性能 –>数据维护能力->实施难度 –> 高可用性(故障屏蔽能力)

分区方法:
范围   --- 8
Hash  --- 8i
列表   --- 9i
组合   --- 8i


范围分区例:



范围分区特点:
最早、最经典的分区算法
Range分区通过对分区字段值的范围进行分区
Range分区特别适合于按时间周期进行数据的存储。日、周、月、年等。
数据管理能力强
   数据迁移
   数据备份
   数据交换
范围分区的数据可能不均匀
范围分区与记录值相关,实施难度和可维护性相对较差

Hash分区例:



Hash分区特点:
基于分区字段的HASH值,自动将记录插入到指定分区。
分区数一般是2的幂
易于实施
总体性能最佳
适合于静态数据
HASH分区适合于数据的均匀存储
HASH分区特别适合于PDML和partition-wise joins。
支持 (hash) local indexes
9i 不支持 (hash) global indexes
10g 支持(hash) global indexes HASH分区
数据管理能力弱
HASH分区对数据值无法控制

列表分区例:



列表分区特点:
List分区通过对分区字段的离散值进行分区。
List分区是不排序的,而且分区之间没有关联关系
List分区适合于对数据离散值进行控制。
List分区只支持单个字段。
List分区具有与范围分区相似的优缺点
   数据管理能力强
   List分区的数据可能不均匀
   List分区与记录值相关,实施难度和可维护性相对较差

复合分区例:



复合分区特点:
Oracle支持的Composite分区:
   Range-Hash,Range-List
既适合于历史数据,又适合于数据均匀分布
与范围分区一样提供高可用性和管理性
更好的PDML和partition-wise joins性能
实现粒度更细的操作
支持复合 local indexes
不支持复合composite global indexes

分区表的管理功能:
分区的增加(ADD)
分区的删除(DROP)
分区的合并(MERGE)
分区的清空(TRUNCATE)
分区的交换(EXCHANGE)
分区的压缩(COALESE)
分区的移动(MOVE)
分区的分离(SPLIT)
修改分区的Default  Attribute
分区的更名(RENAME)

分区索引:
分区表索引的分类:
    Local Prefixed index
   Local Non-prefiexed index
   Global Prefixed index
   Non Partition Index
Global索引的分区不同与表分区
Local索引的分区与表分区相同
An index is prefixed if it is partitioned on a left prefix of the index columns.
分区表上的非分区索引等同于Global索引
Global索引必须是范围分区 --- 9i之前
Global索引可以是HASH分区 -- 10g新特性
Global索引不支持Bitmap索引
Unique索引必须是prefixed,或者包含分区字段
Local索引(non-prefixed, non-unique)可以不包含分区字段

分区索引举例:



分区表索引的使用:
1)OLTP系统中的建议
    Global和unique local index性能优于nonunique local index
   Local index提供了更好的可用性
2)数据仓库系统中的建议
   Local index更适合于数据装载和分区维护
   在大量数据统计时,能充分利用Local index并行查询能力
3)在性能、高可用性和可管理性之间进行平衡

分区索引选择策略:



分区索引的管理功能:
分区索引的删除(DROP)
分区索引的修改(MODIFY)
分区索引Default Attribute的修改
分区索引的重建(REBUILD)
分区索引的更名(RENAME)
分区索引的分离(SPLIT)
分区索引的Unusable
  • 大小: 26.8 KB
  • 大小: 42.7 KB
  • 大小: 28.3 KB
  • 大小: 50.6 KB
  • 大小: 20.4 KB
  • 大小: 48.5 KB
  • 大小: 36.9 KB
  • 大小: 12.2 KB
分享到:
评论

相关推荐

    oracle分区技术-大批量数据操作

    简单讲解了oracle分区技术-大批量数据操作

    Oracle分区表详解

    Oracle 的分区技术是一种用于管理和优化超大型表和索引的有效手段。通过将一个大型的表或者索引分割成多个较小且可管理的部分,分区技术能够显著提升数据库的性能、可用性和可维护性。 ##### 分区的作用: 1. **...

    oracle分区技术-大批量数据操作.ppt

    oracle分区技术-大批量数据操作,优化处理,大数据量的处理

    oracle 分区技术-大批量数据操作

    oracle 分区技术-大批量数据操作 大数据对象 (表, 索引)被分成小物理段 当分区表建立时,记录基于分区字段值被存储到相应分区。 分区字段值可以修改。(row movement enabled) 分区可以存储在不同的表空间 分区可以...

    Oracle分区技术研究及实现.pdf

    本文对Oracle分区技术的概念、表分区、索引分区和分区策略进行了详细的介绍,并提供了实际应用示例。 1. 分区技术的定义 分区技术是将一张表分离到多个不同的表空间上,以解决大型表的使用和维护问题。分区技术...

    oracle分区技术使用文档

    Oracle提供了分区技术以支持VLDB(Very Large DataBase)。将数据分散到各个分区中,减少了数据损坏的可能性;可以对单独的分区进行备份和恢复;可以将分区映射到不同的物理磁盘上,来分散IO ;提高可管理性、可用性和...

    Oracle分区技术在LIS中的应用研究.pdf

    "Oracle分区技术在LIS中的应用研究" Oracle 分区技术是指将大型表拆分成多个较小的表,以提高数据库的性能和可维护性。在 Hospital Information System(LIS)中, Oracle 分区技术可以显著提高读写性能和可维护性...

    ORACLE分区

    根据提供的文件信息,本文将详细解释Oracle分区技术及其在解决UNDOTBS01.DBF文件过大问题中的应用方法,并进一步探讨Oracle分区的不同类型及其应用场景。 ### Oracle 分区概述 Oracle分区是一种将大表或索引分割成...

    Oracle分区表用法

    Oracle分区表是一种高级的数据库管理技术,它将大型表的数据分散存储在不同的物理区域,以提升查询效率和系统的整体性能。本文将详细介绍分区表的概念、作用、优缺点,以及各种类型的分区表及其创建方法。 1. **表...

    Oracle分区技术.pdf

    Oracle 分区技术.pdf Oracle 分区技术是 Oracle 数据库中的一种强大功能,自 1997 年的 Oracle 8.0 中首次引入。它可以提高应用程序的性能、可管理性和可用性。Oracle 数据库 11g 中引入了第 8 代分区,继续提供...

    Oracle分区表培训

    Oracle分区表是数据库管理系统Oracle中的一个高级特性,用于将大表分成较小、更易管理的部分,从而提高查询性能,优化存储管理和数据维护。在大型企业级应用中,尤其是在处理大量数据时,分区表是不可或缺的技术手段...

    oracle分区技术

    orcale分区技术,分区技术的目标和效益

    Oracle 分区表 分区索引

    Oracle分区技术提供了强大的工具来管理和优化大型表和索引。通过合理选择分区策略和正确使用分区管理功能,可以显著提高数据库性能并降低管理复杂性。在实际应用中,应根据具体的业务需求和技术环境灵活运用这些分区...

    oracle分区技术-大批量数据操作PPT课件.ppt

    Oracle 分区技术概述 Oracle 分区技术是 Oracle 数据库中的一种高级技术,用于解决大批量数据操作问题。该技术可以将大型表或索引分割成小的、独立的物理段,以提高数据的管理和查询效率。 分区技术的优点包括: ...

    Oracle分区表和分区索引在VLDB中的研究.pdf

    "Oracle分区表和分区索引在VLDB中的研究" 本文研究了Oracle分区表和分区索引在VLDB(Very Large Databases)中的应用。分区表和分区索引是数据库管理中的关键技术之一,是VLDB中一个重要的性能提升机制。通过分析一...

    Oracle大表分区的技术

    在Oracle数据库系统中,分区技术允许将一个大表分解为较小、更易管理的部分,每个部分称为一个分区。这样做有多种好处,包括优化查询速度、改善I/O性能、简化数据管理和备份恢复等。 一、分区类型 1. **范围分区**...

    ORACLE分区与索引

    Oracle 分区与索引是数据库管理系统中用于优化大数据查询的关键技术。Oracle 分区是一种将大表和索引分成可管理的小部分,以提高查询效率、维护性和可用性。这种技术适用于处理海量数据,通过将数据分散到不同的存储...

Global site tag (gtag.js) - Google Analytics