性能建议

Azure 顾问中的性能建议有助于提高业务关键型应用程序的速度和响应能力。 可通过顾问从顾问仪表板的“性能”选项卡获取性能建议。

  1. 登录到 Azure 门户

  2. 在任意页面中搜索并选择顾问

  3. 在顾问仪表板中,选择“性能”选项卡。

AI + 机器学习

此资源上检测到了 429 限制

我们观察到,在一天的时间范围内,此资源上出现了 1,000 个或更多 429 限制错误。 请考虑启用自动缩放,以更好地处理更大的调用量并减少 429 错误数。

文本分析模型版本弃用

将模型版本升级到较新的模型版本或最新版本,以利用最新和最高质量的模型。

详细了解认知服务 - TAUpgradeToLatestModelVersion(文本分析模型版本弃用)

文本分析模型版本弃用

将模型版本升级到较新的模型版本或最新版本,以利用最新和最高质量的模型。

详细了解认知服务 - TAUpgradeModelVersiontoLatest(文本分析模型版本弃用)

请升级到最新认知服务文本分析 API 版本

升级到最新 API 版本以获得在模型质量、性能和服务可用性方面的最佳结果。 此外,从 V3.0 开始,有一些新功能可作为新终结点使用,例如个人数据识别、实体识别和实体链接可用作单独的终结点。 预览版终结点中的更改:我们在 SA 终结点中引入了观点挖掘,在个人数据终结点中引入了修订文本属性

详细了解认知服务 - UpgradeToLatestAPI(升级到最新的认知服务文本分析 API 版本)

升级到适用于语言的 Azure 认知服务的最新 API 版本

升级到最新 API 版本以获得在模型质量、性能和服务可用性方面的最佳结果。

详细了解认知服务 - UpgradeToLatestAPILanguage(升级到适用于语言的 Azure 认知服务的最新 API 版本)

升级到最新认知服务文本分析 SDK 版本

升级到最新 SDK 版本,以便在模型质量、性能和服务可用性方面获得最佳效果。 此外,从 V3.0 开始,有一些新功能可作为新终结点使用,例如个人数据识别、实体识别和实体链接可用作单独的终结点。 预览版终结点中的更改:我们在 SA 终结点中引入了观点挖掘,在个人数据终结点中引入了修订文本属性

详细了解认知服务 - UpgradeToLatestSDK(升级到最新的认知服务文本分析 SDK 版本)

升级到最新认知服务语言 SDK 版本

升级到最新 SDK 版本,以便在模型质量、性能和服务可用性方面获得最佳效果。

详细了解认知服务 - UpgradeToLatestSDKLanguage(升级到最新的认知服务语言 SDK 版本)

升级到最新的 Azure AI 语言 SDK 版本

升级到最新 SDK 版本,以便在模型质量、性能和服务可用性方面获得最佳效果。 此外,从 V3.0 开始,有一些新功能可作为新终结点使用,例如个人数据识别、实体识别和实体链接可用作单独的终结点。 预览版终结点中的更改:我们在 SA 终结点中引入了观点挖掘,在个人数据终结点中引入了修订文本属性。

详细了解 Azure AI 语言

分析

正确调整数据资源管理器资源的大小,以获得最佳性能。

此建议显示超出了建议的数据容量 (80%) 的所有数据资源管理器资源。 为提高性能,建议的操作是缩放到所示的建议配置。

详细了解数据资源管理器资源 - 正确调整 ADX 资源的大小(正确调整数据资源管理器资源的大小,以获得最佳性能)

查看数据资源管理器表的表缓存策略

此建议显示数据资源管理器表,这些表具有大量查询,可追溯到配置的缓存周期(策略)之外 - 你可以看到按访问缓存外数据的查询百分比排序的前 10 个表。 为提高性能,建议的操作是将此表上的查询限制在必要的最小时间范围(在定义的策略内)。 或者,如果需要整个时间范围内的数据,请将缓存周期增加为建议值。

详细了解数据资源管理器资源 - UpdateCachePoliciesForAdxTables(查看数据资源管理器表的表缓存策略)

减少数据资源管理器表缓存策略,以提高性能

“减少表缓存”策略可释放资源缓存中未使用的数据并提高性能。

详细了解数据资源管理器资源 - ReduceCacheForAzureDataExplorerTablesToImprovePerformance(减少数据资源管理器表缓存策略,以提高性能)

增加缓存策略中的缓存

根据上个月的实际使用情况,更新缓存策略,以增加表的热缓存。 保留期必须始终大于缓存期。 如果增加了缓存,但保留期低于缓存期,请更新保留策略。 仅基于已扫描数据的用户查询进行分析。

详细了解数据资源管理器资源 - IncreaseCacheForAzureDataExplorerTablesToImprovePerformance(增加缓存策略中的缓存)

启用数据资源管理器资源的优化自动缩放

看起来你的资源可以自动扩展以提高性能(根据你上周的实际使用情况、缓存利用率、摄取利用率、CPU 和流摄取利用率)。 为了优化成本和性能,建议启用优化的自动缩放。

详细了解数据资源管理器资源 - PerformanceEnableOptimizedAutoscaleAzureDataExplorer(为数据资源管理器资源启用优化的自动缩放)

读取最新数据

超过 75% 的读取请求登陆了 memstore,这表明读取主要针对最新数据。 最近的数据读取表明,即使在 memstore 上发生刷新,也需要访问最近的文件并将其放入缓存。

详细了解 HDInsight 群集 - HBaseMemstoreReadPercentage(对最新数据进行读取)

请考虑在 HBase 群集中使用加速写入功能来提高群集性能。

你会看到此顾问建议,因为 HDInsight 团队的系统日志显示,在过去 7 天内,你的群集遇到以下情况:

  1. 高 WAL 同步时间延迟

  2. 高写入请求计数(1 小时内至少 3 个,超过 1000 个平均写入请求/秒/节点)

这些情况指示你的群集遇到了高写入延迟,这可能是因为对群集执行了大量工作负载。

若要提高群集性能,请考虑使用 Azure HDInsight HBase 提供的加速写入功能。 适用于 HDInsight Apache HBase 群集的加速写入功能可将高级 SSD 托管磁盘附加到每个 RegionServer(工作器节点),而不是使用云存储。 因此,它可提供应用程序的低写入延迟和更好的复原能力。

若要阅读有关此功能的详细信息,请访问链接:

详细了解 HDInsight 群集 - AccWriteCandidate(考虑在 HBase 群集中使用加速写入功能来提高群集性能)

超过 75% 的查询是完全扫描查询

群集上超过 75% 的扫描查询是在执行完全的区域/表扫描。 修改扫描查询以避免完全的区域或表扫描。

详细了解 HDInsight 群集 - ScanQueryTuningcandidate (超过 75% 的查询是完全扫描查询)

当有更新被阻止时,请检查区域计数

需要调整区域计数,以避免更新被阻止。 这可能需要通过添加新节点来纵向扩展群集。

详细了解 HDInsight 群集 - RegionCountCandidate(检查阻止更新时的区域计数)

考虑增加刷新器线程

区域服务器中的刷新队列大小超过 100,或者有更新经常被阻止。 建议优化刷新处理程序。

详细了解 HDInsight 群集 - FlushQueueCandidate(考虑增加刷新器线程)

考虑增加压缩线程以更快地完成压缩

