dar*_*ect 4 performance azure-sql-database query-performance
昨天,我们将 Azure 中的一个数据库从旧的商业版扩展到了新的标准版 (S2)。
从那以后,它的行为一直很不稳定。
我们有一个相对简单的表,称为 dbo.Asset。在它上面有一个名为 ContentSetId 的列,它是整数类型。此列也包含在索引中:
CREATE NONCLUSTERED INDEX [IX_Asset_ContentSet] ON [dbo].[Asset]
(
[ContentSetId] ASC
)
Run Code Online (Sandbox Code Playgroud)
该表包含大约 200 万条记录。
下面的查询第一次运行需要 36 秒,但后续运行需要 0 秒。我们在其他查询中也看到了类似的行为,它们可能需要一分钟以上的时间才能返回 1000 行以下,但随后的运行速度要快得多。
SELECT TOP 100 * FROM dbo.Asset WHERE ContentSetId = 3
Run Code Online (Sandbox Code Playgroud)
如上所述,自从从商业版更改为新标准 s2 以来,我们才注意到这种行为。
任何建议将非常受欢迎!
小智 5
我针对新的服务层进行了一系列性能测试(如上面另一张海报所述)。
我在 7 月份测试了 I/O 率,现在还测试了每一层的内存(即最大缓冲池大小):http : //cbailiss.wordpress.com/2014/11/11/azure-sql-database-memory -按服务层限制/
(我打算将此添加为对上面dark_perfect 的评论的评论,但在此站点上,我还没有足够的声誉来添加评论)。