



全文预览已结束
下载本文档
版权说明:本文档由用户提供并上传,收益归属内容提供方,若内容存在侵权,请进行举报或认领
文档简介
数据库规划文档1、 数据库表空间规划 根据应用情况建立应用数据表空间,索引表空间,临时表空间,回滚表空间。表空间存储参数划分: initial = next , pctincreas 0 ,minextents 2 ,maxtents unlimited如果是小表,则对应initail 以k为单位。如果数据量比较大的表,例如历史表等 initial 以M为单位。数据表空间的划分:数据表空间可划分为多个数据表空间,按数据量、业务类型进行划分。系统小表:bsys_area,bsys_code等 使用缺省表空间历史表:CARD_BILLING_DETAIL_200203、BILLING_COMDETAIL_200203等使用历史表空间其它表:如当前详单表、消费、粗帐表、用户信息表、认证表等归属一个数据表空间特殊表:mid_record ,卡替重表等归属一个表空间接口表、宽带表等:以业务类型划分数据表空间,接口表空间、宽带表空间2、 Oracle性能考虑Insert操作考虑 :插入操作运行速度慢,会伴随大量的输入输出。如果高性能比空间的重新使用更为重要,那么可以使用一个能够绕过空闲列表的ORACLE8 SQL提示。即通过在INSERT关键词之后放置/*+ append */, 这个提示将确保所有插入内容都放入到空数据块中,从而提高了速度。Pctfree: 为insert保留的可用块空间的百分比,当到达pctfree限额时,块被认为已满,不能再插入新的行。块中pctfree限额到达以后,保留在块中的空间为已存在于块中的行UPDATE服务。数据库缺省值:PCTUSED = 40 PCTFREE = 10大量的insert操作设置:如果表多数情况下是INSERT操作,可将pctfree 设置趋向于小(缺省值10),pctused要加大,建议(60至70)。大量Update操作设置:如果表有大量的UPDATA操作,可将PCTFREE设置大一些(20-25), pctused建议(50)。总体上PCTFREE+PCTUSED 80 90 Freelists参数设置: freelists为向表中进行insert操作,而保留的空闲块队列的数目,此参数可设为当前update操作的最大数值。对有很多并发UPDATE操作的数据表,定义额外的空闲列表。例如表test有20个并发执行insert操作的终端用户,那么test表应该设置freelists = 203、 数据文件划分原则: 数据库文件的基本划分原则是:DATA空间段与其索引INDEXS空间段分开;RBS空间段与DATA空间段分开;SYSTEM空间段应同数据库中的所有其它空间段分开。磁盘 数据文件内容 1 系统表空间,控制文件1、在线重做日志1 2 数据文件1 3 数据文件2 4 数据文件3 5 索引段 6 工具段,回滚段,控制文件2、在线重做日志2 7 临时段,用户段,在线重做日志3,控制文件34、 SQL语句设计为了保证Oracle数据库运行在最佳的性能状态下,在业务系统开发之前就应该考虑数据库的优化策略。Sql语句与其执行计划一同进行检查。避免无计划的全表扫描, 如下情况进行全表扫描:该表无索引、对返回的行无Where子句、对于索引主列(索引的第一列)无限制条件等等。 对SQL语句的编写可参考如下原则:改变SQL来源在实际的编程过程中,建议从应用程序中去掉所有的SQL语句。强调通过将所有的SQL放置在存储过程中,将存储过程打包来实现。在SQL语句中避免使用直接量包含有直接量的SQL语句都不可能被再次使用。解决的办法是建议开发者在SQL语句中使用主机变量。去掉不必要的大型表的全表扫描全表扫描会造成不必要的硬盘I/0,调整方法是通过添加索引,使用标准的B树索引,使用位图索引或基于函数的索引,去掉不必要的全表扫描。Oracle8提供了含有内置函数的索引。 下面是一些经常使用的OracleSQL内置函数:to_charupperlowersubstrdecode如果没有创建与内置函数匹配的基于函数的索引,这些函数通常会导致SQL优化器执行全表扫描。 缓存小型表的全表扫描在全表扫描是更快的访问方式的情况下,将小表KEEP到数据缓冲区中。alter table 表名 storage(buffer_pool keep); 并行技术对于合法的大型表全表扫描可使用ALTER TABLE PARALLEL DEGREE nn命令进行并行化。采用基于规则的优化器的一些特性: (optimizer_mode=rule)总是使用索引总是从驱动表开始,在from子句中的最后一个表是驱动表。表的名称从右向左读取,因此FROM子句中的最后一个表必须是可以返回最少记录的表。 使用Union All 而不是Union UNION ALL操作不包括Sort Unique操作, 多数情况下不用临时段完成操作,绑定变量(Bind Variable)的使用管理将like :name |% 改写成 between :name and :name | char(225), 以避免进行全表扫描,而是使用索引。 存储过程keep在内存中 尽量利用oracle公司提你的dbms_shared_pool程序包将系统经常使用且占内存较多的存储过程keep在内存中,有利于提高最终用户的响应时间 execute sys.dbms_shared_pool.keep(cedure_name,p); not exists代替not in在程序开发过程中编写sql时,用not exists代替not in,可以大大减
温馨提示
- 1. 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。图纸软件为CAD,CAXA,PROE,UG,SolidWorks等.压缩文件请下载最新的WinRAR软件解压。
- 2. 本站的文档不包含任何第三方提供的附件图纸等,如果需要附件,请联系上传者。文件的所有权益归上传用户所有。
- 3. 本站RAR压缩包中若带图纸,网页内容里面会有图纸预览,若没有图纸预览就没有图纸。
- 4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
- 5. 人人文库网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对用户上传分享的文档内容本身不做任何修改或编辑,并不能对任何下载内容负责。
- 6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
- 7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。
最新文档
- 2025房地产项目室内外装饰设计施工监理合同
- 2025年中小企业融资连带担保合同范本
- 2025年度图书馆图书采购与可持续发展合同
- 2025年风力发电场电线电缆配套供应协议
- 2025版历史遗迹拆除与文化遗产保护合同范本
- 2025年度高新技术项目融资服务合同范本二
- 2025年度塑料包装袋环保回收利用采购合同
- 2025版新型节能电器贴牌生产销售合同
- 2025年二层商铺楼房租赁合同及商业地产市场调研与分析服务协议
- 2025年度健身房室内涂料施工协议
- 高产小麦品种介绍
- HemiView森林冠层图像分析系统
- 创新方法教程题库题库(449道)
- 建设工程消防验收评定规则
- 山东省临沂市兰山区2022-2023学年小升初数学自主招生备考卷含答案
- 电气设备交接试验方案
- D500-D505 2016年合订本防雷与接地图集
- 北邮社电机拖动与调速技术教学包课后题解
- 学校门卫岗位职责及管理制度
- JJG 1105-2015氨气检测仪
- GB/T 17421.7-2016机床检验通则第7部分:回转轴线的几何精度
评论
0/150
提交评论