首页
学习
活动
专区
圈层
工具
发布
社区首页 >问答首页 >是否所有可用的DTU都用于执行查询?

是否所有可用的DTU都用于执行查询?
EN

Stack Overflow用户
提问于 2017-03-16 20:00:43
回答 4查看 1K关注 0票数 1

我有一个不简单的问题。当我的数据库有10个DTU时,执行查询大约需要17秒。我将等级提高到50DTU-现在执行需要3-4秒。这个比率与文档相符-- DTU越多,工作速度越快。

但!

1在我的PC上,我可以在1秒内执行查询。

2在门户统计数据中,我只使用了12个DTU (最大DTU百分比= 25% )。在sys.dm_db_resource_stats中,我看到最大值(Avg_cpu_percent)约为25%,其他参数更少。

所以问题是-为什么我的查询需要3-4秒才能执行?可以在1秒内执行。而且服务器没有用掉我所有的DTU。如何让服务器更快地使用所有可用资源来执行查询?

EN

回答 4

Stack Overflow用户

发布于 2017-03-16 20:12:41

DTU是CPU、内存、数据I/O和事务日志I/O的综合度量。

这意味着达到DTU瓶颈可能意味着其中的任何一种。

这个问题可能会帮助你衡量不同的方面:Azure SQL Database "DTU percentage" metric

这里有更多关于DTU的信息:https://docs.microsoft.com/en-us/azure/sql-database/sql-database-what-is-a-dtu

票数 1
EN

Stack Overflow用户

发布于 2017-03-16 20:20:53

在我的PC上,我可以在1秒内执行查询

我们不应该将我们的Onprem计算能力与DTU进行比较。tier.so是CPU、IO、内存的组合,您将根据您的性能DTU获得此比较无效。

如何让服务器更快地使用所有可用资源来执行查询?

这是不可能的,因为当sql运行查询时,内存是唯一的约束,这会阻止查询甚至是CPU等资源的starting.Rest,IO速度可以根据查询所做的事情而增加或减少。

总之,您必须确保查询不会因为资源紧张而受到限制,如果需要,它们可以用完所有资源,在不需要的时候可以释放它们。

您还必须查看等待类型,并进一步微调查询。

票数 1
EN

Stack Overflow用户

发布于 2017-03-17 23:54:09

正如伯纳德·范德·贝肯所说:

CPU是对

、内存、数据I/O和事务日志I/O的综合测量。

我还会补充说,Microsoft不共享用于计算DTU的公式。您提到,在查询执行期间,您没有看到DTU 100%挂起。但由于我们不知道公式,您很可能是在与DTU的组件挂钩,而不是与DTU本身挂钩。

Azure SQL是一个共享环境,每个租户都会受到限制,以确保所有租户的最低SLA

票数 0
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/42833515

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档