sql-server – 何时应将非聚簇索引存储在不同的文件组中?
发布时间:2020-12-12 16:57:13 所属栏目:MsSql教程 来源:网络整理
导读:我听说在不同的文件组和驱动器上存储索引会提高数据库的性能,因为驱动器不必在索引和索引所引用的数据之间来回切换.我还有 heard,这是一个神话. 什么时候建议将非聚簇索引存储在单独的文件组和驱动器上?什么样的perfmon / profiler证据会让我得出那个结论?
我听说在不同的文件组和驱动器上存储索引会提高数据库的性能,因为驱动器不必在索引和索引所引用的数据之间来回切换.我还有
heard,这是一个神话.
什么时候建议将非聚簇索引存储在单独的文件组和驱动器上?什么样的perfmon / profiler证据会让我得出那个结论?硬件是否在决策中起作用(是否在单个驱动器上使用RAID / SAN)? 解决方法数据库系统中最慢的部分是磁盘驱动器.消除磁盘级别的瓶颈将提高性能.在查找数据并使用索引时,首先查找索引,然后获取相应的数据.如果索引和数据都在同一磁盘上,则会发生一些争用.然而,如果数据位于不同的(物理)磁盘上,则会发生更快的IO,从而提高性能.需要注意的主要部分是数据或索引位于不同的物理磁盘或LUN上. 如果需要从系统中获得更好的性能,只要有磁盘,就可以使用这种方案.对于您的perfmon计数器,您可以使用物理磁盘 – 平均.磁盘秒/读取,物理磁盘 – 平均磁盘秒/写入,物理磁盘 – 磁盘读取/秒,物理磁盘 – 磁盘写入/秒以进行更改之前和之后的比较. (编辑:李大同) 【声明】本站内容均来自网络,其相关言论仅代表作者个人观点,不代表本站立场。若无意侵犯到您的权利,请及时与联系站长删除相关内容! |
相关内容
- DBCC大全集之(适用版本MS SQLServer 2008 R2)----DBCC SH
- sqlserver获取日期函数说明
- .net – 可以根据手动编辑的.dbml重新生成.designer.cs吗?
- 利用sql server创建可重复运行的存储过程
- sql-server – 从Azure V1(ASM)到V2(ARM)的AlwaysOn SQL VN
- sql-server – 消耗可用内存的Hyper-V主机
- sqlserver2008 排序函数
- sql-server – 为聚合使用索引视图 – 太好了,不是真的吗?
- sql – 使用Oracle的大量预计I / O,即使仅获取单个记录
- 代码生成器CodeGenerator