Azure Advisor を使用して Azure アプリケーションのパフォーマンスを向上させるImprove performance of Azure applications with Azure Advisor

Azure Advisor のパフォーマンスに関する推奨事項は、ビジネスに不可欠なアプリケーションのスピードと応答性を向上させるために役立ちます。Azure Advisor performance recommendations help improve the speed and responsiveness of your business-critical applications. Advisor のパフォーマンスに関する推奨事項は、Advisor ダッシュボードの [パフォーマンス] タブで取得できます。You can get performance recommendations from Advisor on the Performance tab of the Advisor dashboard.

Traffic Manager プロファイルの DNS Time to Live を短縮して迅速に正常なエンドポイントにフェールオーバーするReduce DNS time to live on your Traffic Manager profile to fail over to healthy endpoints faster

Traffic Manager プロファイルで Time to Live (TTL) 設定を使用すると、特定のエンドポイントがクエリに応答しなくなった場合にエンドポイントを切り替える時間を指定できます。Time to Live (TTL) settings on your Traffic Manager profile allow you to specify how quickly to switch endpoints if a given endpoint stops responding to queries. TTL 値を減らすと、クライアントは機能しているエンドポイントに短時間でルーティングされるようになります。Reducing the TTL values means that clients will be routed to functioning endpoints faster.

Azure Advisor は、長い TTL が構成された Traffic Manager プロファイルを識別し、プロファイルが高速フェールオーバーに構成されているかどうかに応じて TTL を 20 秒または 60 秒に構成することを推奨します。Azure Advisor identifies Traffic Manager profiles with a longer TTL configured and recommends configuring the TTL to either 20 seconds or 60 seconds depending on whether the profile is configured for Fast Failover.

SQL DB Advisor によるデータベースのパフォーマンス向上Improve database performance with SQL DB Advisor

Advisor は、すべての Azure リソースに関する推奨事項を、一貫性がある統合された形で提示します。Advisor provides you with a consistent, consolidated view of recommendations for all your Azure resources. SQL Database Advisor と統合して、SQL Azure Database のパフォーマンスを向上させるための推奨事項を生成します。It integrates with SQL Database Advisor to bring you recommendations for improving the performance of your SQL Azure database. SQL Database Advisor は、SQL Azure Database の使用履歴を分析することで、パフォーマンスを評価します。 SQL Database Advisor assesses the performance of your SQL Azure databases by analyzing your usage history. その後、データベースの一般的なワークロードを実行する上で最適な推奨事項を提示します。It then offers recommendations that are best suited for running the database’s typical workload.

注意

推奨事項を取得するには、データベースを約 1 週間使用し、その週の間に、何らかの一貫性のあるアクティビティが行われている必要があります。To get recommendations, a database must have about a week of usage, and within that week there must be some consistent activity. SQL Database Advisor は、ランダムでむらのあるアクティビティよりも、一貫性のあるアクティビティのクエリ パターンをより簡単に最適化できます。SQL Database Advisor can optimize more easily for consistent query patterns than for random bursts of activity.

SQL Database Advisor の詳細については「SQL Database Advisor」を参照してください。For more information about SQL Database Advisor, see SQL Database Advisor.

App Service のパフォーマンスと信頼性の向上Improve App Service performance and reliability

Azure Advisor は、App Services のエクスペリエンスを向上させ、関連するプラットフォームの機能を検出するためのベスト プラクティスの推奨事項を統合します。Azure Advisor integrates best practices recommendations for improving your App Services experience and discovering relevant platform capabilities. App Services に関する推奨事項の例を次に示します。Examples of App Services recommendations are:

  • アプリの実行時にメモリや CPU のリソースが使い尽くされるインスタンスの検出と軽減オプションの提供。Detection of instances where memory or CPU resources are exhausted by app runtimes with mitigation options.
  • Web アプリやデータベースなどのリソースの配置によってパフォーマンスの向上とコストの削減を実現できるインスタンスの検出。Detection of instances where collocating resources like web apps and databases can improve performance and lower cost.

App Services に関する推奨事項の詳細については、「Azure App Service のベスト プラクティスを参照してください。For more information about App Services recommendations, see Best Practices for Azure App Service.

