azure - 如何改进 Azure SQL 数据仓库中单个用户的查询执行并行化?

标签 azure azure-synapse

我们的 Web 应用程序中加载了一个新的报告仪表板,其中数据源自 Azure SQLDataWareHouse。

仪表板由约 8-10 个图 block 组成,每个图 block 显示不同的指标,由不同的查询加载。

使用一些简单的 ADO.NET 代码从 Web 应用程序执行各种查询,以使用 dashboard 用户帐户连接到 DW。

我已阅读关于 Memory & Concurrency Limits 的两篇文章和 Resource Classes但有件事我就是不明白。

对于我们的 DW 服务级别(Gen2 - DW200c),服务器应支持运行 8 个并发查询。 同样,我们已将 dashboard 用户添加到 staticrc80 资源组,这应使其能够访问所有 8 个并发槽。

但这似乎没有帮助。我的理解是否正确,无论这些资源配置如何,它仍然一次只会为单个用户执行一个单一查询? 并且在同一用户帐户下执行的多个查询仍然会排队?

一种替代方案似乎是我可以为每个图 block 使用不同的用户帐户, 建立8个独立的连接, 运行 8 个单独的查询, 其中每个查询帐户都分配给 staticrc10 角色。

我在这里错过了一些基本的东西吗?此 DW 专用于单个应用程序,具有单个用户帐户读者用户帐户。如何根据资源类别等配置该帐户...以充分利用 8 个并行查询/200 DWU 资源分配。

最佳答案

根据documentation ,DWU200c 的静态资源类 staticrc80 使用 8 个资源槽,因此 DWU200c 最多有 8 个并发槽,我希望单个连接使用所有这些槽,因此您的并发查询将排队,一次一个。

static resource classes and concurrency slots 考虑将您的用户切换到 staticrc10,这将允许最多 8 个并发查询。无需创建 8 个不同的用户。

请问您使用的是 Power BI 吗?此外,DWU200c 对于任何工作负载来说都相当低,它实际上只是为了让事情继续进行。

关于azure - 如何改进 Azure SQL 数据仓库中单个用户的查询执行并行化?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/59624731/

相关文章:

azure - 从 Web 部署或 SDK 部署 Azure 云服务

java - Azure SQL 数据仓库

Azure Kubernetes - 副本与 HPA?

azure - 如何计算或估算 Azure 应用程序 (SaaS) 上的每位用户成本?

azure - Azure 应用服务上的 Kudu 中缺少调试控制台菜单项?

azure-synapse - Azure SQL 数据仓库中的列级加密

Azure Synapse 无服务器 SQL 池 - 从带引号的字段中选择时出错

azure - 如何解决 'lastindexof' 是一个原语,不支持 Azure 数据工厂中的嵌套属性

azure - 与 Azure Java SDK 一起使用时,Jackson 在 Apache Spark 中发生冲突

azure-sql-database - Azure SQL DWH 日期分区