选择显示字体大小

oracle大表分区的一点点心得

最近在做一个客户关系管理系统,项目做的到不是非常成功,可还是学到了不少的知识,由于数据量很大,没有专门的oracle数据库人员支持,对数据库优化管理等也只有我这个约懂一点的人上了。在对数据库优化上有一点点心得写出来希望能同大家一起学习和交流。

数据库大表的优化:采用蔟表(clustered tables)及蔟索引(clustered index)
蔟表和蔟索引oracle所提供的一种技术,其基本思想是将几张具有相同数据项、并且经常性一起使用的表通过共享数据块(data block)的模式存放在一起。各表间的共同字段作为蔟键值(cluster key),数据库在访问数据时,首先找到蔟键值,以此同时获得若干张表的相关数据。蔟表所能带来的好处是可以减少i/o和减少存储空间,其中我更看重前者。采用表分区(partition)
表分区技术是在超大型数据库(vldb)中将大表及其索引通过分区(patition)的形式分割为若干较小、可管理的小块,并且每一分区可进一步划分为更小的子分区(sub partition)。而这种分区对于应用来说是透明的。通过对表进行分区,可以获得以下的好处:
1)减少数据损坏的可能性。
2)各分区可以独立备份和恢复,增强了数据库的可管理性。
3)可以控制分区在硬盘上的分布,以均衡io,改善了数据库的性能。
蔟表与表分区技术的侧重点各有不同,前者侧重于改进关联表间查询的效率,而表分区侧重于大表的可管理性及局部查询的性能。而这两项对于我的系统来说都是极为重要。由于本人技术限制,目前尚不确定两者是否可以同时实现,有那位在这方面有经验的给点指导将不胜感激。
在两者无法同时实现的情况下,应依照需实现的功能有所取舍。综合两种模式的优缺点,我认为采用表分区技术较为适用于我们的应用。
oracle的表分区有以下几种类型:
1)范围分区:将表按某一字段或若干个字段的取值范围分区。
2)hash分区:将表按某一字段的值均匀地分布到若干个指定的分区。
3)复合分区:结合了前面两种分区类型的优点,首先通过值范围将表进行分区,然后以hash模式将数据进一步均匀分配至物理存储位置。
综合考虑各项因素,以第三种类型最为优越。(本人实在技术有限仅采用了第1种范围分区,因为比较简单,便于管理)
优化的具体步骤:
1.确定需要优化分区的表:
经过对系统数据库表结构和字段,应用程序的分析,现在确定那些大表需要进行分区:
如帐户交易明细表acct_detail.
2.确定表分区的方法和分区键:
分区类型:采用范围分区。
分 区 键:
按trans_date(交易时间)字段进行范围分区.
3.确定分区键的分区范围,及打算分多少分区:
如:帐户交易明细表acct_detail.
根据字段(trans_date)分成一下分区:
1).分区1:09/01/2003
2).分区2:10/01/2003
3).分区3:11/01/2003
4).分区4:12/01/2003
5).分区5:01/01/2004
6).分区6:02/01/2004


 


关键字 本文所属关键字

相关 与本文相关文章

分类 所有文章关键字导航

源码编程相关

Java   Asp   PHP   .Net   XML   C/C++   CGI   VB   Jsp   J2ee   J2se   J2me   EJB   Servlet   Tomcat   Resin   Struts   Weblogic   Eclipse   ANT   GUI   JMS   Web servise   IDEA   Webphere   Hibernate   Spring   Jboss   Applet   Swing   Socket   Javamail   Perl   Ajax   P2P   安全   模式   框架   测试   开源   游戏

SQL数据库相关

My-SQL   Ms-SQL   Access   DB2   Oracle   Sybase   SQLserver   索引   存储过程   加密   数据库   分页   视图  

手机无线相关

3G   Wap   CDMA   GRPS   GSM   IVR   彩信   短信   无线   增值业务

网页设计制作相关

HTML   CSS   网页配色   网页特效   Javascript   VBscript   Dreamweaver   Frontpage   JS   Web   网站设计

网站建设推广相关

建站经验   网站优化   网站排名   推广   Alexa

操作系统/服务器相关

Windows XP   Windows 2000   Windows 2003   Windows Me   Windows 9.x   Linux   UNIX   注册表   操作系统   服务器   应用服务器

图形图像多媒体相关

Photoshop   Fireworks   Flash   Coreldraw   Illustrator   Freehand   Photoimpact   多媒体   图形图像

标准 网站致力的规范

Valid CSS!

无不良内容,无不良广告,无恶意代码

Valid XHTML 1.0 Transitional

creativecommons