区域服务器中的压缩队列超过 2000 个,这表明需要压缩更多的数据。 压缩速度较慢会影响读取性能,因为要读取的文件数更多。 更多没有压缩的文件也会影响与文件如何与 Azure 文件系统交互有关的堆使用量。

详细了解 HDInsight 群集 - CompactionQueueCandidate(请考虑增加压缩的压缩线程,以更快完成)

包含少于 6000 万行的带聚集列存储索引 (CCI) 的表

聚集列存储表将数据组织成多个段。 拥有较高的段质量是在列存储表中实现最佳查询性能的关键。 可根据压缩行组中的行数来测量分段质量。

详细了解 Synapse 工作区 - SynapseCCIGuidance(具有少于 6000 万行的聚集列存储索引 (CCI) 的表)

更新 SynapseManagementClient SDK 版本

新的 SynapseManagementClient 使用的是 .NET SDK 4.0 或更高版本。

详细了解 Synapse 工作区 - UpgradeSynapseManagementClientSDK(升级 SynapseManagementClient SDK 版本)

计算

使用托管磁盘防止磁盘 I/O 限制

你的虚拟机磁盘属于一个已达到其可伸缩性目标并且会受 I/O 限制的存储帐户。 若要防止虚拟机性能降级并简化存储管理,请使用托管磁盘。

详细了解虚拟机 - ManagedDisksStorageAccount(使用托管磁盘防止遇到磁盘 I/O 限制)

将托管磁盘从标准 HDD 转换为高级 SSD 以提高性能

我们注意到标准 HDD 磁盘正在接近性能目标。 Azure 高级 SSD 为运行 IO 密集型工作负荷的虚拟机提供高性能、低延迟的磁盘支持。 通过将标准 HDD 磁盘升级到高级 SSD 盘来提高磁盘性能。 升级需要重启 VM,这需要三到五分钟时间。

详细了解磁盘 - MDHDDtoPremiumForPerformance(将托管磁盘从标准 HDD 转换为高级 SSD,以提升性能)

启用加速网络以改善网络性能和延迟

我们检测到现有部署中可能支持加速网络功能的 VM 资源上未启用加速网络。 如果 VM OS 映像支持文档中所述的加速网络,请确保在这些 VM 上启用此免费功能,以最大程度地优化云中网络工作负荷的性能和延迟

详细了解虚拟机 - AccelNetConfiguration(启用加速网络以提高网络性能和改善延迟)

将 SSD 盘用于生产工作负载

我们注意到,你在同一 VM 上同时使用 SSD 盘和标准 HDD 磁盘。 通建议使用标准 HDD 托管磁盘进行开发测试和备份;我们建议你将高级 SSD 或标准 SSD 用于生产。 高级 SSD 为具有 IO 密集型工作负载的虚拟机提供高性能、低延迟的磁盘支持。 标准 SSD 提供一致且较低的延迟。 立即升级磁盘配置,以提高延迟、可靠性和可用性。 升级需要重启 VM,这需要三到五分钟时间。

详细了解虚拟机 - MixedDiskTypeToSSDPublic(将 SSD 磁盘用于生产工作负载)

将生产虚拟机与生产磁盘匹配以实现一致的性能和更好的延迟

如果要获得最佳性能,生产虚拟机需要生产磁盘。 我们发现你正在运行生产级别的虚拟机,但使用的是具有标准 HDD 的低性能磁盘。 升级附加到生产磁盘的磁盘(标准 SSD 或高级 SSD)将使你受益于更一致的体验和延迟改进。

详细了解虚拟机 - MatchProdVMProdDisks(将生产虚拟机与生产磁盘匹配,实现一致的性能并改善延迟)

加速网络可能需要停止和启动 VM

我们检测到,即使已请求了加速功能,现有部署中的 VM 资源上也没有连接加速网络。 在极少数情况下,可能需要在方便时停止并启动 VM,以重新连接 AccelNet。

详细了解虚拟机 - AccelNetDisengaged(加速网络可能需要停止和启动 VM)

利用超级磁盘为日志磁盘提供的低延迟,提高数据库工作负载性能

超级磁盘与数据库工作负载位于同一区域。 超级磁盘为你的数据库工作负载提供高吞吐量、高 IOPS 和一致的低延迟磁盘存储:对于 Oracle DB,现在可以在超级磁盘中使用 4k 或 512E 扇区大小,具体取决于你的 Oracle DB 版本。 对于 SQL Server,将超级磁盘用作日志磁盘可能会为数据库提供更高的性能。 请参阅此处的说明,了解如何将日志磁盘迁移到超级磁盘。

详细了解虚拟机 - AzureStorageVmUltraDisk(对于日志磁盘,利用超级磁盘的低延迟,提高数据库工作负载性能)

升级最活跃虚拟机的大小,以防止资源耗尽并提高性能

我们分析了过去 7 天的数据,发现虚拟机 (VM) 不同指标(即 CPU、内存和 VM IO)的利用率较高。 这些 VM 可能会遇到了性能问题,因为它们接近或已达到其 SKU 限制。 请考虑升级其 SKU 以提高性能。

详细了解虚拟机 - UpgradeSizeHighVMUtilV0 (升级最活跃虚拟机的大小,以防止资源耗尽并提高性能)

容器

检测到不受支持的 Kubernetes 版本

检测到不受支持的 Kubernetes 版本。 确保使用受支持的版本运行 Kubernetes 群集。

详细了解 Kubernetes 服务 - UnsupportedKubernetesVersionIsDetected(检测到不受支持的 Kubernetes 版本)

检测到不受支持的 Kubernetes 版本

检测到不受支持的 Kubernetes 版本。 确保使用受支持的版本运行 Kubernetes 群集。

详细了解 HDInsight 群集池 - UnsupportedHiloAKSVersionIsDetected(检测到不受支持的 Kubernetes 版本)

具有单节点池的群集

建议添加一个或多个节点池,而不是使用单个节点池。 多个节点池有助于将关键系统 Pod 与应用程序隔离,以防配置错误或未授权的应用程序 Pod 意外终止系统 Pod。

详细了解 Kubernetes 服务 - ClustersWithASingleNodePool(具有单节点池的群集)

将舰队 API 更新到最新版本

我们识别到过时的舰队 API 对订阅下资源的 SDK 调用。 建议切换到最新的 SDK 版本,这可确保接收最新功能和性能改进。

详细了解 Kubernetes 舰队管理器 | 预览版 - UpdateToLatestFleetApi(将舰队 API 更新为最新版本)

数据库

将 Azure Cosmos DB 查询页大小 (MaxItemCount) 配置为 -1

你为 Azure Cosmos DB 容器查询使用的查询页面大小是 100。 建议使用的页面大小是 -1,以提高扫描速度。

详细了解 Azure Cosmos DB 帐户 - CosmosDBQueryPageSize(将 Azure Cosmos DB 查询页面大小 (MaxItemCount) 配置为 -1)

将组合索引添加到 Azure Cosmos DB 容器

Azure Cosmos DB 容器正在运行 ORDER BY 查询,这会产生较高的请求单位 (RU) 费用。 建议将组合索引添加到容器的索引策略中,以减少 RU 使用量并缩短这些查询的延迟时间。

详细了解 Azure Cosmos DB 帐户 - CosmosDBOrderByHighRUCharge(将组合索引添加到 Azure Cosmos DB 容器)

优化 Azure Cosmos DB 索引策略,以仅对所需内容编制索引