Managed Disks を使用してディスク I/O スロットリングを防ぐUse Managed Disks to prevent disk I/O throttling

Advisor では、スケーラビリティ ターゲットに達しているストレージ アカウントに属している仮想マシンが識別されます。Advisor will identify virtual machines that belong to a storage account that is reaching its scalability target. この条件により、これらの VM は I/O スロットリングを受けやすくなります。This condition makes those VMs susceptible to I/O throttling. Advisor では、これらの仮想マシンが Managed Disks を使用してパフォーマンスの低下を防ぐことを推奨しています。Advisor will recommend that they use Managed Disks to prevent performance degradation.

Premium Storage を使用して仮想マシンのディスクのパフォーマンスと信頼性を向上させるImprove the performance and reliability of virtual machine disks by using Premium Storage

Advisor では、ストレージ アカウントでトランザクション量の多い Standard ディスクがある仮想マシンが識別されて、Premium ディスクへのアップグレードが推奨されます。Advisor identifies virtual machines with standard disks that have a high volume of transactions on your storage account and recommends upgrading to premium disks.

Azure Premium Storage は、高負荷の I/O ワークロードを実行する仮想マシン向けに高パフォーマンスで待ち時間の少ないディスク サポートを提供します。Azure Premium Storage delivers high-performance, low-latency disk support for virtual machines that run I/O-intensive workloads. Premium Storage アカウントを使用する仮想マシンのディスクでは、ソリッド ステート ドライブ (SSD) にデータを格納します。Virtual machine disks that use premium storage accounts store data on solid-state drives (SSDs). アプリケーションで最適なパフォーマンスを実現するには、高い IOPS を必要とする仮想マシン ディスクは Premium Storage に移行することをお勧めします。For the best performance for your application, we recommend that you migrated any virtual machine disks requiring high IOPS to premium storage.

SQL データ ウェアハウス テーブルのデータ スキューを除去してクエリのパフォーマンスを向上させるRemove data skew on your SQL data warehouse table to increase query performance

データ スキューは、ワークロードの実行時に不要なデータの移動やリソースのボトルネックを引き起こす可能性があります。Data skew can cause unnecessary data movement or resource bottlenecks when running your workload. Advisor は 15% を超える分散データスキューを検出し、データの再分散とテーブルの分散キーの再選択を行うことをお勧めします。Advisor will detect distribution data skew greater than 15% and recommend that you redistribute your data and revisit your table distribution key selections. スキューの識別と除去の詳細については、スキューのトラブルシューティングに関する記事を参照してください。To learn more about identifying and removing skew, see troubleshooting skew.

SQL データ ウェアハウス テーブルの古いテーブル統計情報を作成するか更新してクエリのパフォーマンスを向上させるCreate or update outdated table statistics on your SQL data warehouse table to increase query performance

Advisor は、最新のテーブル統計状態がないテーブルを識別し、テーブル統計を作成または更新することをお勧めします。Advisor identifies tables that do not have up-to-date table statistics and recommends creating or updating table statistics. SQL データウェアハウスのクエリ オプティマイザーは、最新の統計を使用してクエリ結果のカーディナリティまたは行数を推定して、最速のパフォーマンスをもたらす高品質のクエリ プランを作成できるようにします。The SQL data warehouse query optimizer uses up-to-date statics to estimate the cardinality or number of rows in the query result that enables the query optimizer to create a high-quality query plan for fastest performance.

スケールアップして SQL Data Warehouse テーブルでのキャッシュ使用率を最適化し、クエリのパフォーマンスを向上させるScale up to optimize cache utilization on your SQL Data Warehouse tables to increase query performance

Azure Advisor では、SQL Data Warehouse でキャッシュ使用率が高い場合と、ヒット率が低い場合が検出されます。Azure Advisor detects if your SQL Data Warehouse has high cache used percentage and a low hit percentage. この状態は、SQL Data Warehouse のパフォーマンスに影響を与える可能性がある高いキャッシュ削除を示しています。This condition indicates high cache eviction, which can impact the performance of your SQL Data Warehouse. Advisor では、SQL Data Warehouse をスケールアップし、ワークロードに十分なキャッシュ容量が割り当てられるようにすることが推奨されます。Advisor suggests that you scale up your SQL Data Warehouse to ensure you allocate enough cache capacity for your workload.

