Informix数据库记录数过多引起的性能下降

日期: 2008-06-19 来源:TechTarget中国

  为什么在一个有30000条记录并且建立有索引的表进行操作很慢,怎么办?


    其实30000条记录并不是太多,你感觉有些慢可能是记录数太多的缘故,原因可能是每条记录太长,或者你的机器的性能十分低,下面的一些方法可能会对性能有所帮助:


  1.更新统计信息(update satistics on tablename)


  这一点很容易做到,并且有可能会带来性能的提高。


  2.删除


  然后再重新创建索引。这样作能够增加索引的连续性。但是要求是DBA或者有创建索引的权限。


  3.alter INDEX idxname TO CLUSTER


  这样作的目的是重新创建表并且通过索引来重新排列记录。结果是强制使记录在逻辑上连续,并且提高物理上的连续性。这样作的代价最大,但是效果最好。但是,一个表中只能有一个cluster index,并且,重新排列记录可能会强迫其他的查询使用其他的索引。作这种工作,你必须要为DBA或者有alter table 的权限。并且请注意,在你运行cluster index的时候,你必须要有足够的空间,因为在为一个表创建cluster index的时候,会拷贝表中所有的记录到一个临时表中,在临时表中进行排序操作,然后会删除原来的表,然后将临时表的名字改为原始表的名字。因此,如果这个表中的数据变化很大,如经常要进行大量的插入/删除的操作,这样作的好处就体现不出来。

我们一直都在努力坚持原创.......请不要一声不吭,就悄悄拿走。

我原创,你原创,我们的内容世界才会更加精彩!

【所有原创内容版权均属TechTarget,欢迎大家转发分享。但未经授权,严禁任何媒体(平面媒体、网络媒体、自媒体等)以及微信公众号复制、转载、摘编或以其他方式进行使用。】

微信公众号

TechTarget微信公众号二维码

TechTarget

官方微博

TechTarget中国官方微博二维码

TechTarget中国

电子邮件地址不会被公开。 必填项已用*标注

敬请读者发表评论,本站保留删除与本文无关和不雅评论的权力。

相关推荐

  • Informix Online数据库日常管理及维护

    定时做逻辑日志文件备份,系统只将已写满的逻辑日志文件备份到磁带上,然后清空,并释放这些日志文件。

  • 在SQL Server Profiler中使用跟踪

    SQL Server Profiler是一个应用程序,在SQL Server标准版、企业版和工作组版中都有,它为用户提供了一个接口,用来设置与运行跟踪。

  • DB2性能调优工程师常遇二十大难题

    DB2数据库设计中物理设计应该尽可能的和逻辑结构相近,但是为性能做出的物理设计改变不能被忽略,因为它们并不来自于逻辑设计。

  • Oracle索引聚簇表的数据加载

    索引聚簇表是基于一个索引聚簇创建的。里面记录的是各个聚簇键。聚簇键和我们用得做多的索引键不一样,索引键指向的是一行数据,聚簇键指向的是一个ORACLE BLOCK。