gpt4 book ai didi

sql-server - 了解 SQL Profiler 中的读/写次数

转载 作者:行者123 更新时间:2023-12-03 16:31:28 26 4
gpt4 key购买 nike

alt text

请参阅此 SQL Profiler View 中指示的 SQL 语句。所有这些事件都来自一台客户端机器,该机器正忙于一个长时间运行的进程,处理几千行。一行的每次处理大约需要 6.5 秒,这是 SQL Profiler 显示的注销之间的时间,即使实际更新语句只需要 1ms。每个登录/注销使用相同的 SPID。请注意,在任何给定的登录和注销事件之间,SQL 语句指示读取计数为 17,写入计数为 0。
然而,注销事件表明总读取次数超过 200 万次,写入次数超过 1 万次。我需要分析哪些事件以试图找出导致这些读/写的语句,因为我怀疑这些是导致 6.5 秒延迟的那些事件,但我看不到它们发生?

最佳答案

为 Audit:Logout 事件提供的读/写数字是该连接持续时间的累计总数。就其本身而言,这些值不会告诉您任何细节——如果您在连接的生命周期内运行 10 个命令,您将看到该 session 中所有 10 个命令的总数。

若要按语句了解分割是什么,您需要查看在开始 Audit:Login 事件和结束 Audit:Logout 事件之间为同一 SPID 记录的 SQL:BatchCompleted(或 SQL:StmtCompleted)事件。

更新:
查看图像,看起来有点奇怪(至少对我而言)的是,在每次 Audit:Logout 之后,Reads 值不会重置,因此每次它都会增加语句的读取次数被处决 (17)。因此,我不确定 100% 因此该数字将在什么时候重置 - 但基本点是该数字是累积的,并且可能是随着时间的推移/许多陈述而建立的,因此并不一定意味着您有一个沉重的查询命中服务器!

我怀疑 Audit:Logout 的 Reads/Writes 数据的行为累积如上。但 Duration 逆势而上。看起来持续时间不是累积的。
来自 MSDN 的一些描述:

Duration : Amount of time since the user logged in (approximately).
Reads: Number of logical read I/Os issued by the user during the connection.
Writes: Number of logical write I/Os issued by the user during the connection.

关于sql-server - 了解 SQL Profiler 中的读/写次数,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/4323584/

26 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com