Azure Cosmos DB 容器使用默认索引策略,该策略会为文档中的每个属性编制索引。 由于存储的是大型文档,因此会为大量属性编制索引,这会导致请求单位消耗较高且写入延迟增加。 要优化写入性能,建议将默认索引策略重写为仅为查询中使用的属性编制索引。

详细了解 Azure Cosmos DB 帐户 - CosmosDBDefaultIndexingWithManyPaths(优化 Azure Cosmos DB 索引策略,以仅对所需内容编制索引)

使用分层分区键以实现最佳数据分布

你的帐户具有自定义设置,可允许容器中的逻辑分区大小超过 20 GB 的限制。 Azure Cosmos DB 团队将此设置作为临时措施进行应用,为你提供了使用另一分区键重新设计应用程序架构的时间。 不建议将其用作长期解决方案,因为在提高限制时 SLA 保证不会得到认可。 你现在可以使用分层分区键(预览)来重新设计应用程序的架构。 使用此功能,你可以设置多达三个分区键(适用于使用合成密钥的多租户方案或工作负载),因此可以超出 20 GB 的限制。

详细了解 Azure Cosmos DB 帐户 - CosmosDBHierarchicalPartitionKey(使用分层分区键以实现最佳数据分发)

通过纵向扩展以优化资源利用率来增强性能

实现系统资源的效率最大化对于保持一流的性能至关重要。 我们的系统密切监视 CPU 使用率,当它在 12 小时内超过 90% 阈值时,会触发主动警报。 此警报不仅通知 Azure Cosmos DB for MongoDB vCore 用户 CPU 使用率提升,而且还提供有关纵向扩展到更高层级的宝贵指导。 通过升级到更可靠的层级,可以解锁改进的性能,并确保系统在运行时发挥最大潜力。

了解有关缩放和配置 Azure Cosmos DB for MongoDB vCore 群集的详细信息。

PerformanceBoostervCore

当 CPU 使用率在 12 小时的时间范围内超过 90% 时,用户会收到有关高使用率的通知。 此外,系统还建议他们纵向扩展到更高层级以获得更好的性能。

详细了解 Cosmos DB 帐户 - ScaleUpvCoreRecommendation (PerformanceBoostervCore)

缩放 MariaDB 服务器的存储限制

我们的系统显示,服务器可能受到约束,因为它即将达到当前预配的存储值的限制。 接近存储限制可能会导致性能下降或服务器被移动到只读模式。 为了确保持续的性能,我们建议增大预配的存储量,或者启用“自动增长”功能以实现自动的存储增长

详细了解 MariaDB 服务器 - OrcasMariaDbStorageLimit(缩放 MariaDB 服务器的存储限制)

增加 MariaDB 服务器 vCore 数

我们的系统显示,在过去 7 天的时间里,CPU 一直在使用率很高的情况下运行,这超出了允许的时限。 CPU 使用率过高可能导致查询性能下降。 为了提高性能,建议升级到更大的计算大小。

详细了解 MariaDB 服务器 - OrcasMariaDbCpuOverload(增加 MariaDB 服务器 vCore)

将 MariaDB 服务器扩展到更高的 SKU

我们的系统显示,服务器可能无法支持这些连接请求,因为给定 SKU 支持的最大连接数存在限制,这可能会导致出现大量的连接失败请求,从而对性能造成负面影响。 为了提高性能,建议通过增加 vCore 数或切换到内存优化 SKU 的方式升级到内存更高的 SKU。

详细了解 MariaDB 服务器 - OrcasMariaDbConcurrentConnection(将 MariaDB 服务器扩展到更高的 SKU)

将 MariaDB 服务器移到内存优化 SKU

我们的系统显示,此服务器的缓冲池中的变动率高,可能导致查询性能变慢和 IOPS 增高。 若要改进性能,请查看工作负载查询,看是否可以尽量减少所使用的内存。 如果无法这样做,建议升级到更高的 SKU,通过提高内存或存储大小来提高 IOPS。

详细了解 MariaDB 服务器 - OrcasMariaDbMemoryCache(将 MariaDB 服务器移动到内存优化 SKU)

提高审核日志的可靠性

我们的系统显示,服务器的审核日志可能已在过去一天内丢失。 当服务器遇到繁重的 CPU 工作负载或服务器在短时间内生成大量审核日志时,可能会出现审核日志丢失的情况。 建议仅使用以下服务器参数将审核用途所需的必要事件记录在日志中:audit_log_events、audit_log_exclude_users、audit_log_include_users。 如果服务器上的 CPU 使用率由于工作负载而较高,则建议增加服务器的 vCore 以提高性能。

详细了解 MariaDB 服务器 - OrcasMariaDBAuditLog(提高审核日志的可靠性)

缩放 MySQL Server 的存储限制

我们的系统显示,服务器可能受到约束,因为它即将达到当前预配的存储值的限制。 接近存储限制可能会导致性能下降或服务器被移动到只读模式。 为了确保持续的性能,我们建议增大预配的存储量,或者启用“自动增长”功能以实现自动的存储增长

详细了解 服务器 - OrcasMySQLStorageLimit(缩放 MySQL 服务器的存储限制)

将 MySQL 服务器扩展到更高的 SKU

我们的系统显示,服务器可能无法支持这些连接请求,因为给定 SKU 支持的最大连接数存在限制,这可能会导致出现大量的连接失败请求,从而对性能造成负面影响。 为了提高性能,建议通过增加 vCore 数或切换到内存优化 SKU 的方式升级到内存更高的 SKU。

详细了解MySQL 服务器 - OrcasMySQLConcurrentConnection(将 MySQL 服务器缩放到更高的 SKU)

增加 MySQL 服务器 vCore 数

我们的系统显示,在过去 7 天的时间里,CPU 一直在使用率很高的情况下运行,这超出了允许的时限。 CPU 使用率过高可能导致查询性能下降。 为了提高性能,建议升级到更大的计算大小。

详细了解MySQL 服务器 - OrcasMySQLConcurrentConnection(将 MySQL 服务器缩放到更高的 SKU)

将 MySQL 服务器移到内存优化 SKU

我们的系统显示,此服务器的缓冲池中的变动率高,可能导致查询性能变慢和 IOPS 增高。 若要改进性能,请查看工作负载查询,看是否可以尽量减少所使用的内存。 如果无法这样做,建议升级到更高的 SKU,通过提高内存或存储大小来提高 IOPS。

详细了解 MySQL 服务器 - OrcasMariaDbMemoryCache(将 MySQL 服务器移动到内存优化 SKU)

添加 MySQL 只读副本服务器

我们的系统显示,你可能正在运行读取密集型工作负载,导致此服务器出现资源争用情况。 资源争用可能导致服务器的查询性能下降。 为了提高性能,建议添加一个只读副本,将读取工作负荷的一部分卸载到该副本。

详细了解 MySQL 服务器 - OrcasMySQLReadReplica(添加 MySQL 只读副本服务器)

改进 MySQL 连接管理

我们的系统显示,连接到 MySQL 服务器的应用程序管理连接的性能可能欠佳,这可能会导致不必要的资源消耗和应用程序的总体延迟过高。 为了改进连接管理,建议你减少短期连接数并消除不必要的空闲连接。 可通过配置服务器端连接池程序(如 ProxySQL)来解决此问题。