SQL Data Warehouse のテーブルをレプリケートされたテーブルに変換し、クエリのパフォーマンスを向上させるConvert SQL Data Warehouse tables to replicated tables to increase query performance

Advisor では、レプリケートされたテーブルではないが、変換によってメリットがあるテーブルが識別されて、これらのテーブルを変換することが推奨されます。Advisor identifies tables that are not replicated tables but would benefit from converting and suggests that you convert these tables. 推奨は、レプリケートされるテーブルのサイズ、列の数、テーブルの分散の種類、および SQL Data Warehouse のテーブルのパーティションの数の基づいています。Recommendations are based on the replicated table size, number of columns, table distribution type, and number of partitions of the SQL Data Warehouse table. コンテキストに対する推奨では、追加のヒューリスティックが提供される場合があります。Additional heuristics may be provided in the recommendation for context. この推奨事項が決定される方法について詳しくは、「SQL Data Warehouse のレコメンデーション」をご覧ください。To learn more about how this recommendation is determined, see SQL Data Warehouse Recommendations.

ストレージ アカウントを Azure Resource Manager に移行して最新の Azure 機能のすべてを手に入れるMigrate your Storage Account to Azure Resource Manager to get all of the latest Azure features

ストレージ アカウント デプロイ モデルを Azure Resource Manager (Resource Manager) に移行して、テンプレート デプロイや、追加のセキュリティ オプションをご利用ください。また、GPv2 アカウントにアップグレードして Azure Storage の最新機能を利用することもできます。Migrate your Storage Account deployment model to Azure Resource Manager (Resource Manager) to take advantage of template deployments, additional security options, and the ability to upgrade to a GPv2 account for utilization of Azure Storage's latest features. Advisor は、クラシック デプロイ モデルを使用しているスタンドアロンのストレージ アカウントをすべて特定して、Resource Manager デプロイ モデルに移行することを推奨します。Advisor will identify any stand-alone storage accounts that are using the Classic deployment model and recommends migrating to the Resource Manager deployment model.

注意

Azure Monitor のクラシック アラートは 2019 年 8 月に廃止されました。Classic alerts in Azure Monitor have been retired in August 2019. 新しいプラットフォームでアラート機能を保持するには、Resource Manager を使用するようにクラシック ストレージ アカウントをアップグレードすることをお勧めします。We recommended that you upgrade your classic storage account to use Resource Manager to retain alerting functionality with the new platform. 詳しくは、クラシック アラートの廃止に関するページをご覧ください。For more information, see Classic Alerts Retirement.

サブスクリプションの上限に到達しないようにストレージ アカウントを設計するDesign your storage accounts to prevent hitting the maximum subscription limit

Azure リージョンでは、サブスクリプションごとに最大 250 個のストレージ アカウントをサポートできます。An Azure region can support a maximum of 250 storage accounts per subscription. 制限に達した場合、そのリージョン/サブスクリプションの組み合わせでは、それ以上ストレージ アカウントを作成することはできません。Once the limit is reached, you will be unable to create any more storage accounts in that region/subscription combination. Advisor は、サブスクリプションを確認して、上限に近づいている場合はストレージ アカウント数を減らして設計するように勧告します。Advisor will check your subscriptions and surface recommendations for you to design for fewer storage accounts for any that are close to reaching the maximum limit.

Azure MySQL、Azure PostgreSQL、および Azure MariaDB サーバーのパフォーマンスを最適化するOptimize the performance of your Azure MySQL, Azure PostgreSQL, and Azure MariaDB servers

CPU ボトルネックによる Azure MySQL、Azure PostgreSQL、および Azure MariaDB サーバーの CPU の圧迫を修正するFix the CPU pressure of your Azure MySQL, Azure PostgreSQL, and Azure MariaDB servers with CPU bottlenecks

