`
blueyanghualong
  • 浏览: 222901 次
  • 性别: Icon_minigender_1
  • 来自: 杭州
社区版块
存档分类
最新评论

【转】oracle 分区概念介绍

阅读更多


 Oracle 分区功能可以提高许多应用程序的可管理性、性能与可用性。通过分区功能,可以将表、索引和索引组织表进一步细分为段,从而能够更精确地管理和访问这些数据库对象。Oracle 提供了种类繁多的分区方案以满足每种业务要求。 

  而且,因为在 SQL 语句中分区是完全透明的,所以该功能几乎可应用于任何应用程序。 

  分区功能的优势 

  分区功能通过改善可管理性、性能和可用性,从而为各式应用程序带来了极大的好处。通常,分区可以使某些查询以及维护操作的性能大大提高。此 外,分区还可以极大简化常见的管理任务。通过分区,数据库设计人员和管理员能够解决前沿应用程序带来的一些难题。分区是构建千兆字节数据系统或超高可用性 系统的关键工具。 

  分区功能的基本知识 

  分区功能能够将表、索引或索引组织表进一步细分为段。这些数据库对象的段叫做分区。每个分区有自己的名称,还可以选择自己的存储特性。从数据 库管理员的角度来看,一个分区后的对象具有多个段,这些段既可进行集体管理,也可单独管理。这就使数据库管理员在管理分区后的对象时有相当大的灵活性。但 是,从应用程序的角度来看,分区后的表与非分区表完全相同,使用 SQL DML 命令访问分区后的表时,无需任何修改。 

  表的分区是通过“分区键”来实现的,分区键指的是一些列,这些列决定了某一行所在的分区。Oracle 数据库 10g 提供了六项技术用于对表进行分区: 

  范围分区 

  每个分区都由一个分区键值范围指定(对于一个以日期列作为分区键的表,“2005 年 1 月”分区包含分区键值为从“2005 年 1 月 1 日”到“2005 年 1 月 31 日”的行)。 

  列表分区 

  每个分区都由一个分区键值列表指定(对于一个地区列作为分区键的表,“北美”分区可能包含值“加拿大”“美国”和“墨西哥”)。 

  散列分区 

  将散列算法用于分区键来确定指定行所在的分区。 

  组合范围散列分区 

  范围和散列分区技术的组合,通过该组合,首先对表进行范围分区,然后针对每个单独的范围分区再使用散列分区技术进一步细分。索引组织表只能进行范围分区。 

  组合范围列表分区 

  范围和列表分区技术的组合,通过该组合,首先对表进行范围分区,然后针对每个单独的范围分区再使用列表分区技术进一步细分。索引组织表可以按范围、列表或散列进行分区。 

  Oracle 数据库 10g 还提供了三种类型的分区索引: 

  本地索引 

  本地索引是其分区方式与其所在基础表的分区方式一模一样的索引。本地索引的每个分区仅对应于其所在基础表的一个分区。 

  全局分区索引 

  全局分区索引是使用不同于其所在表的分区键进行分区的索引,其所在表可以是分区表或非分区表。全局分区的索引可以使用范围或散列分区进行分 区。例如,某个表可以按月份进行范围分区,因此具有十二个分区,而该表上的索引则可以使用不同的分区键进行范围分区,从而具有不同的分区数量。 

  全局非分区索引 
   
 全局非分区索引基本上和非分区表的索引一样。索引结构是不分区的。 
   
  Oracle 提供了一系列丰富的技术,可用于对表、索引和索引组织表进行分区,因此可以针对任何业务环境中的任何应用程序进行最佳的分区 Oracle 还提供一套完整的 SQL 命令,用于管理分区表。其中包括添加新分区、删除分区、分拆分区以及合并分区的命令。 

  用分区功能提高可管理性 

  通过 Oracle 分区功能,可将表和索引分成更多、更小的可管理单元,从而使数据库管理员能以“化整为零,个个击破”的方式管理数据。 

  使用分区功能,维护操作可集中于表的特定部分。例如,数据库管理员可以只对表的一部分做备份,而不必对整个表做备份。对整个数据库对象的维护操作,可以在每个分区的基础上进行,从而将维护工作分解成更容易管理的小块。 

  利用分区功能提高可管理性的一个典型用法是支持数据仓库中的‘滚动视窗’加载进程。假设数据库管理员每周向表中加载新数据。可以对该表进行范 围分区,使每个分区包含一周的数据。这样加载进程只是简单地添加新的分区。添加一个分区的操作比修改整个表效率高很多,因为 DBA 不需要修改任何其他分区。 

  用分区功能提高性能 

  由于限制了所检查或操作的数据数量,同时支持并行任务执行,Oracle 分区功能实现了性能上增益。这些特性包括: 

  分区修整 

  分区修整是用分区功能提高性能的最简单最有价值的手段。分区修整常常能够将查询性能提高几个数量级。例如,假设某个应用程序包含一个存储订单 历史记录的 Orders 表,并且此表已按周分区。查询一周的订单只需访问该订单表的一个分区。如果该订单表包含两年的历史记录,这个查询只需要访问一个分区而不是一百零四个。该 查询的执行速度因为分区修整而有可能快一百倍。分区修整能与所有其他 Oracle 性能特性协作。Oracle 能将分区修整功能与任何索引技术、联接技术或并行访问方法结合使用。 

  分区智能联接 

  分区功能可以通过称为分区智能联接的技术提高多表联接的性能。当两个表要联接在一起,而且每个表都用联接键来分区时,就可以使用分区智能联 接。分区智能联接将大型联接分解成较小的发生在各个分区间的联接,从而用较少的时间完成全部联接。这就给串行和并行的执行都能带来显著的性能改善。 

  用分区功能提高可用性 
  
  分区的数据库对象具有分区独立性。该分区独立性特点可能是高可用性战略的一个重要部分,例如,如果分区表的一个分区不能用,但该表的所有其他 分区仍然保持在线并可用。那么这个应用可以继续针对该分区表执行查询和事务处理,只要不是访问不可用的分区,数据库操作仍然能够成功运行。 

  数据库管理员可以指定各分区存放在不同的表空间里,从而让管理员隔离其它表分区针对单个分区进行备份与恢复操作。还有,分区功能可以减少计划停机时间。由于分区功能改善了性能,使数据库管理员能用相对较少的时间完成大型数据库对象的维护工作。 

  未来发展方向 
  
  自从引入分区技术以来,Oracle 公司在每次推出重要版本时都会增加新的分区方法。Oracle8 引入了范围分区功能,Oracle8i 引入了散列和组合范围散列分区功能,Oracle9i 引入了列表分区功能。在最新版本 Oracle 数据库 10g 中,则增强了用于索引组织表和全局分区索引的分区策略,并且扩展了其用于所有分区维护操作的并发索引维护功能。Oracle 公司致力于不断完善分区技术,确保满足所有的业务需求。 

  结论 

  具有 Oracle 分区功能的 Oracle 数据库 10g 可以显著增强几乎任何数据库应用程序的可管理性、性能和可用性。分区功能可用于前沿应用程序,分区功能确实能够成为保障这些应用程序成功的关键技术成分。 同时,分区功能也可用于较为普通的数据库应用,来简化这些应用的管理工作,降低管理成本。

 

分享到:
评论

相关推荐

    ORACLE分区表的概念及操作

    1.表空间及分区表的概念 2.表分区的具体作用 3.表分区的优缺点 4.表分区的几种类型及操作方法 5.对表分区的维护性操作

    Oracle表分区详解(优缺点)

    Oracle 表分区技术详解: 1.表空间及分区表的概念 2.表分区的具体作用 3.表分区的优缺点 4.表分区的几种类型及操作方法 5.对表分区的维护性操作.

    ORACLE表分区分区概述

    ORACLE表分区分区概述 为了简化数据库大表的管理,例如在数据仓库中一般都是TB级的数量级.ORACLE8以后推出了分区选项.分区将表分离在若于不同的表空间上,用分而治之的方法来支撑元限膨胀的大表,组大表在物理一级的...

    详细讲解Oracle表分区相关概念及优点

    Oracle 8i以后推出了分区选项。分区将表分离在若于不同的表空间上,用分而治之的方法来支撑元限膨胀的大表,组大表在物理一级的可管理性.将大表分割成较小的分区可以改善表的维护、备份、恢复、事务及查询性能。

    ORACLE-分区表的用法

    此文从以下几个方面来整理关于分区表的概念及操作:  1.表空间及分区表的概念  2.表分区的具体作用  3.表分区的优缺点  4.表分区的几种类型及操作方法  5.对表分区的维护性操作.

    Oracle Partitioning – 数据分区技术介绍

    • 数据分区概念 • 数据分区的好处 • Oracle 数据分区技术的发展 • Oracle11g数据分区的增强功能

    Oracle 分区索引介绍和实例演示

    1、分区索引的相关概念 a、分区索引的几种方式:表被分区而索引未被分区;表未被分区,而索引被分区;表和索引都被分区 b、分区索引可以分为本地分区索引以及全局分区索引 本地分区索引:  本地分区索引信息的存放...

    oracle表空间表分区详解及oracle表分区查询使用方法

    此文从以下几个方面来整理关于分区表的概念及操作:1.表空间及分区表的概念2.表分区的具体作用3.表分区的优缺点4.表分区的几种类型及操作方法5.对表分区的维护性操作.(1.) 表空间及...表分区的具体作用Oracle的表分区

    oracle建分区表

    此文从以下几个方面来整理关于分区表的概念及操作: 1.表空间及分区表的概念 2.表分区的具体作用 3.表分区的优缺点 4.表分区的几种类型及操作方法 5.对表分区的维护性操作.

    Oracle甲骨文原厂分区表培训教程-详细讲解

    此外,该教程还包含了丰富的图文资料和视频教程,让读者可以更加直观地了解分区表的相关概念和操作方法。总之,如果你是一位Oracle数据库的爱好者或者从事相关工作,这份教程将会是你不可或缺的学习资料之一。

    oracle concepts概念手册中英文版(10gR2)

    Chapter 18, Partitioned Tables and Indexes 第 18 章,分区表及分区索引 Chapter 19, Content Management 第 19 章,内容管理 Chapter 20, Database Security 第 20 章,数据库安全 Chapter 21, Data Integrity...

    Oracle课件.pdf

    6.1表空间及分区表的概念 6.2表分区的具体作用 6.3.表分区的优缺点 6.4表分区的几种类型及操作方法 6.5有关表分区的一些维护性操作 第5章 PL/SQL程序设计 1. PL/SQL简介 2. PL/SQL基础 2.1声明 2.2条件...

    oracle概念手册中英文对照版

    Chapter 18, Partitioned Tables and Indexes 第 18 章,分区表及分区索引 Chapter 19, Content Management 第 19 章,内容管理 Chapter 20, Database Security 第 20 章,数据库安全 Chapter 21, Data Integrity 第...

    oracle database 11g 高清完整中文版part2

     第18章 分区 . 第19章 oracle 基本安全 第ⅲ部分 高 级 主 题  第20章 高级安全性——虚拟专用数据库  第21章 高级安全性:透明数据加密  第22章 使用表空间  第23章 用sql*loader 加载数据  第24章 使用...

    详解oracle的分表之表分区的具体使用和示例

    此文从以下几个方面来整理关于分区表的概念及操作:  1.表空间及分区表的概念  2.表分区的具体作用  3.表分区的优缺点  4.表分区的几种类型及操作方法  5.对表分区的维护性操作. (1.) 表空间及分区表的概念 表...

    Oracle数据库学习指南

    7. Oracle for NT系统实用工具介绍 8. Oracle 和 mysql 的一些简单命令对比参照 9. Oracle8i和Microsoft SQL Server7_0比较 10. Oracle8的不安全因素及几点说明 11. Oracle常见错误代码 12. Oracle常用Script ...

    Oracle_11gR2_概念 oracle白皮书 concept

    第 1 章 Oracle 数据库简介 第 2 章 表和表簇 第 3 章 索引和索引组织表 第 4 章 分区、 视图和其它模式对象 第 5 章 数据完整性 第 6 章 数据字典和动态性能视图

    Oracle PPT

    学习Oracle的入门课件 Oracle 安装与卸载 Oracle 中的 OOP 概念 Oracle 入门 SQL 查询和 SQL 函数 锁和表分区

    北大青鸟Oracle教程集

    PPT目录: 第一章 Oracle入门;...第五章 Oracle 中的 OOP 概念; 第六章 PL/SQL 简介; 第七章 异常和游标管理; 第八章 子程序和程序包; 第九章 数据库触发器和内置程序包; 第十章 集合和成员函数。

Global site tag (gtag.js) - Google Analytics