详细了解 MySQL 服务器 - OrcasMySQLConnectionPooling(改进 MySQL 连接管理)

提高审核日志的可靠性

我们的系统显示,服务器的审核日志可能已在过去一天内丢失。 当服务器遇到繁重的 CPU 工作负载或服务器在短时间内生成大量审核日志时,可能会出现这种情况。 建议仅使用以下服务器参数将审核用途所需的必要事件记录在日志中:audit_log_events、audit_log_exclude_users、audit_log_include_users。 如果服务器上的 CPU 使用率由于工作负载而较高,则建议增加服务器的 vCore 以提高性能。

详细了解 MySQL 服务器 - OrcasMariaDBAuditLog(提高审核日志的可靠性)

通过优化 MySQL 临时表的大小来提高性能

我们的系统显示,由于临时表参数设置较低,MySQL 服务器可能会产生不必要的 I/O 开销。 这可能会导致发生不必要的基于磁盘的事务并降低性能。 建议增大“tmp_table_size”和“max_heap_table_size”参数值,以减少基于磁盘的事务数。

详细了解 MySQL 服务器 - OrcasMySqlTmpTables(通过优化 MySQL 临时表大小来提高性能)

缩短 MySQL 连接延迟

我们的系统显示,连接到 MySQL 服务器的应用程序管理连接的性能可能欠佳。 这可能会导致应用程序延迟较高。 为了缩短连接延迟,我们建议你启用连接重定向。 可通过启用 PHP 驱动程序的连接重定向功能来实现此目的。

详细了解 MySQL 服务器 - OrcasMySQLConnectionRedirection(改进 MySQL 连接延迟)

增加 MySQL 灵活服务器的存储限制

我们的系统显示,服务器可能受到约束,因为它即将达到当前预配的存储值的限制。 接近存储限制可能会导致性能下降或服务器被移动到只读模式。 为了确保持续的性能,我们建议增大预配的存储量。

详细了解 Azure Database for MySQL 灵活服务器 - OrcasMeruMySqlStorageUpsell(增加 MySQL 灵活服务器的存储限制)

将 MySQL 灵活服务器扩展到更高的 SKU

我们的系统显示,灵活服务器超出了与当前 SKU 关联的连接限制。 大量失败的连接请求可能会对服务器性能产生负面影响。 若要提高性能,我们建议增加 vCore 数或切换到更高的 SKU。

详细了解 Azure Database for MySQL 灵活服务器 - OrcasMeruMysqlConnectionUpsell(将 MySQL 灵活服务器扩展到更高的 SKU)

增加 MySQL 灵活服务器 vCore 数。

我们的系统显示,在过去 7 天的时间里,CPU 一直在使用率很高的情况下运行,这超出了允许的时限。 CPU 使用率过高可能导致查询性能下降。 为了提高性能,建议升级到更大的计算大小。

详细了解 Azure Database for MySQL 灵活服务器 - OrcasMeruMysqlCpuUpcell(增加 MySQL 灵活服务器虚拟核心。)

通过优化 MySQL 临时表的大小来提高性能。

我们的系统显示,由于临时表参数设置较低,MySQL 服务器可能会产生不必要的 I/O 开销。 不必要的 I/O 开销这可能会导致发生不必要的基于磁盘的事务并降低性能。 建议增大“tmp_table_size”和“max_heap_table_size”参数值,以减少基于磁盘的事务数。

详细了解 Azure Database for MySQL 灵活服务器 - OrcasMeruMysqlTmpTable(通过优化 MySQL 临时表的大小来提高性能。)

将 MySQL 服务器移到内存优化 SKU

我们的系统显示,此服务器的内存使用率很高,这可能导致查询性能变慢和 IOPS 增加。 若要改进性能,请查看工作负载查询,看是否可以尽量减少所使用的内存。 如果无法这样做,建议升级到更高的 SKU,通过提高内存或存储大小来提高 IOPS。

详细了解 Azure Database for MySQL 灵活服务器 - OrcasMeruMysqlMemoryUpsell(将 MySQL 服务器移动到内存优化 SKU)

添加 MySQL 只读副本服务器

我们的系统显示,你可能正在运行读取密集型工作负载,导致此服务器出现资源争用情况。 这可能导致服务器的查询性能下降。 为了提高性能,建议添加一个只读副本,将读取工作负荷的一部分卸载到该副本。

详细了解 Azure Database for MySQL 灵活服务器 - OrcasMeruMysqlReadReplicaUpsell(添加 MySQL 只读副本服务器)

增加 work_mem,避免磁盘在使用排序和哈希时过份溢出

我们的系统显示,配置 work_mem 对于 PostgreSQL 服务器来说过小,导致磁盘溢出和查询性能下降。 为了改进此情况,我们建议提高服务器的 work_mem 限制,以便减少在磁盘上进行排序或哈希的情况,并提高总体查询性能。

详细了解 PostgreSQL 服务器 - OrcasPostgreSqlWorkMem(增加 work_mem,避免磁盘在使用排序和哈希时过份溢出)

使用新的 Ev5 计算硬件将工作负荷性能提高 30%

使用新的 Ev5 计算硬件,可以将工作负荷性能提高 30%,同时获得更高的并发性和更好的吞吐量。 导航到 Microsoft Azure 门户上的“计算+存储”选项,切换到 Ev5 计算(无需额外付费)。 比起其他 VM 系列,Ev5 计算提供了 QPS 和延迟方面的最佳性能。

详细了解 Azure Database for MySQL 灵活服务器 - OrcasMeruMySqlComputeSeriesUpgradeEv5(使用新的 Ev5 计算硬件将工作负载性能提高 30%)

缩放 PostgreSQL 服务器的存储限制

我们的系统显示,服务器可能受到约束,因为它即将达到当前预配的存储值的限制。 接近存储限制可能会导致性能下降或服务器被移动到只读模式。 为了确保持续的性能,我们建议增大预配的存储量,或者启用“自动增长”功能以实现自动的存储增长

详细了解 PostgreSQL 服务器 - OrcasPostgreSqlStorageLimit(缩放 PostgreSQL 服务器的存储限制)

将 PostgreSQL 服务器扩展到更高的 SKU

我们的系统显示,服务器可能无法支持这些连接请求,因为给定 SKU 支持的最大连接数存在限制,这可能会导致出现大量的连接失败请求,这会对性能造成负面影响。 为了提高性能,建议通过增加 vCore 数或切换到内存优化 SKU 的方式升级到内存更高的 SKU。

详细了解 PostgreSQL 服务器 - OrcasPostgreSqlConcurrentConnection(将 PostgreSQL 服务器扩展到更高的 SKU)

将 PostgreSQL 服务器移到内存优化 SKU

我们的系统显示,此服务器的缓冲池中的变动率高,可能导致查询性能变慢和 IOPS 增高。 若要改进性能,请查看工作负载查询,看是否可以尽量减少所使用的内存。 如果无法这样做,建议升级到更高的 SKU,通过提高内存或存储大小来提高 IOPS。

详细了解 PostgreSQL 服务器 - OrcasPostgreSqlMemoryCache(将 PostgreSQL 服务器移动到内存优化 SKU)

添加 PostgreSQL 只读副本服务器

我们的系统显示,你可能正在运行读取密集型工作负载,导致此服务器出现资源争用情况。 资源争用可能导致服务器的查询性能下降。 为了提高性能,建议添加一个只读副本,将读取工作负荷的一部分卸载到该副本。

