写点什么

Brent Ozar 谈如何提高 SQL Server 的生产力

  • 2013-03-04
  • 本文字数:916 字

    阅读完需:约 3 分钟

SQL Server 顾问 Brent Ozar 最近发表了一篇文章,谈到了每个 SQL Server 开发者在他们日常的编程任务中应该遵循的七种技术。按照 Brent 的说法,开发者应该尽量避免使用 ORDER BY 语句,他还建议开发者将所有查询结果放入应用程序内存中再进行排序。

如果数据库要执行数据处理、排序、加载及缓存等任务,理想情况下每项任务应该使用一个独立的数据库。Brent 建议这些数据库使用简单恢复模式,而且每天进行一次备份。

他同时建议开发者应有效地利用动态管理视图(DMV),还建议对于应用程序中的不同场景,如数据读写、5 至15 分钟前的老数据以及昨天之前的老数据,应该使用3 种不同的连接字符串来建立连接。按照Brent 的说法,第一种连接字符串的使用场景不易伸缩,因为我们在SQL Server 中并没有多少办法将负载横向扩展到处理写入的多台服务器上。

“对应用来说,已提交读快照隔离(Read-Committed Snapshot Isolation)是比 With(Nolock) 更好的选择,因为少了很多阻塞的麻烦,同时提供了一致的数据”,Brent 说道。

按照 Brent 所说,你不应该再去参考老版本的书和在线文档,因为它们不会定期更新。“当看到某个听着不错的建议时,我喜欢采取‘质疑 Phil 博士’(译注:Dr.Phil 是美国的一档电视秀,一些观众对主持人的生活观念持有不同意见)这样的策略”,Brent 说道。

最后 Brent 还建议,如果想重用代码,那么最好用存储过程视图代替函数。他认为函数对数据库层的性能有很大影响。

不过,有些开发者并不同意Brent 的建议。

Tyler Burd 说道:

我不同意无节制地采用第 2 条意见(即“避免 ORDER BY,而是在应用程序中排序”)。

Brent 对 Tyler 的评论回应道:

为什么不把整个数据集加载到应用程序中并缓存下来呢?

还有个别开发者留言,反对 Brent 所说的避免函数而使用视图和存储过程的观点。

你是支持还是反对 Brent 的技巧和建议呢?请在此留言,InfoQ 保证将其发给 Brent 进行处理和回复如何?

查看英文原文 Brent Ozar on Improving Productivity with SQL Server


感谢臧秀涛对本文的审校。

给InfoQ 中文站投稿或者参与内容翻译工作,请邮件至 editors@cn.infoq.com 。也欢迎大家通过新浪微博( @InfoQ )或者腾讯微博( @InfoQ )关注我们,并与我们的编辑和其他读者朋友交流。

2013-03-04 06:571634
用户头像

发布了 428 篇内容, 共 193.4 次阅读, 收获喜欢 39 次。

关注

评论

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

高效办公!Paste for Mac 剪贴板神器!

Rose

从校园实验室到京东零售:一位算法工程师的风控实战录

京东科技开发者

提高IT运维效率,深度解读京东云基于自然语言处理的运维日志异常检测AIOps落地实践

京东科技开发者

科研党必备!FlowJo 10 助力流式细胞术分析,一键出图,拒绝繁琐

Rose

科研数学软件:MATLAB R2024a完整版安装教程

Rose

2025 开源之夏开启报名|AI + 云原生,10个开源项目、24个课题任您挑选

阿里巴巴云原生

阿里云 开源 云原生

RPA机器人如何确保敏感数据的安全性

Techinsight

数据安全 #数据

提高IT运维效率,深度解读京东云AIOps落地实践(异常检测篇)

京东科技开发者

AlmaLinux 9.6 正式版发布 - RHEL 二进制兼容免费发行版

sysin

AlmaLinux

龙蜥操作系统衍生版 KOS 助力云天化石化打造卓越智能工厂 | 龙蜥案例

OpenAnolis小助手

操作系统 龙蜥社区 龙蜥案例 Anolis OS

HR 必看!RPA 如何帮你从繁琐人资工作中 “解脱”?

Techinsight

人力云 人力资源产业

AI 应用大起底:从生活场景到行业局限全知晓

Techinsight

#人工智能 AI 大底座 人工智能、

RPA机器人流程自动化如何优化人力资源工作流程

Techinsight

人力资源 RPA评测 人力资源管理

VMware ESXi 9.0 下载 - 领先的裸机 Hypervisor

sysin

esxi

java哪有这细糠啊,PHP是世界上最好的语言!

程序员郭顺发

F5《2025年应用战略现状》报告:AI 落地加速,企业战略从讨论迈向行动

科技热闻

天润融通助力卡尔蔡司,用可视化服务提升客户体验

天润融通

重磅揭秘!AI 搜索的 “链接是真,内容是编” 迷惑术!

Techinsight

基于 AST 的全栈代码生成技术白皮书

代码制造者

可视化开发 抽象语法树AST

阿里巴巴 MCP 分布式落地实践:快速转换 HSF 到 MCP server

阿里巴巴云原生

阿里云 云原生 Higress

龙蜥开发者说:200+PR 背后的成长,且看他在社区的开源故事 | 第 31 期

OpenAnolis小助手

操作系统 龙蜥社区 龙蜥开发者说

聊点技术 | PodMonitor与ServiceMonitor:Kubernetes 监控利器

博睿数据

VMware vSphere 9.0 下载 - 企业级工作负载平台

sysin

vSphere

深度剖析:AI 搜索的幻觉引用,为何如此难以察觉?

Techinsight

大模型幻觉 #大模型

天润融通:Agent驱动的人效革命,引领客户服务智能化转型

天润融通

秒懂 AI Agent:概念、能力与智能体差异全解析

Techinsight

agent #人工智能 人工智能、

VMware vCenter Server 9.0 下载 - 集中管理 vSphere 环境

sysin

vcenter

高效缓存的10条军规

电子尖叫食人鱼

缓存

硬核剧透!龙蜥社区系统运维联盟 MeetUp 全议程来啦

OpenAnolis小助手

AI 操作系统 系统运维 龙蜥社区 龙蜥meetup

Cosmos on PAI系列一:PAI-Model Gallery云上一键部署NVIDIA Cosmos Reason-1

阿里云大数据AI技术

人工智能 应用开发 Cosmos 模型服务 PAI

MySQL 可观测性最佳实践

观测云

MySQL

Brent Ozar谈如何提高SQL Server的生产力_语言 & 开发_Anand Narayanaswamy_InfoQ精选文章