【发布时间】:2015-01-28 11:06:52
【问题描述】:
事实:
- 1 个 Azure SQL S0 实例
- 几个表,其中一个包含约 860 万行和 1 个 PK
在此表上运行计数查询需要近 30 分钟 (!) 才能完成。
将实例从 S0 升级到 S1 可将查询时间缩短至 13 分钟:
查看 Azure 门户(新版本),resource-usage-monitor 显示以下内容:
问题:
- 对于简单的 COUNT(),是否有其他人认为即使 13 分钟也是 rediculos?
- 第二个屏幕截图是否意味着在 100% 期间我的实例没有响应其他请求?
- 为什么我的指标在 S0 和 S1 中都限制为 100%? (请参阅look under "Which Service Tier is Right for My Database?" 声明“这些值可以高于 100%(对预览中限制为最大值 100 的值有很大改进)。”)我希望 S0 会像蜜蜂一样达到 150% 左右如果引用的陈述为真。
我对使用具有超过 1000 条记录的数据库的经验感兴趣。目前,我不知道每月 22 到 55 欧元的 S* 规模 Azure SQL 对我的升级策略有何帮助。
【问题讨论】:
-
您使用的是“where”条件吗?您的查询是“从表中选择计数()”还是“从条件表中选择计数()”?
-
不,这只是一个计数(*),没有位置。
-
索引和统计数据是最新的吗?
-
是的。但这在执行 COUNT(*) 时真的很重要吗?如果我们谈论秒,我什么也不说。但是几分钟???