详细了解 PostgreSQL 服务器 - OrcasPostgreSqlReadReplica(添加 PostgreSQL 只读副本服务器)

增加 PostgreSQL 服务器 vCore 数

我们的系统显示,在过去 7 天的时间里,CPU 一直在使用率很高的情况下运行,这超出了允许的时限。 CPU 使用率过高可能导致查询性能下降。 为了提高性能,建议升级到更大的计算大小。

详细了解 PostgreSQL 服务器 - OrcasPostgreSqlCpuOverload(增加 PostgreSQL 服务器 vCore 数)

改进 PostgreSQL 连接管理

我们的系统显示,PostgreSQL 服务器可能无法有效地管理连接,这可能会导致不必要的资源消耗和应用程序的总体延迟过高。 为了改进连接管理,建议通过配置服务器端连接池程序(如 PgBouncer)来减少短期连接数并消除不必要的空闲连接。

详细了解 PostgreSQL 服务器 - OrcasPostgreSqlConnectionPooling(改进 PostgreSQL 连接管理)

提高 PostgreSQL 日志性能

我们的系统显示,你的 PostgreSQL 服务器已配置为输出详细的错误日志。 此设置对于排查数据库问题很有用,但也可能导致数据库性能下降。 为了提高性能,建议将 log_error_verbosity 参数更改为默认设置。

详细了解 PostgreSQL 服务器 - OrcasPostgreSqlLogErrorVerbosity(改进 PostgreSQL 日志性能)

在 Azure Database for PostgreSQL 上优化查询统计信息收集

我们的系统显示,你的 PostgreSQL 服务器已配置为使用 pg_stat_statements 模块跟踪查询统计信息。 虽然对故障排除非常有用,但它也会导致服务器性能降低。 为了提高性能,建议将 pg_stat_statements.track 参数更改为 NONE。

详细了解 PostgreSQL 服务器 - OrcasPostgreSqlStatStatementsTrack(在 Azure Database for PostgreSQL 上优化查询统计信息收集)

未进行故障排除时,优化 Azure Database for PostgreSQL 上的查询存储

我们的系统显示,你的 PostgreSQL 数据库已配置为使用 pg_qs.query_capture_mode 参数跟踪查询性能。 进行故障排除时,建议将 pg_qs.query_capture_mode 参数设置为“TOP”或“ALL”。 未进行故障排除时,建议将 pg_qs.query_capture_mode 参数设置为“NONE”。

详细了解 PostgreSQL 服务器 - OrcasPostgreSqlQueryCaptureMode(不进行故障排除的情况下,优化 Azure Database for PostgreSQL 上的查询存储)

增加 PostgreSQL 灵活服务器的存储限制

我们的系统显示,服务器可能受到约束,因为它即将达到当前预配的存储值的限制。 接近存储限制可能会导致性能下降或服务器被移动到只读模式。

详细了解 PostgreSQL 服务器 - OrcasPostgreSqlFlexibleServerStorageLimit(增加 PostgreSQL 灵活服务器的存储限制)

通过将 LoggingCollector 设置为 -1,优化日志记录设置

通过将 LoggingCollector 设置为 -1,优化日志记录设置