長期間にわたって CPU の使用率が非常に高いと、ワークロードのクエリ パフォーマンスが低速に陥る可能性があります。Very high utilization of the CPU over an extended period can cause slow query performance for your workload. CPU サイズを増やすと、データベース クエリのランタイムを最適化し、全体のパフォーマンスを向上させることができます。Increasing the CPU size will help in optimizing the runtime of the database queries and improve overall performance. Azure Advisor は、CPU 制約があるワークロードを実行している CPU 使用率が高いサーバーを特定して、コンピューティング処理をスケーリングするよう勧告します。Azure Advisor will identify servers with a high CPU utilization that are likely running CPU constrained workloads and recommend scaling your compute.

Azure MySQL、Azure PostgreSQL、および Azure MariaDB サーバー上のメモリ制約を減らすか、メモリ最適化された SKU に移動するReduce memory constraints on your Azure MySQL, Azure PostgreSQL, and Azure MariaDB servers or move to a memory optimized SKU

キャッシュ ヒット率が低いと、クエリ パフォーマンスが低下し IOPS が高くなる可能性があります。A low cache hit ratio can result in slower query performance and increased IOPS. これは、不適切なクエリ プランやメモリ負荷の高いワークロードの実行が原因になっている場合があります。This could be due to a bad query plan or running a memory intensive workload. クエリ プランを修正するか、Azure Database for PostgreSQL データベース サーバー、Azure MySQL データベース サーバー、または Azure MariaDB サーバーの メモリを増やすことで、データベース ワークロードの実行を最適化できます。Fixing the query plan or increasing the memory of the Azure Database for PostgreSQL database server, Azure MySQL database server, or Azure MariaDB server will help optimize the execution of the database workload. Azure Advisor は、この高いバッファー プール チャーンが原因で影響を受けているサーバーを特定し、クエリ プランを修正するか、メモリ容量が大きいより上位の SKU に移行するか、あるいはストレージ サイズを増やしてより多くの IOPS を取得するように勧告します。Azure Advisor identifies servers affected due to this high buffer pool churn and recommends either fixing the query plan, moving to a higher SKU with more memory, or increasing storage size to get more IOPS.

Azure MySQL または Azure PostgreSQL の読み取りレプリカを使用して、読み取り集中型のワークロードでの読み取りをスケールアウトするUse a Azure MySQL or Azure PostgreSQL Read Replica to scale out reads for read intensive workloads

Azure Advisor は、サーバー上での過去 7 日間にわたる書き込みに対する読み取りの比率など、ワークロードベースのヒューリステックを活用して、読み取り集中型のワークロードを特定します。Azure Advisor leverages workload-based heuristics such as the ratio of reads to writes on the server over the past seven days to identify read-intensive workloads. Azure Database for PostgreSQL リソースまたは Azure Database for MySQL リソースでの読み取り/書き込みの比率が非常に高いと、CPU やメモリの競合を引き起こし、クエリ パフォーマンスが低下する可能性があります。Your Azure database for PostgreSQL resource or Azure database for MySQL resource with a very high read/writes ratio can result in CPU and/or memory contentions leading to slow query performance.  レプリカを追加することで、レプリカ サーバーに読み取りをスケールアウトして、プライマリ サーバー上での CPU やメモリの制約を回避します。Adding a replica will help in scaling out reads to the replica server, preventing CPU and/or memory constraints on the primary server. Advisor はこのような読み取り集中型のワークロードを含むサーバーを特定し、 読み取りレプリカ を追加して読み取りワークロードの一部をオフロードするように勧告します。Advisor will identify servers with such high read-intensive workloads and recommend adding a read replica to offload some of the read workloads.

Azure MySQL、Azure PostgreSQL、または Azure MariaDB サーバーをより上位の SKU にスケーリングして接続の制約を回避するScale your Azure MySQL, Azure PostgreSQL, or Azure MariaDB server to a higher SKU to prevent connection constraints

データベース サーバーへの新しい接続ごとに、一定のメモリが占有されます。Each new connection to your database server occupies some memory. メモリの 上限が原因でサーバーへの接続がエラーになっている場合は、データベース サーバーのパフォーマンスが低下します。The database server's performance degrades if connections to your server are failing because of an upper limit in memory. Azure Advisor は、多くの接続エラーを伴う実行中のサーバーを特定して、コンピューティング処理をスケールアップするかメモリ最適化された SKU を使用して、コアごとのコンピューティング処理数を増やすことで、サーバーの接続制限を引き上げてお使いのサーバーにより多くのメモリを提供するよう勧告します。Azure Advisor will identify servers running with many connection failures and recommend upgrading your server's connections limits to provide more memory to your server by scaling up compute or using Memory Optimized SKUs, which have more compute per core.

