首页
学习
活动
专区
圈层
工具
发布
社区首页 >问答首页 >Azure SQL DB -资源治理

Azure SQL DB -资源治理
EN

Stack Overflow用户
提问于 2016-03-02 16:57:56
回答 2查看 184关注 0票数 1

我们使用,目前使用的是S3层,我们的一个服务遇到了问题,该服务正在将数据推送到数据库中。它经常被称为,大多数情况下,我们的DTU超过95%。我们已经优化了我们能做的事情,但基本上是太多的DB命中了。我们正在进行其他优化、缓存等工作。

问题是,这个DB被我们的另一个应用程序使用,而且由于DTU被其他服务占用,所以我们存在性能问题。

我在想,如果有办法的话,我们什么时候可以为DTU设置一个SQL用户的最大限制?例如30%。我试图在谷歌上搜索,但是找不到任何与这个话题相关的东西。非常感谢你的回答或建议

EN

回答 2

Stack Overflow用户

回答已采纳

发布于 2016-03-08 18:32:18

目前SQL数据库中没有办法根据每个查询/客户端限制资源。您正在优化哪个资源维度(CPU、读、写)?如果您不能进一步优化,您可能不得不咬紧牙关,扩大规模。如果你是IO绑定的,切换到P1会对你有帮助。如果您是CPU绑定的,您可能必须上到P2。

票数 0
EN

Stack Overflow用户

发布于 2016-03-02 21:09:38

%始终基于S2层db。如果您在95,这意味着您在95%的S2层db在您的DTU使用率。在这种情况下,您接近100%,因此您可能很快需要一个更大的层,如S2。您正在使用S3,所以您有正确的层。

azure-sql-database-introduces-new-near-real-time-performance-metrics

例如,如果您的DTU消耗显示值为80%,则它指示它正在以S2数据库限制的80%的速率使用DTU。如果在此视图中看到大于100%的值,则意味着需要一个大于S2的性能层。 例如,假设您看到的百分比值为300%。这告诉您,您使用的资源是S2中可用资源的三倍。要确定一个合理的启动大小,请将S2中可用的DTU(50个DTU)与下一个更高的大小(P1 =100个DTU,或S2的200%,P2 =200个DTU或S2的400% )进行比较。因为您是S2的300%,所以您需要从P2开始并重新测试。 根据DTU使用率,您可以确定数据库是否能够适应S2性能级别(或者是一个较低/更高的级别,如DTU百分比和各种性能层的相对DTU功率所示,如MSDN站点中所记录的那样)。

当您有锁定问题时,您需要找到锁定数据库的查询并重写它们。扩展到更大的db层只会有一点帮助,给出导致问题的应用程序更少的db性能只会延长锁时间。

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

https://stackoverflow.com/questions/35753527

复制
相关文章

相似问题

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