n****u 发帖数: 229 | 1 SQL Server
今天面试被恶心了一把,主要原因是自己SQL没学好。人家不仅仅要求写得出Query,还
得performance好,人家做Online order system,数据很多。
还被问到如何来看Query Execution Plans,看哪些东西,做哪些事情来提高Database
的效能。
如何通过这个来找错误?手头的书好像都没讲这个,这玩意到底和什么有关?如何来提
高性能啊?
多谢了 |
n****u 发帖数: 229 | 2 搭车再问问,大虾们推荐本比较好点的书吧,着重讲stored proc,讲exception
handling,高级点的Query
多谢 |
B*****g 发帖数: 34098 | 3 sql server已经忘光了。
jackrun这篇post可以读一下,应付tuning应该够了。
http://www.mitbbs.com/article/Database/31138149_3.html
【在 n****u 的大作中提到】 : 搭车再问问,大虾们推荐本比较好点的书吧,着重讲stored proc,讲exception : handling,高级点的Query : 多谢
|
j*****n 发帖数: 1781 | |
n****u 发帖数: 229 | 5 多谢啦 very good, very helpful |
z***y 发帖数: 7151 | 6
Database
在看Query Executioni plans 之前你需要知道一些术语。 这些术语在Book on line (
BOL) 上都查得到。 如果你想知道更深的知识点,可以看看Inside Microsoft SQL
Server 2005, Storage Engine这本书。
关于提高性能, 从设计角度讲, DBA 起决定作用。 开发人员也能够做些工作, SQL
Server在自适应系统调整方面比oracle 要早六年。 很多调整在内部已经做得很好了。
一般不需要在语句层使用hints.
【在 n****u 的大作中提到】 : SQL Server : 今天面试被恶心了一把,主要原因是自己SQL没学好。人家不仅仅要求写得出Query,还 : 得performance好,人家做Online order system,数据很多。 : 还被问到如何来看Query Execution Plans,看哪些东西,做哪些事情来提高Database : 的效能。 : 如何通过这个来找错误?手头的书好像都没讲这个,这玩意到底和什么有关?如何来提 : 高性能啊? : 多谢了
|
j*****n 发帖数: 1781 | 7 "SQL Server在自适应系统调整方面比oracle 要早六年。 很多调整在内部已经做得很
好了。
一般不需要在语句层使用hints. "
嗯,孰俺孤陋寡闻,能把这个典故详细说说么?这个optimizer什么时候出来的?据俺
所知,MS SQL 买的Sybase SQL Server 的技术,大约是在1992年推出 MS SQL Server
4.2,
在NT上跑的第一个版本是6.0.
(
SQL
【在 z***y 的大作中提到】 : : Database : 在看Query Executioni plans 之前你需要知道一些术语。 这些术语在Book on line ( : BOL) 上都查得到。 如果你想知道更深的知识点,可以看看Inside Microsoft SQL : Server 2005, Storage Engine这本书。 : 关于提高性能, 从设计角度讲, DBA 起决定作用。 开发人员也能够做些工作, SQL : Server在自适应系统调整方面比oracle 要早六年。 很多调整在内部已经做得很好了。 : 一般不需要在语句层使用hints.
|
z***y 发帖数: 7151 | 8 sql server 在自适应系统调整上开始于version 7,99年。 主要有:内存调整和自动
表统计更新。 我不是很确定英文名称, 大概是memory auto tuni
ng 和 table statistics auto update. 当时一
些做NT 的程序员加入到开发队伍中, 他们在database engine和OS
层中间加了一个SQLOS。 把很多以前依靠操作系统做的,像是资源同步, 资源
调度, 内存分配,线程管理都自己做了。
当时oracle 还笑话这个特征, 大意是数据库系统只能依靠dba做调整。当
时做oracle 和 sybase 的销售都会拿这个说事。
在sql server 体系结构中有一个部分叫做Query Optimize
r。他是Query Processor 的一部分。 我这里谈的还是他的下一层
,数据库引擎。
开始于oracle 10g 2003 年, 开始引入auto performanc
e management 的概念。 在两年后的10.2 oracle 完整地实现了自适应
调整。
MS SQL Server 4.21是有 for w
【在 j*****n 的大作中提到】 : "SQL Server在自适应系统调整方面比oracle 要早六年。 很多调整在内部已经做得很 : 好了。 : 一般不需要在语句层使用hints. " : 嗯,孰俺孤陋寡闻,能把这个典故详细说说么?这个optimizer什么时候出来的?据俺 : 所知,MS SQL 买的Sybase SQL Server 的技术,大约是在1992年推出 MS SQL Server : 4.2, : 在NT上跑的第一个版本是6.0. : : ( : SQL
|
j*****n 发帖数: 1781 | 9 多谢多谢,确实是长见识了。
MS SQL History 在 wiki 上有一些介绍,上面说6.0 是基于NT系统的第一个版本。
我最早在 NT 3.51上见过6.0, 当时是在98年。感觉与Sybase 极其相似。当时我正热衷
于玩PowerBuilder, Sybase倒是玩过不少,所以上 MS SQL Server 觉得没有什么不同
就是了。
对于Optimizer的认识是在03年以后的事情了,接触的数据量才开始上百万级,那个时
候才开始意识到performance的重要性,呵呵
【在 z***y 的大作中提到】 : sql server 在自适应系统调整上开始于version 7,99年。 主要有:内存调整和自动 : 表统计更新。 我不是很确定英文名称, 大概是memory auto tuni : ng 和 table statistics auto update. 当时一 : 些做NT 的程序员加入到开发队伍中, 他们在database engine和OS : 层中间加了一个SQLOS。 把很多以前依靠操作系统做的,像是资源同步, 资源 : 调度, 内存分配,线程管理都自己做了。 : 当时oracle 还笑话这个特征, 大意是数据库系统只能依靠dba做调整。当 : 时做oracle 和 sybase 的销售都会拿这个说事。 : 在sql server 体系结构中有一个部分叫做Query Optimize : r。他是Query Processor 的一部分。 我这里谈的还是他的下一层
|
z***y 发帖数: 7151 | 10 where where
我们在DC 的 sql server dba有一个非正式的每月聚会, 地点一般在
tyson's corner。 send me a private msg
if interested.
希望更多的朋友加入。 这可能对你自己的职业也有好处。
【在 j*****n 的大作中提到】 : 多谢多谢,确实是长见识了。 : MS SQL History 在 wiki 上有一些介绍,上面说6.0 是基于NT系统的第一个版本。 : 我最早在 NT 3.51上见过6.0, 当时是在98年。感觉与Sybase 极其相似。当时我正热衷 : 于玩PowerBuilder, Sybase倒是玩过不少,所以上 MS SQL Server 觉得没有什么不同 : 就是了。 : 对于Optimizer的认识是在03年以后的事情了,接触的数据量才开始上百万级,那个时 : 候才开始意识到performance的重要性,呵呵
|