写点什么

SQL Server 2008 索引使用技巧

  • 2008-08-27
  • 本文字数:803 字

    阅读完需:约 3 分钟

微软 MVP 及畅销书《Hitchhiker’s Guide SQL Server》的作者 Bill Vaughn简要给出了SQL Server 2008 的索引使用技巧。该主题基于 Kimberly Tripp Paul Randall (这两位是 SQL Server 高可用性和性能方面的专家)的建议。

下面是主要的建议:

  • 页(page)密度 > 优化行大小:SQL Server 2005(及后续版本)支持 8k 的列。这意味着一行可以超过 80k 大小。这有意义么?哦,通常情况下没有。对行大小的管理与效率同样重要。如何提高性能并充分利用空间呢?方法就是当 8k 的页被多个行塞满的时候,要确保几乎没有空间浪费。这意味着如果行大小超过(或者接近)4k 时,一页只适合一行,这样该页大约有 4k 的空间就浪费了。第二个问题是索引页的数量也必须增加以寻址这些页。
  • 过滤的索引 > 这是 SQL Server 2008 的新特性,它使我们可以向索引增加 WHERE 子句,这样就可以将索引聚焦到大多数重要的行上。
  • 选择性(Selectivity) > 选择性:当查询优化器(query optimizer,即 QO)读取 SQL 时,选择性的程度决定了索引是否应该用来执行该操作。通过对索引的 Statistics(或者“stats”,一个索引可以拥有一个或者多个 stats)进行处理分析,QO 可以作出决定。基本上,它会权衡使用索引来遍历选择的行或者对表进行扫描这两种方式。Kimberly 采用的例子使这一切变得很明朗,但我们却感到惊讶:“当行数(由查询选择的)大约是表中的数据页的 1/4 时,索引并没有起到什么作用,这时对表进行扫描来获取选择的行效率更高。这通常发生在取出的行数不到表中总行数的 5% 的情况下…”

SQL Server 2005 中关于索引统计、列选择、索引碎片及锁的标准实践依然可用。

Tripp 和 Randal 也认为 DTA, a.k.a. Data Engine Tuning Advisor 是个有价值的工具。 SQL Server 2008 已经更新了 DTA 以提供新的特性,包括改进的工作量解析、增强的可伸缩性、多数据库调校、通过 dta 命令行界面的改进脚本支持。

查看英文原文: SQL Server 2008 Indexing Tips And Tricks

2008-08-27 05:142970
用户头像

发布了 88 篇内容, 共 270.9 次阅读, 收获喜欢 9 次。

关注

评论

发布
暂无评论
发现更多内容

软件测试丨Redis 的数据同步策略以及数据一致性保证

测试人

软件测试

Docker 网络模式实战:从 Bridge 到 Host 再到 Container 的配置与应用

测吧(北京)科技有限公司

测试

分布式 UI 自动化测试环境部署实践:使用 Docker 快速构建测试平台

测吧(北京)科技有限公司

测试

1688 商品列表接口系列(1688 API)

tbapi

1688商品列表接口 1688API

AI口语练习App的技术难点

北京木奇移动技术有限公司

软件外包公司 AI口语练习 AI英语学习

Easy New File for Mac(右键增强工具)v5.8中文激活版

Rose

什么时候选择 Docker,什么时候选择虚拟机?

测吧(北京)科技有限公司

测试

MIT、OpenAI震撼力作!AI自主发现人工生命,软件测试行业如何迎接未来挑战

测吧(北京)科技有限公司

测试

Affinity Photo(图像处理软件) v2.5.7中文直装版/便携版

Rose

Docker 容器网络模式详解:Bridge、Host 与 Container 的区别

测吧(北京)科技有限公司

测试

Native Instruments Traktor Pro:专业DJ混音新纪元,重塑音乐创作边界!

Rose

LibRaw Monochrome2DNG for Mac(DNG格式转换器)v1.7.1激活版

Rose

Paragon Hard Disk Manager永久激活 mac磁盘管理工具

Rose

人工智能在数字化转型中的角色:从数据分析到智能决策

天津汇柏科技有限公司

数字化转型 AI 人工智能

探索模型驱动测试框架:GraphWalker 的自动化测试用例生成

测吧(北京)科技有限公司

测试

Ableton Live 12下载激活版(Ableton Live许可证)Mac/win

Rose

AI口语评测App的主要功能

北京木奇移动技术有限公司

软件外包公司 AI口语练习 AI英语学习

Docker Compose 实战:如何使用 Docker Compose 进行多容器应用编排

测吧(北京)科技有限公司

测试

DeepSeek 最新推理模型 R1-Lite:一场数学题的死胡同之旅

测吧(北京)科技有限公司

测试

模型驱动测试 (MBT):从概念到实践的全面解析

测吧(北京)科技有限公司

测试

基于LangChain实现数据库操作的智能体

测吧(北京)科技有限公司

测试

SQL Server 2008索引使用技巧_.NET_Al Tenhundfeld_InfoQ精选文章