Oracle的临时表、分区表、分区索引_第1页
Oracle的临时表、分区表、分区索引_第2页
Oracle的临时表、分区表、分区索引_第3页
Oracle的临时表、分区表、分区索引_第4页
Oracle的临时表、分区表、分区索引_第5页
已阅读5页,还剩10页未读 继续免费阅读

下载本文档

版权说明:本文档由用户提供并上传,收益归属内容提供方,若内容存在侵权,请进行举报或认领

文档简介

甲骨文临时表一、表格类型1:永久表:非私有数据,需要DML锁。2.临时表:临时表的定义对所有会话都是可见的。处理事务或会话中存在的私有数据不需要DML锁。临时表的DML语句不生成重做日志。临时表占用临时表空间。临时表的数据被自动删除,建立在临时表上的索引是临时的。二。临时表的类型1:交易临时表:交易过程中存在数据,交易结束后自动删除。2.会话类型临时表:数据存在于会话期间,并在会话结束后自动删除。三。对临时表的限制1:不能分区,不能是索引组织表或群集。2:无法指定临时表的外键约束。3:不支持并行DML或并行查询。4:不支持分布式事务处理。5:不能指定段存储语句、嵌套表存储语句或并行语句四.建立临时表的语法1.建立关系表2.创建对象表3.平行陈述甲骨文分区表首先,什么是分区表Oracle可以将一个大型表或索引分成几个更小、更易管理的部分,每个部分称为一个分区,这样的表称为一个分区表。与完整表或完整表索引相比,SQL语句使用分区表来提供更好的数据访问和处理。下图是按周构建的分区表示例。二、分区表的使用限制1:无法拆分属于群集的表。2:不能拆分包含长或长原始列的表。不能对3:索引组织表IOT进行范围分区。* *使用基于规则的优化器时,您将受益于分区表!三、划分方法1:范围分区(更适合历史数据库)-来自唯一可用分区类型的Oracle 8根据列列表的范围拆分表;如果是索引组织表,列列表必须是索引组织表主键的子集。对键列进行分区的限制:列列表中的列可以是除了ROWID、LONG、LOB或带时区的时间戳之外的任何内置数据类型。关键字MAXVALUE高于任何值(包括空值)。2:哈希分区-可用于- Oracle8i的分区类型指定该表由哈希算法进行分区,分区数应为2的幂。1)单个散列分区及其局限性使用子名称通过名称指定单个分区,并且可以省略分区名称。此时唯一可以指定的子句是表空间。2)根据散列分区的数量(散列分区数量)您可以指定分区的数量,此时由甲骨文指定分区名SYS_Pn。STORE IN子句指定由分区分布的表空间的名称。表空间的数量不一定等于分区的数量。如果分区的数量大于表空间的数量,分区将按名称回收表空间。如果按数量分区时引用了STORE IN和分区存储子句的表空间,则sotrin指定表创建分区的位置,而表空间子句指定后续操作的默认表空间。3)哈希分区的限制答:列列表中最多只能指定16列。列列表不能包含ROWID或UROWID伪列。列列表可以是除ROWID、LONG或LOB之外的任何内置数据类型。3:列出分区-可用的分区类型Oracle9i使用list_partitioning子句根据列的值划分表。列表分区用于控制要映射到指定分区的单个行。每个分区的List _ values _子句至少有一个值。空值可以出现在多个分区中。您可以指定默认分区,默认分区是定义该分区的最后一个分区。列表分区的限制:1)列表分区不能有子分区。2)在COLUMN_LIST中只能指定一个分区,并且不能是LOB列。3)如果分区键是一个对象类型列,则只能按该列类型的一个属性进行分区。4)列表值子句的每个值在表的所有分区中都必须是唯一的。5)不能列出索引组织表的分区。4:复合分区首先按范围分区,然后按哈希或列表创建子分区。您可以指定散列、列表或LOB子分区的唯一功能是表空间。您不能分配公司b范围列表Oracle9i可用的分区类型范围散列适用于即保存历史数据,又需要数据均匀分布的应用;范围列表适用于即保存历史数据,又要离散数据的存放进行控制的应用;如:范围散列分区使用范围分区,且子分区内使用混杂分区。四、建立分区表的语法1:表特性子句2:范围分区子句3:散列分区子句:4:散列分区存储子句5:列表分区6:复合分区7:分区定义8:按照散列的子分区9:分割级子分区10:并行子句11:全局分区子句五、建立分区方法示例1:范围分区创建表格销售(账号(5),acct_nameCHAR(30),数量(6),周_非整数)按范围划分(周_否).(PARTITION sales1 VALUES小于(4)表空间ts0,分区sales2值小于(8)表空间ts1,.分区销售13值小于(52)表空间ts12);-创建表5(发票号,销售年整数不为空,销售月整数不为空,销售日整数不为空)按范围划分(销售年、销售月、销售日)(分区销售额_q1值小于(1997,04,01)表空间tsa,分区销售额Q2(_ q)值小于(1997,07,01)表空间tsb,分区销售额_q3值小于(1997,10,01)表空间tsc,分区销售额_q4值小于(1998,01,01)表TSD).2:散列分区创建表格产品(.)存储(初始10M)按哈希分区(列列表)(分区P1表h1,分区p2表H2);3:复合分区创建表格订单(.)按范围划分(订购日期)按哈希划分的子分区(productid)子分区8储存在(ts1、ts2、ts3、ts4、ts5、ts6、ts7、ts8)(分区雌三醇环戊醚值小于(1998年年4月1日)(细分Q1 _ h1表ts1,.分部Q1 _ H7表ts7,分部Q1 _ h8表ts8)分区q2值小于(1998年年7月1日),);*惟一可用的函数是截止日期和RPAD*创建表格订单(ordid NUMBER,orderdate DATE,productid NUMBER,数量)按范围划分(订购日期)按哈希划分的子分区(productid)子分区8储存在(ts1、ts2、ts3、ts4、ts5、ts6、ts7、ts8)(分区雌三醇环戊醚值小于(1998年年4月1日),分区q2值小于(1998年年7月1日),分区q3值小于(1998年年10月1日),分区q4值小于(最大值);六、分区的优点1:你能够容忍数据无效的影响2:能够单独备份和恢复每个分区和子分区3:能够分配分区或子分于不同的磁盘驱动器以平衡输入/输出*优化程序会因分区列使用函数而不能分解分区(截止日期函数除外)。如果索引和表根据不同的列建的分区,那么即使分区所基于的表的分区不能消除,分解也能消除索引分区。七、分区的优势1:非常大的数据库VLDBs(根据最多的的工作量来区分OLTP或安保部)2:减少有计划维护的宕机时间3:减少数据故障的宕机时间4:安保部系统的性能5:输入/输出性能6:磁盘条带化7:分区对应用透明八、查询分区信息的视图所有_选项卡_分区,数据库_选项卡_分区,用户_选项卡_分区所有_选项卡_子分区,数据库_选项卡_子分区,用户_选项卡_子分区所有分区、数据库分区、用户分区所有分区、数据库分区、用户分区全部_部分_列_统计,数据库_部分_列_统计,用户_部分_列_统计所有_子部分_列_统计,数据库管理员_子部分_列_统计,用户_子部分_列_统计神谕的分区索引一、分区索引的种类1:本地前缀(本地前缀)2:本地非前缀(本地非固定)3:全局前缀(全局前缀)4:全局非前缀(全局非固定)二、本地分区索引对于本地索引,特定索引的所有键只引用存储在单个分区表中的记录。通过指定本地属性创建本地分区索引。此时,Oracle索引的分区和表的分区基于同一列。当一个分区被添加到基表中时,Oracle会自动维护本地分区索引与基表的一致性。1:本地前缀索引其本地索引由索引列左侧的前缀进行分区的索引可以是唯一的,也可以是非唯一的。2:本地非前缀索引本地索引不是以索引列左侧的前缀进行分区的索引。三。全局分区索引全局分区索引意味着特定索引分区的主键可以调用基表的一个或多个分区或子分区。通过指定全局参数来指定全局分区索引。1:前缀的全局分区索引如果分区是用索引列的左前缀分区的,则分区索引是全局分区索引。销售时创建指数月(销售月)按范围进行全球划分(销售月)(分区pm1_ix值小于(2)分区pm2_ix值小于(3)分区pm3_ix值小于(4)分区pm4_ix值小于(5)分区pm5_ix值小于(6)分区pm6_ix值小于(7)分区pm7_ix值小于(8)分区pm8_ix值小于(9)分区pm9_ix值小于(10)分区p

温馨提示

  • 1. 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。图纸软件为CAD,CAXA,PROE,UG,SolidWorks等.压缩文件请下载最新的WinRAR软件解压。
  • 2. 本站的文档不包含任何第三方提供的附件图纸等,如果需要附件,请联系上传者。文件的所有权益归上传用户所有。
  • 3. 本站RAR压缩包中若带图纸,网页内容里面会有图纸预览,若没有图纸预览就没有图纸。
  • 4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
  • 5. 人人文库网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对用户上传分享的文档内容本身不做任何修改或编辑,并不能对任何下载内容负责。
  • 6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
  • 7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。

评论

0/150

提交评论