关于oracle表空间的规划方法
更新时间:2024-03-24 05:45:01 阅读量: 综合文库 文档下载
- ORACLE 表空间推荐度:
- 相关推荐
ORACLE的表空间划分将影响ORACLE的数据访问速度。我想请问各位大虾,你们在项目实施的时候是怎么划分表空间的,划分的依据是什么,有什么好处以及各个表空间用来存放什么样的数据库对象。
最好能用实例具体说明一下,比如DATA用来放大表数据,DATA_2用来放代码表数据。
希望各位来讨论一下
对于表空间来说,最重要的是如何把要连续访问的段放在一起,但是由于oracle 不能提供基于段的统计信息,所以对数据的物理模型设计和访问模式的详细了解对表空间的规划有非常大的好处。然后基于这些原则,我们就可以平衡这些因素。 表空间的使用遵循以下原则:
1. 对每个表空间上的段使用相同的区片尺寸;段参数INITIAL=NEXT,PCTINCREASE=0;可以通过使用Create Tablespace 的‘ MINIMUM EXTENT’ 子句来确保分配的区片是此参数的倍数; 2. 仅在表空间级指定INITIAL、NEXT参数,在创建数据段时不要指定这些参数; 3. 区片的大小根据段大小来确定,原则是均衡顺序扫描的效率和空间的利用率,同时确保段的区片数目控制在1024之下;根据此原则,在进行相应测试之后,确定以下区片选取规则: 段大小 区片大小) 128M 128K 128M-4G 4M 4G 128M
4.Oracle9i引入了本地管理表空间,它在管理和性能上都优于传统的字典管理表空间,它已融合了规则1、2、3 ;要使用此特性,在CREATE TABLESPACE语句中指定EXTENT MANAGEMENT LOCAL子句;
5. 段的区片数目上限应在4096之下,DML操作在此区片数目范围内不会有明显的性能差异;但某些DDL操作的速度则与区片的数目关系较大;因此合理的区片数目应保持在1024之下;对于持续不断扩展的段,应监控区片数目,在必要时移至其它表空间;
6. 对于特别大的数据段应控制在4G-128G(Oracle7为5G-160G)之间,它们应存放到单独的表空间上,同时对于这些特大段应考虑使用分区拉提高性能; 7. 用户的临时表空间应使用TEMPORARY类型;
8. 当系统的事务规模比较均衡时可以对回滚段使用OPTIMAL参数,否则应避免制定OPTIMAL参数,而定期监控回滚段的大小,并在必要时重建; 9. 临时段和回滚段绝对不要将用户数据存放到SYSTEM表空间,它是专为永远不会Drop和Truncate的系统数据对象而设计的;
10. 创建表空间时指定数据文件的大小应=区片整数倍+1数据块,对于Local Managed Tablespace则为区片整数倍+64K;
11. 当表空间使用统一的区片大小时,不要对其进行空间整理,重整的结果不仅耗费精力而且可能会使性能变差;对于未使用统一的区片尺寸的表空间应通过Export/Import重整;
12. 9i 提供了Alter Table …Move [Tablespace…]命令可用于快速重整表,Alter Index …Rebuild…[Tablespace…] 命令可用于快速重建索引;
首先,不同访问模式的段不应该放在同一个表空间当中,一般而言,我们有以下两种完全不同的访问模式需要特别考虑 顺序读写
段的读写基本是以一种连续读写的方式进行的,譬如:单线程全表扫描,快速全索引扫描,应该被单独存放在自己的表空间当中,而且,如果可能的话,这些表空间的数据文件也应当保存在一些并发访问尽可能少的磁盘当中,这样的话,在进行扫描的时候,查询速度会有非常大的提高。因为,基本上磁盘的寻道时间是最小的,而且大多数数据都可以从硬盘的buffer当中取得。 集中写
类似大量数据集中写入或者parallel direct loads 这种应用,应当被放在单独的表空间当中,而且尽可能保存在较快的镜像盘当中,而不应该选用RAID-5, 还有一个问题就是,对于一些只读的历史数据,最好把它们放在单独的表空间当中,并且标记为只读,这样会大大加快备份时的速度。
其次,考虑到磁盘的负载均衡,建议把段分开在不同的设备上来保存. 我们需要从两个不同的角度来进行考虑: 活动性
两个IO很大的段不应该放在同一个表空间当中,即使这个表空间是由多个数据文件组成,也没有办法避免由于IO 争用造成的性能下降. 相关性
通常情况下,把相关的一些段从一个表空间当中分离出来,典型地来说就是尽可能把表和索引分在不同地表空间,两个经常需要做连接地大表分在两个不同地表空间,这样就可以避免,数据访问,索引读取和执行计划同时对一个表空间进行大量地IO操作。
常用原则
1、一般较大的表或索引单独分配一个tablespace。
2、Read only对象或Read mostly对象分成一组,存在对应的tablespace中。 3、若tablespace中的对象皆是read only对象,可将tablespace设置成read only模式,在备份时,read only tablespace只需备份一次。 4、高频率insert的对象分成一组,存在对应的tablespace中。 5、增、删、改的对象分成一组,存在对应的tablespace中。 6、表和索引分别存于不同的tablespace。
7、存于同一个 tablespace中的表(或索引)的extent 大小最好成倍数关系,有利于空间的重利用和减少碎片。
根据以上原则,数据库表空间设计如下:原则上每个schema对应一个表空间和一个相应索引表空间;每个schema下的大表对应一个单独的表空间和索引表空间;对于需要分区的特大表,则每个子分区对应一个单独的表空间和索引空间。 Db2
感谢两位老师的解答,虽然能看的明白,但还是有点模糊,总结一下:
1、想想数据量的大的表也是和操作频繁的表有联系的,一般的热表可放到一个表空间 2、如果有超大数据量热表需要重新建立表空间(好像不正确,表分区功能负载IO,表分区
不明白)
3、不经常访问的表最好放到一个表空间
4、临时表空间需要和建立的最大表空间页大小匹配 5、表空间最好建立在裸设备上
下面的经验法则是建立在表空间中每个表的平均大小的基础上的:
如果小于50 MB,EXTENTSIZE为8
如果介于50到500MB之间,则EXTENTSIZE为16
如果介于500 MB到5GB之间,则EXTENTSIZE为32
如果大于5GB,则EXTENTSIZE为64
http://www.oracle.com.cn/viewthread.php?tid=4415&highlight=±í????éè??
正在阅读:
关于oracle表空间的规划方法03-24
中国十三五期间中国化工市场预测报告05-19
2019四年级下册英语教案Lesson2Whatareyoudoing∣鲁科版(五四学03-28
A combustion control support expert system for a coal-fired boiler05-27
2010网上购物调研报告06-12
小学三年级教案-三下培训提纲001 精品05-07
长方体和正方体的体积教案设计和反思03-10
《学雷锋,树新风》三年级主题班会活动方案06-12
新东方五年考题05-24
夏荷作文600字07-03
- 多层物业服务方案
- (审判实务)习惯法与少数民族地区民间纠纷解决问题(孙 潋)
- 人教版新课标六年级下册语文全册教案
- 词语打卡
- photoshop实习报告
- 钢结构设计原理综合测试2
- 2014年期末练习题
- 高中数学中的逆向思维解题方法探讨
- 名师原创 全国通用2014-2015学年高二寒假作业 政治(一)Word版
- 北航《建筑结构检测鉴定与加固》在线作业三
- XX县卫生监督所工程建设项目可行性研究报告
- 小学四年级观察作文经典评语
- 浅谈110KV变电站电气一次设计-程泉焱(1)
- 安全员考试题库
- 国家电网公司变电运维管理规定(试行)
- 义务教育课程标准稿征求意见提纲
- 教学秘书面试技巧
- 钢结构工程施工组织设计
- 水利工程概论论文
- 09届九年级数学第四次模拟试卷
- 规划
- 方法
- oracle
- 关于
- 空间
- 2017湖北银行面试:无领导小组面试特点及要求
- 数学选修1导数及其应用(文科教师用)
- 清吧活动策划节目
- 办公室安全管理制度
- 安全系统工程教案-昆明冶金高等专科学校 - 图文
- 《我的好妈妈》
- 职称英语考试综合类C级核心词汇
- 上海市软件和集成电路产业发展专项资金
- 动产质押合同1
- 把工作当作事业来做
- Monza X-2K芯片手册学习笔记 - 20170117
- VB试验报告参考
- (最新)2019年11月六年级英语上册期中考试卷
- 快递单号查询免费api接口(PHP示例) - 快宝开放平台
- 2013年项目技术总工竞聘试题-含答案
- 四年级数学上册《平行与垂直》说课稿
- 语音学与语言学作练习集
- 农村环境保护调查报告:发现、分享、传承优秀的传统文化
- 生物除臭工艺设计
- 积的变化规律习题