了解详细信息 [Azure Database for PostgreSQL - 单一服务器中的日志](/azurepostgresql/single-server/concepts-server-logs#configure-logging)。

通过将 LogDuration 设置为 OFF,优化日志记录设置

通过将 LogDuration 设置为 OFF,优化日志记录设置

了解详细信息 [Azure Database for PostgreSQL - 单一服务器中的日志](/azurepostgresql/single-server/concepts-server-logs#configure-logging)。

通过将 LogStatement 设置为 NONE,优化日志记录设置

通过将 LogStatement 设置为 NONE,优化日志记录设置

了解详细信息 [Azure Database for PostgreSQL - 单一服务器中的日志](/azurepostgresql/single-server/concepts-server-logs#configure-logging)。

通过将 ReplaceParameter 设置为 OFF,优化日志记录设置

通过将 ReplaceParameter 设置为 OFF,优化日志记录设置

了解详细信息 [Azure Database for PostgreSQL - 单一服务器中的日志](/azurepostgresql/single-server/concepts-server-logs#configure-logging)。

通过将 LoggingCollector 设置为 OFF,优化日志记录设置

通过将 LoggingCollector 设置为 OFF,优化日志记录设置

了解详细信息 [Azure Database for PostgreSQL - 单一服务器中的日志](/azurepostgresql/single-server/concepts-server-logs#configure-logging)。

优化 Azure Database for PostgreSQL 上的 log_statement 设置

我们的系统显示,你已启用 log_statement,为提高性能,可将其设置为“NONE”

详细了解 Azure Database for PostgreSQL 灵活服务器 - OrcasMeruMeruLogStatement(优化 Azure Database for PostgreSQL 上的 log_statement 设置)

增加 work_mem,避免磁盘在使用排序和哈希时过份溢出

我们的系统显示,配置 work_mem 对于 PostgreSQL 服务器来说过小,从而导致磁盘溢出和查询性能下降。 我们建议提高服务器的 work_mem 限制,以便减少在磁盘上进行排序或哈希的情况,并提高总体查询性能。

详细了解 Azure Database for PostgreSQL 灵活服务器 - OrcasMeruMeruWorkMem(增加 work_mem,避免磁盘在使用排序和哈希时过份溢出)

通过启用智能优化提高 PostgreSQL 灵活服务器性能

我们的系统表明,可通过启用智能优化来提高存储性能

详细了解 Azure Database for PostgreSQL 灵活服务器 - OrcasMeruIntelligentTuning(通过启用智能优化来改进 PostgreSQL 灵活服务器性能)

优化 Azure Database 上的 PostgreSQL 的 log_duration 设置

我们的系统显示,你已启用 log_duration,为提高性能,可将其设置为“OFF”

详细了解 Azure Database for PostgreSQL 灵活服务器 - OrcasMeruMeruLogDuration(优化 Azure Database 上 PostgreSQL 的 log_duration 设置)

优化 Azure Database for PostgreSQL 上的 log_min_duration 设置

我们的系统显示,你已启用 log_min_duration,为提高性能,可将其设置为 -1

详细了解 Azure Database for PostgreSQL 灵活服务器 - OrcasMeruMeruLogMinDuration(优化 Azure Database 上 PostgreSQL 的 log_min_duration 设置)

优化 Azure Database for PostgreSQL 的 pg_qs.query_capture_mode 设置

我们的系统显示,你已启用 pg_qs.query_capture_mode,为提高性能,可将其设置为“NONE”

详细了解 Azure Database for PostgreSQL 灵活服务器 - OrcasMeruMeruQueryCaptureMode(优化 Azure Database 上 PostgreSQL 的 pg_qs.query_capture_mode 设置)

通过启用 PGBouncer 优化 PostgreSQL 性能

我们的系统显示,可通过启用 PGBouncer 来提高 PostgreSQL 性能

详细了解 Azure Database for PostgreSQL 灵活服务器 - OrcasMeruOrcasPostgreSQLConnectionPooling(通过启用 PGBouncer 优化 PostgreSQL 性能)

优化 Azure Database 上的 PostgreSQL 的 log_error_verbosity 设置

我们的系统显示,你已启用 log_error_verbosity,为提高性能,可将其设置为“DEFAULT”

详细了解 Azure Database for PostgreSQL 灵活服务器 - OrcasMeruMeruLogErrorVerbosity(优化 Azure Database 上 PostgreSQL 的 log_error_verbosity 设置)

将数据库从 SSPG 迁移到 FSPG

考虑我们的新产品 Azure Database for PostgreSQL 灵活服务器,它提供了更丰富的功能,例如区域复原 HA、可预测的性能、最大控制、自定义维护时段、成本优化控制和简化的开发人员体验。

详细了解 Azure Database for PostgreSQL 灵活服务器 - OrcasPostgreSqlMeruMigration(将数据库从 SSPG 迁移到 FSPG)

将 PostgreSQL 灵活服务器移到内存优化 SKU

我们的系统显示,此服务器的缓冲池中的变动率高,这可能会导致查询性能变慢和 IOPS 增高。 若要改进性能,请查看工作负载查询,看是否可以尽量减少所使用的内存。 如果无法这样做,建议升级到更高的 SKU,通过提高内存或存储大小来提高 IOPS。

详细了解 PostgreSQL 服务器 - OrcasMeruMemoryUpsell(将 PostgreSQL 灵活服务器移到内存优化 SKU)

使用高网络带宽运行,改进缓存和应用程序的性能

不在网络带宽高的情况下运行时,缓存实例的性能最佳,带宽高会导致不响应、数据丢失或不可用。 应用最佳做法来降低网络带宽,或者缩放为其他大小或 SKU 以增加容量。

详细了解 Redis 缓存服务器 - RedisCacheNetworkBandwidth(在使用高网络带宽运行时提高缓存和应用程序性能)

使用多个连接的客户端运行,改进缓存和应用程序的性能

不在网络带宽高的情况下运行时,缓存实例的性能最佳,带宽高会导致不响应、数据丢失或不可用。 应用最佳做法来降低服务器负载,或者缩放为其他大小或 SKU 以增加容量。

详细了解 Redis 缓存服务器 - RedisCacheConnectedClients(在使用许多已连接客户端运行时提高缓存和应用程序性能)

使用多个连接的客户端运行,改进缓存和应用程序的性能

不在网络带宽高的情况下运行时,缓存实例的性能最佳,带宽高会导致不响应、数据丢失或不可用。 应用最佳做法来降低服务器负载,或者缩放为其他大小或 SKU 以增加容量。

详细了解 Redis 缓存服务器 - RedisCacheConnectedClientsHigh(在使用许多已连接客户端运行时提高缓存和应用程序性能)

在服务器负载高的情况下运行时,改进缓存和应用程序的性能

不在网络带宽高的情况下运行时,缓存实例的性能最佳,带宽高会导致不响应、数据丢失或不可用。 应用最佳做法来降低服务器负载,或者缩放为其他大小或 SKU 以增加容量。

详细了解 Redis 缓存服务器 - RedisCacheServerLoad(在服务器负载较高的情况下运行时提高缓存和应用程序性能)

在服务器负载高的情况下运行时,改进缓存和应用程序的性能

不在网络带宽高的情况下运行时,缓存实例的性能最佳,带宽高会导致不响应、数据丢失或不可用。 应用最佳做法来降低服务器负载,或者缩放为其他大小或 SKU 以增加容量。

详细了解 Redis 缓存服务器 - RedisCacheServerLoadHigh(在服务器负载较高的情况下运行时提高缓存和应用程序性能)

在内存压力高的情况下运行时,改进缓存和应用程序的性能

不在网络带宽高的情况下运行时,缓存实例的性能最佳,带宽高会导致不响应、数据丢失或不可用。 应用最佳做法来减少使用的内存,或者缩放为其他大小或 SKU 以增加容量。

详细了解 Redis 缓存服务器 - RedisCacheUsedMemory(在内存压力较高的情况下运行时提高缓存和应用程序性能)

内存 rss 使用率高时改善缓存和应用程序性能。

不在网络带宽高的情况下运行时,缓存实例的性能最佳,带宽高会导致不响应、数据丢失或不可用。 应用最佳做法来减少使用的内存,或者缩放为其他大小或 SKU 以增加容量。

详细了解 Redis 缓存服务器 - RedisCacheUsedMemoryRSS(在内存压力较高的情况下提高缓存和应用程序性能)

当运行客户端应用程序的主机能够跟上缓存的响应时,缓存实例的性能最佳

当运行客户端应用程序的主机能够跟上缓存的响应时,缓存实例的性能最佳。 如果客户端主机在内存、CPU 或网络带宽上运行热,则缓存响应不会足够快地到达应用程序,可能会导致更高的延迟。

详细了解 Redis 缓存服务器 - UnresponsiveClient(当运行客户端应用程序的主机能够跟上缓存的响应时,缓存实例的性能最佳。)

DevOps

更新到最新的 AMS API 版本

我们已确定对不建议使用的 Azure 媒体服务 (AMS) API 版本的调用。 建议切换到最新的 AMS API 版本,以确保不间断地访问 AMS、最新功能并改进性能。

详细了解监视器 - UpdateToLatestAMSApiVersion(更新到最新的 AMS API 版本)

升级到最新的工作负载 SDK 版本

升级到最新的工作负载 SDK 版本,以便在模型质量、性能和服务可用性方面获得最佳效果。

详细了解监视器 - UpgradeToLatestAMSSdkVersion(升级到最新的工作负载 SDK 版本)

集成

将 API 管理资源升级到备用版本

你的订阅在已计划弃用的版本上运行。 2023 年 9 月 30 日,2021 年 8 月 1 日之前的 Azure API 管理服务的所有 API 版本都会停用,并且 API 调用将会失败。 升级到映像的较新版本,以防止工作负载中断。

详细了解 API 管理 - apimgmtdeprecation(将 API 管理资源升级到替代版本)

网络

升级 SDK 版本建议

最新版本的 Azure Front Door Standard 和 Premium 客户端库或 SDK 包含对客户报告的问题的修复,这些问题通过我们的 QA 过程主动识别。 最新版除了新功能,还有可靠性和性能优化,可以改进你在使用 Azure Front Door 标准版和高级版时的总体体验。

详细了解 Front Door 配置文件 - UpgradeCDNToLatestSDKLanguage(升级 SDK 版本建议)

升级 SDK 版本建议

最新版 Azure 流量收集器 SDK 包含对通过 QA 流程主动识别到的问题的修复,支持最新的资源模型并提供可靠性和性能优化,可以改进 ATC 的整体使用体验。

详细了解 Azure 流量收集器 - UpgradeATCToLatestSDKLanguage(升级 SDK 版本建议)

升级 ExpressRoute 线路带宽以满足带宽需求

最近你使用的线路带宽超过了所购买线路带宽的 90%。 如果超出分配的带宽,则通过 ExpressRoute 发送的数据包发生丢包的情况会增加。 如果你的带宽需求仍然很高,请升级线路带宽以保持性能。

详细了解 ExpressRoute 线路 - UpgradeERCircuitBandwidth(升级 ExpressRoute 线路带宽,以满足带宽需求)

与 Azure 的专用连接遇到可预测性更高、更一致的延迟

通过使用 Azure ExpressRoute 将本地网络扩展到 Azure,提高业务关键应用的性能、隐私性和可靠性。 通过云交换设施或 POP 和 IPVPN 连接,直接从 WAN 建立专用 ExpressRoute 连接。

详细了解订阅 - AzureExpressRoute(通过与 Azure 的专用连接体验更可预测、更一致的延迟)

将工作负载 API 升级到最新版本(Azure SAP 解决方案中心 API)

我们已发现对此资源组下资源的过时工作负载 API 版本的调用。 建议切换到最新的工作负载 API 版本,以确保不间断地访问 Azure SAP 解决方案中心的最新功能和性能改进。 如果建议中显示了多个 SAP 解决方案虚拟实例 (VIS),请确保更新所有 VIS 资源的 API 版本。

详细了解订阅 - UpdateToLatestWaasApiVersionAtSub(将工作负载 API 升级到最新版本(Azure SAP 解决方案中心 API))

将工作负载 SDK 升级到最新版本(Azure SAP 解决方案中心 SDK)

我们发现此资源组中的资源调用了过时的工作负载 SDK 版本。 升级到最新的工作负载 SDK 版本,以便在 Azure SAP 解决方案中心的模型质量、性能和服务可用性方面获得最新功能和最佳效果。 如果建议中显示了多个 SAP 解决方案虚拟实例 (VIS),请确保更新所有 VIS 资源的 SDK 版本。

详细了解订阅 - UpgradeToLatestWaasSdkVersionAtSub(将工作负载 SDK 升级到最新版本(Azure SAP 解决方案中心 SDK))

将 DNS 生存时间配置为 60 秒

生存时间 (TTL) 会影响客户端向 Azure 流量管理器发出请求时客户端将获得的响应的时效性。 减少 TTL 值意味着在发生故障转移的情况下,客户端可以更快地路由到正常运行的终结点。 将 TTL 配置为 60 秒,以便尽快将流量路由到正常运行的终结点。

详细了解流量管理器配置文件 - ProfileTTL(将 DNS 生存时间配置为 60 秒)

将 DNS 生存时间配置为 20 秒

生存时间 (TTL) 会影响客户端向 Azure 流量管理器发出请求时客户端将获得的响应的时效性。 减少 TTL 值意味着在发生故障转移的情况下,客户端可以更快地路由到正常运行的终结点。 将 TTL 配置为 20 秒,以便尽快将流量路由到正常运行的终结点。

详细了解流量管理器配置文件 - FastFailOverTTL(将 DNS 生存时间配置为 20 秒)

将 DNS 生存时间配置为 60 秒

生存时间 (TTL) 会影响客户端向 Azure 流量管理器发出请求时客户端将获得的响应的时效性。 减少 TTL 值意味着在发生故障转移的情况下,客户端可以更快地路由到正常运行的终结点。 将 TTL 配置为 60 秒,以便尽快将流量路由到正常运行的终结点。

详细了解流量管理器配置文件 - ProfileTTL(将 DNS 生存时间配置为 60 秒)

考虑增加虚拟网络网关 SKU 的大小,以解决持续的 CPU 高使用率问题

在高流量负载下,VPN 网关可能会因为 CPU 使用率过高而丢弃数据包。

详细了解虚拟网络网关 - HighCPUVNetGateway(考虑增加虚拟网络 (VNet) 网关 SKU 的大小,以解决持续的高 CPU 使用率问题)

确保应用程序网关上有足够的实例来支持流量

Azure 应用程序网关最近运行的利用率较高,在重负载下,你可能会遇到流量丢失或延迟增加。 请务必相应地缩放 Azure 应用程序网关并添加缓冲区,以便应对流量激增或峰值情况,最大程度地降低这些情况在 QoS 中的可能影响。 应用程序网关 v1 SKU (Standard/WAF) 支持手动缩放,v2 SKU (Standard_v2/WAF_v2) 支持手动和自动缩放。 对于手动缩放,请增加实例计数。 如果启用了自动缩放,请确保将最大实例计数设置为较高值,以便 Azure 应用程序网关可以随着流量增加而横向扩展。

详细了解应用程序网关 - HotAppGateway(确保在应用程序网关上有足够的实例,以支持你的流量)

安全性

更新证明 API 版本

我们识别到来自过时的证明 API 对此订阅下资源的 API 调用。 建议切换到最新的证明 API 版本。 需要更新现有的代码,才能使用最新的 API 版本。 使用最新的 API 版本可确保你获得最新功能和性能改进。

详细了解证明提供程序 - UpgradeAttestationAPI(更新证明 API 版本)

更新 Key Vault SDK 版本

新的 Key Vault 客户端库分为密钥、机密和证书 SDK,它们与建议的 Azure 标识库相集成,以跨所有语言和环境对 Key Vault 提供无缝身份验证。 该客户端库还包含针对问题的性能修复,这些问题有客户报告的,也有我们通过 QA 过程主动标识的。 如果 Key Vault 与 Azure 存储、磁盘或其他 Azure 服务集成,这些服务可能使用旧的 Key Vault SDK,而当前所有自定义应用程序都使用 .NET SDK 4.0 或更高版本,请关闭此建议。

详细了解 Key Vault - UpgradeKeyVaultSDK(更新 Key Vault SDK 版本)

更新 Key Vault SDK 版本

新的 Key Vault 客户端库分为密钥、机密和证书 SDK,它们与建议的 Azure 标识库相集成,以跨所有语言和环境对 Key Vault 提供无缝身份验证。 该客户端库还包含针对问题的性能修复,这些问题有客户报告的,也有我们通过 QA 过程主动标识的。

重要

请注意,只能修正针对有权访问的自定义应用程序的建议。 由于与存储、磁盘加密等其他 Azure 服务的集成,可以显示建议,这些服务正在更新到我们的 SDK 的新版本。 如果在所有应用程序中使用 .NET 4.0,请关闭此建议。

存储

将“放置 Blob”用于不到 256 MB 的 Blob

写入 256 MB(如果是使用 2016-05-31 之前的 REST 版本的请求,则为 64 MB)或以下的块 Blob 时,可以使用“放置 Blob”通过单个写入操作将其整体上传。 根据你的聚合指标,我们认为你的存储帐户的写入操作可以进行优化。

详细了解存储帐户 - StorageCallPutBlob(对小于 256 MB 的 blob 使用“放置 Blob”)

增加高级文件共享的预配大小以避免限制请求

你对高级文件共享的请求受限,因为已达到每秒 I/O 操作数 (IOPS) 或文件共享吞吐量限制。 要防止请求受限,请增加高级文件共享的大小。

详细了解存储帐户 - AzureStorageAdvisorAvoidThrottlingPremiumFiles(增加高级文件共享的预配大小以避免限制请求)

创建表列中的统计信息

我们检测到你缺少表统计信息,这可能会影响查询性能。 查询优化器使用统计信息来估计基数或查询结果中的行数,以便创建高质量的查询计划。

详细了解 SQL 数据仓库 - CreateTableStatisticsSqlDW(针对表列创建统计信息)

去除数据倾斜以提高查询性能

我们检测到分布数据倾斜大于 15%,这可能导致代价高昂的性能瓶颈。

详细了解 SQL 数据仓库 - DataSkewSqlDW(删除数据倾斜以提高查询性能)

更新表列中的统计信息

我们检测到你没有最新的表统计信息,这可能会影响查询性能。 查询优化器使用最新统计信息来估计基数或查询结果中的行数,以便创建高质量的查询计划。

详细了解 SQL 数据仓库 - UpdateTableStatisticsSqlDW(针对表列更新统计信息)

通过纵向扩展优化 SQL 数据仓库的缓存利用率

我们检测到你的缓存使用率较高但命中率较低,这表示缓存逐出率较高,这可能会影工作负载的性能。

详细了解 SQL 数据仓库 - SqlDwIncreaseCacheCapacity(使用 SQL 数据仓库纵向扩展,从而优化缓存利用率)

纵向扩展或更新资源类,以降低与 SQL 数据仓库的 tempdb 争用

我们检测到你的 tempdb 使用率高,这可能会影响工作负载的性能。

详细了解 SQL 数据仓库 - SqlDwReduceTempdbContention(使用 SQL 数据仓库纵向扩展或更新资源类,从而缓解 tempdb 争用情况)

通过 SQL 数据仓库将表转换为复制表

我们检测到你可能会从使用复制表中受益。 复制表可以避免成本高昂的数据移动操作,并显著提高工作负载的性能。

详细了解 SQL 数据仓库 - SqlDwReplicateTable(使用 SQL 数据仓库将表转换为重复的表)

拆分存储帐户中的暂存文件以提高加载性能

我们发现,你可以通过拆分存储帐户中暂存的压缩文件来提高负载吞吐量。 推荐的做法是,将压缩文件拆分为 60 个或更多个小文件,以最大限度地提高负载的并行性。

详细了解 SQL 数据仓库 - FileSplittingGuidance(拆分存储帐户中的暂存文件以提高加载性能)

加载时增加批大小,以最大限度提高负载吞吐量、数据压缩和查询性能

我们发现,在向数据库中进行加载时,可以通过增加批大小来提高负载性能和吞吐量。 请考虑使用 COPY 语句。 如果无法使用 COPY 语句,请在使用诸如 SQLBulkCopy API 或 BCP 之类的加载实用程序时考虑增加批大小 - 较好的经验做法是采用 100K 到 1M 行之间的批大小。

详细了解 SQL 数据仓库 - LoadBatchSizeGuidance(在加载时提高批大小,以最大限度地提高负载吞吐量、数据压缩和查询性能)

将存储帐户归置到同一区域,以便在加载时最大程度地减少延迟

我们检测到你正在从不同于 SQL 池的区域进行加载。 请考虑从与 SQL 池位于同一区域内的存储帐户进行加载,以最大程度地减少加载数据时的延迟。

详细了解 SQL 数据仓库 - ColocateStorageAccount(将存储帐户归置到同一区域,以便在加载时最大程度地减少延迟)

将存储客户端库升级到最新版本,以提高可靠性和性能

最新版存储客户端库/SDK 包含问题修复,这些问题有客户报告的,也有我们通过 QA 过程主动标识的。 最新版除了新功能,还有可靠性和性能优化,可以改进你在使用 Azure 存储时的总体体验。

详细了解存储帐户 - UpdateStorageSDK(将存储客户端库升级到最新版本,以提高可靠性和性能)

将存储客户端库升级到最新版本,以提高可靠性和性能

最新版存储客户端库/SDK 包含问题修复,这些问题有客户报告的,也有我们通过 QA 过程主动标识的。 最新版除了新功能,还有可靠性和性能优化,可以改进你在使用 Azure 存储时的总体体验。

详细了解存储帐户 - UpdateStorageDataMovementSDK(将存储客户端库升级到最新版本,以提高可靠性和性能)

升级到标准 SSD 盘以获得一致且改进的性能

由于你正在标准 HDD 托管磁盘上运行 IaaS 虚拟机工作负载,请注意,现在所有 Azure VM 类型都可以使用标准 SSD 盘选项。 标准 SSD 盘是一种经济高效的存储选项,已针对需要一致性能的企业工作负荷进行优化。 立即升级磁盘配置,以提高延迟、可靠性和可用性。 升级需要重启 VM,这需要三到五分钟时间。

详细了解存储账户 - StandardSSDForNonPremVM(升级到标准 SSD 磁盘以获得一致且改善的性能)

使用高级性能块 blob 存储

一个或多个存储帐户的已存储块 blob 数据存在每 GB 事务率过高的问题。 将高级性能块 blob 存储而非标准性能存储用于那些需要快速存储响应时间和/或高事务率的工作负荷,这样可能会节省存储成本。

详细了解存储帐户 - PremiumBlobStorageAccount(使用高级性能块 Blob 存储)

将非托管磁盘从标准 HDD 转换为高级 SSD 以提高性能

我们注意到你的非托管 HDD 磁盘正在接近性能目标。 Azure 高级 SSD 为运行 IO 密集型工作负荷的虚拟机提供高性能、低延迟的磁盘支持。 通过将标准 HDD 磁盘升级到高级 SSD 盘来提高磁盘性能。 升级需要重启 VM,这需要三到五分钟时间。

详细了解存储账户 - UMDHDDtoPremiumForPerformance(将 非托管磁盘从标准 HDD 转换为高级 SSD,以提升性能)

在服务器组中分布数据,以在节点间分布工作负载

数据似乎未在此服务器组中分发,而是仍保留在协调器中。 若要获得完整的超大规模 (Citus) 权益,请在服务器组中的工作器节点上分布数据。

详细了解超大规模 (Citus) 服务器组 - OrcasPostgreSqlCitusDistributeData(在服务器组中分布数据,以在节点间分布工作负载)

重新平衡超大规模 (Citus) 服务器组中的数据,以在工作器节点之间更均匀地分配工作负载

在此超大规模 (Citus) 服务器组中,似乎数据在工作器节点之间未取得良好的平衡。 为了有效地使用超大规模 (Citus) 服务器组的每个工作器节点,请重新平衡服务器组中的数据。

详细了解超大规模 (Citus) 服务器组 - OrcasPostgreSqlCitusRebalanceData(重新平衡超大规模 (Citus) 服务器组中的数据,以更均匀地在工作器节点之间分配工作负载)

虚拟桌面基础结构

更改深度优先负载均衡主机池的最大会话限制以提高 VM 性能

深度优先负载均衡使用最大会话限制来确定可以在单个会话主机上进行并发会话的用户数量上限。 如果最大会话限制太高,所有用户会话将被定向到同一会话主机,这可能会导致性能和可靠性问题。 因此,在将主机池设置为具有深度优先负载均衡时,还应根据部署的配置和 VM 的容量设置适当的最大会话限制。 若要解决此问题,请打开主机池的属性,然后更改“最大会话限制”设置旁边的值。

详细了解主机池 - ChangeMaxSessionLimitForDepthFirstHostPool(更改深度第一个负载均衡主机池的最大会话限制,以提高 VM 性能)

Web

将应用服务计划迁移到 PremiumV2 以提高性能

应用在过去 3 天内每天处理 1000 多个请求。 高级 V2 应用服务层级提供的更高性能的基础结构可能对应用有益。 与以前的实例相比,高级 V2 层级具有 Dv2 系列 VM,此系列 VM 配备更快的处理器和 SSD 存储以及双倍的内存-内核比。 在我们的文档中详细了解如何升级到高级 V2。

详细了解应用服务 - AppServiceMoveToPremiumV2(将应用服务计划移到 PremiumV2 以提高性能)

检查应用服务资源的出站连接

应用打开了过多的 TCP/IP 套接字连接。 超出临时 TCP/IP 端口连接限制可能导致应用出现意外的连接问题。

详细了解应用服务 - AppServiceOutboundConnections(检查来自应用服务资源的出站连接)