キャッシュやアプリケーションのパフォーマンスを向上させるためにキャッシュを別のサイズまたは SKU にスケーリングするScale your Cache to a different size or SKU to improve Cache and application performance

キャッシュ インスタンスは、メモリ不足、サーバー負荷、ネットワーク帯域幅などが高い状態で実行されていないときにパフォーマンスが最大になります。これらの状態が発生すると、無応答になったり、データが失われたり、使用できなくなったりする場合があります。Cache instances perform best when not running under high memory pressure, high server load, or high network bandwidth which may cause them to become unresponsive, experience data loss, or become unavailable. Advisor は、これらの状態にあるキャッシュ インスタンスを識別し、メモリ不足、サーバー負荷、ネットワーク帯域幅などを削減するためのベスト プラクティスの適用か、あるいは別のサイズまたは容量の大きな SKU へのスケーリングのどちらかを推奨します。Advisor will identify Cache instances in these conditions and recommend either applying best practices to reduce the memory pressure, server load, or network bandwidth or scaling to a different size or SKU with more capacity.

トラフィックが存在するリージョンを Azure Cosmos DB アカウントに追加するAdd regions with traffic to your Azure Cosmos DB account

Advisor は、現在構成されていないリージョンからのトラフィックが存在する Azure Cosmos DB アカウントを検出し、そのリージョンを追加することを推奨します。Advisor will detect Azure Cosmos DB accounts that have traffic from a region that is not currently configured and recommend adding that region. これにより、そのリージョンから来る要求の待ち時間が改善されると共に、リージョン障害が発生した場合の可用性が確保されます。This will improve latency for requests coming from that region and will ensure availability in case of region outages. Azure Cosmos DB でのグローバルなデータの分散の詳細を確認してください。Learn more about global data distribution with Azure Cosmos DB

顧客の含めるパスまたは除外するパスを使用して Azure Cosmos DB インデックス作成ポリシーを構成するConfigure your Azure Cosmos DB indexing policy with customer included or excluded paths

Azure Advisor は、既定のインデックス作成ポリシーを使用しているが、ワークロード パターンに基づいてカスタム インデックス作成ポリシーの利点が得られる可能性がある Cosmos DB コンテナーを識別します。Azure Advisor will identify Cosmos DB containers that are using the default indexing policy but could benefit from a custom indexing policy based on the workload pattern. 既定のインデックス作成ポリシーはすべてのプロパティのインデックスを作成しますが、クエリ フィルターで使用される明示的な含めるパスまたは除外するパスと共にカスタム インデックス作成ポリシーを使用すると、インデックス作成のために消費される RU やストレージが削減される場合があります。The default indexing policy indexes all properties, but using a custom indexing policy with explicit included or excluded paths used in query filters can reduce the RUs and storage consumed for indexing. インデックス ポリシーの変更の詳細を確認してください。Learn more about modifying index policies

Azure Cosmos DB クエリ ページ サイズ (MaxItemCount) を -1 に構成するConfigure your Azure Cosmos DB query page size (MaxItemCount) to -1

Azure Advisor は、100 のクエリ ページ サイズを使用している Azure Cosmos DB コンテナーを識別し、より高速なスキャンのために -1 のページ サイズを使用することを推奨します。Azure Advisor will identify Azure Cosmos DB containers that are using the query page size of 100 and recommend using a page size of -1 for faster scans. 最大項目数の詳細を確認してください。Learn more about Max Item Count

Advisor のパフォーマンスに関する推奨事項にアクセスする方法How to access Performance recommendations in Advisor

  1. Azure Portal にサインインし、Advisor を開きます。Sign in to the Azure portal, and then open Advisor.

  2. Advisor ダッシュボードで、 [パフォーマンス] タブをクリックします。On the Advisor dashboard, click the Performance tab.

次の手順Next steps

Advisor の推奨事項の詳細については、以下を参照してください。To learn more about Advisor recommendations, see: