对一大表(百万级以上)建立索引时应当注意的事项及提高性能的手段-数据库专栏,SQL Server

转载 2012年03月23日 16:30:17

对一大表(百万级以上)建立索引时应当注意的事项及提高性能的手段-数据库专栏,SQL Server

发布时间:2007-12-25 21:46:46  来源:  作者:  点击:356

一、注意事项:
首先,应当考虑表空间和磁盘空间是否足够。我们知道索引也是一种数据,在建立索引的时候势必也会占用大量表空间。因此在对一大表建立索引的时候首先应当考虑的是空间容量问题。

其次,在对建立索引的时候要对表进行加锁,因此应当注意操作在业务空闲的时候进行。

二、性能调整方面:
首当其冲的考虑因素便是磁盘i/o。物理上,应当尽量把索引与数据分散到不同的磁盘上(不考虑阵列的情况)。逻辑上,数据表空间与索引表空间分开。这是在建索引时应当遵守的基本准则。

其次,我们知道,在建立索引的时候要对表进行全表的扫描工作,因此,应当考虑调大初始化参数db_file_multiblock_read_count的值。一般设置为16或更大。

再次,建立索引除了要进行全表扫描外同时还要对数据进行大量的排序操作,因此,应当调整排序区的大小。
   Arrayi之前,可以在session级别上加大sort_area_size的大小,比如设置为100m或者更大。
   Arrayi以后,如果初始化参数workarea_size_policy的值为true,则排序区从pga_aggregate_target里自动分配获得。

最后,建立索引的时候,可以加上nologging选项。以减少在建立索引过程中产生的大量redo,从而提高执行的速度。

以上内容由 华夏名网 搜集整理,如转载请注明原文出处,并保留这一部分内容。

对一大表(百万级以上)建立索引时应当注意的事项及提高性能的手段

  • zgqtxwd
  • zgqtxwd
  • 2008年04月26日 19:32
  • 131

mysql百万级索引性能优化 摘录

组合索引: 新系统改版进展一月有余,今天终于遇到一问题。            上午老大在调试我写的程序时,发现一个问题:同一程序,当数据量达到120W的时候程序运行特别慢(6秒)。原先我...
  • wyswlp
  • wyswlp
  • 2013年05月28日 11:50
  • 1071

单表过百万级别同步数据sql写法

0 概述实际工作中我们很可能要将某张表数据全部导入到其它表中,当单表数据过大(超过百万)如果使用sql不当会扫描数据时候比较慢甚至造成故障。1 实例分析简单的表结构如下(500w数据)CREATE T...
  • huangshanchun
  • huangshanchun
  • 2017年05月18日 22:35
  • 389

对于大表(千万级)建立索引时应当注意的事项及提高性能的手段

一、注意事项:首先,应当考虑表空间和磁盘空间是否足够。我们知道索引也是一种数据,在建立索引的时候势必也会占用大量表空间。因此在对一大表建立索引的时候首先应当考虑的是空间容量问题。其次,在对建立索引的时...
  • milunhailili
  • milunhailili
  • 2007年06月19日 23:35
  • 534

浅谈索引对数据库性能的影响

大家都知道,对于数据库来说,常见的瓶颈问题多是CPU or IO过高造成的,如果能够有效的解决这两个问题,那么的确是功德可见的,那么业界现在也有很多的方式在达到这样的目的,比如:在DB层的前面加一个中...
  • yzongyu
  • yzongyu
  • 2013年01月06日 13:22
  • 1386

SQL优化,处理百万级以上的数据处理

处理百万级以上的数据提高查询速度的方法:  1.应尽量避免在 where 子句中使用!=或  2.对查询进行优化,应尽量避免全表扫描,首先应考虑在 where 及 order by 涉及的...
  • bfqiwbifj
  • bfqiwbifj
  • 2016年03月06日 21:06
  • 1027

百万级数据库检索,怎样提高检索效率

数据库的查询优化技术 数据库系统是管理信息系统的核心,基于数据库的联机事务处理(OLTP)以及联机分析处理(OLAP)是银行、企业、政府等部门最为重要的计算机应用之一。从大多数系统的应用实例来看,查...
  • ITX2000
  • ITX2000
  • 2014年02月17日 12:24
  • 1616

数据库创建索引的注意事项

出于对作者的尊重和感谢,原文地址为 http://www.studyofnet.com/news/449.html 索引可以提高数据的访问速度,但同时也增加了插入、更新和删除操作的处理时间。...
  • sosfnima
  • sosfnima
  • 2016年07月25日 16:44
  • 2802

关于mysql处理百万级以上的数据时如何提高其查询速度的方法

原文:http://www.2cto.com/database/201306/222839.html 最近一段时间由于工作需要,开始关注针对Mysql数据库的select查询语句的相关优化方法。...
  • u013810758
  • u013810758
  • 2014年06月16日 14:28
  • 4875

MYSQL用存储过程创建百万级测试数据表

mysql用存储过程创建百万级测试数据
  • www520507
  • www520507
  • 2017年03月24日 16:35
  • 1116
内容举报
返回顶部
收藏助手
不良信息举报
您举报文章:对一大表(百万级以上)建立索引时应当注意的事项及提高性能的手段-数据库专栏,SQL Server
举报原因:
原因补充:

(最多只允许输入30个字)