AppDNA

AppDNAの最適化

このセクションでは、AppDNAを可能な限り効果的に実行するために実行できる手順について説明します。特に大規模なアプリケーションポートフォリオがある場合は、本番システムに対してこれらの最適化をすべて実行することをお勧めします。

SQL サーバーの最適化

SQL Server のパフォーマンスを向上させるには、まず、サーバー上の RAM の容量を増やします。追加の RAM は、低速のハードディスクを補正します。

クエリあたりの最大サーバーメモリと最小メモリ

既定では、SQL Server は使用可能なメモリを消費します。これは、メモリを大量に消費するAppDNAのインポートおよび分析タスクと同時に実行される他のプロセスに悪影響を及ぼす可能性があります。

SQL Serverがアクセスできるメモリ容量の上限を定義して、オペレーティングシステムで約3~5 GBのRAMを使用できるようにすることをお勧めします。SQL Server には、クエリに割り当てるメモリ量も定義されています。SQL Serverが複雑なクエリに対してより多くのRAMを使用できるようにするため、この値を大きくすることをお勧めします。

  1. SQL Server Management Studioを開きます。
  2. SQL Server インスタンスを右クリックし、[プロパティ] を選択します。
  3. [サーバーのプロパティ] ダイアログボックスで、[メモリ] をクリックします。
  4. [最大サーバーメモリ (MB)] を、環境に適した値に設定します。
  5. クエリあたりの最小メモリ (KB) を 2048 に設定します。

並列処理の最大度

分析中にデータベースでデッドロックが発生する可能性を減らすには、SQL Server インスタンスで並列処理の最大度を 1 に設定します。

  1. SQL Server 管理スタジオを開きます。
  2. SQL Server インスタンスを右クリックし、[プロパティ] を選択します。
  3. [サーバーのプロパティ] ダイアログボックスで、[詳細設定] をクリックします。
  4. [詳細] ページで、[最大並列度] を 1 に設定します。

Windowsスワップファイルの管理

既定では、Windows はページングファイルを管理するように構成されています。このデフォルト設定のままにしておくことをお勧めします。次のように設定を確認または変更します。

  1. Windowsでは、[詳細なシステム設定を表示する] に移動します。
  2. [システムのプロパティ] ダイアログボックスで、[詳細設定] タブをクリックします。
  3. [パフォーマンス] で、[設定] をクリックします。
  4. [パフォーマンスオプション] ダイアログボックスで、[詳細設定] タブをクリックします。
  5. [仮想メモリ] で、[変更] をクリックします。
  6. [仮想メモリ] ダイアログボックスで、[すべてのドライブに対してページングファイルサイズを自動的に管理する] チェックボックスをオンにするか、または [ドライブごとにシステム管理] を選択します。

ハードディスクの最適化

  • データベースを構成するファイルグループに、できるだけ多くのファイルを格納します。
  • ファイルのコレクションは、システムドライブではない別の物理ドライブに配置します。
  • より大きく、低速なディスクよりも小さく、高速なハードディスクを使用してください。
  • 可能であれば、マスターデータベースファイルと一時データベースファイルを別々の専用の物理ディスクに移動します。
  • tempdb データベースが配置されているディスクに 30 GB 以上の空き容量があることを確認します。

次の図は、SQL ServerのさまざまなアーキテクチャがAppDNAのパフォーマンスにどのように対応しているかを示しています。

データベースハードディスクイメージ

基本的に、SQL Server が作業を分割できるディスクヘッドが多いほど、実行速度が速くなります。

SQL Server の RAW パーティションの使用を許可すると、ディスク内の使用可能なヘッドの使用も最適化されます。ただし、この操作を行うと、SQL Server に対してディスクを排他的に制御でき、Windows で通常使用できなくなり、ドライブ上の既存のデータが失われる可能性があります。

AppDNAデータベースのリカバリモデル

AppDNAは、アプリケーションポートフォリオの分析で多数のSQLクエリを実行します。大規模なデータベースでは、データベースがバックアップされるまで SQL ログファイルが増加し続けるため、すべてのトランザクションが「完全な」回復モデルでログに記録される場合は、大量のハードディスク領域を消費する可能性があります。

重要:「フル」リカバリモデルを使用する場合にディスク容量の問題を回避するには、AppDNAデータベースの定期的なバックアップを取るようにSQL Serverメンテナンス・スケジュールを設定します。

tempdbデータベースとAppDNAデータベースでは、処理および分析中にデータベースサイズを大幅に縮小するために、「単純な」リカバリモデルを使用することをお勧めします。

  1. SQL Server Management Studioを開きます。
  2. [データベース] > [システムデータベース] を展開します。
  3. データベースを右クリックし、[プロパティ] を選択します。
  4. [プロパティ] ダイアログボックスで、[オプション] をクリックします。
  5. 「リカバリ・モデル」から、「シンプル」を選択します。

詳しくは、「リカバリ・モデル(SQL Server)」を参照してください。

フルテキストインデックス

AppDNAでは、SQL Serverのフルテキストインデックス機能は使用されません。一部のバージョンのSQL Serverでは、パフォーマンスを向上させるためにAppDNAデータベースで無効にすることができます。

  1. SQL Server Management Studioを開きます。
  2. AppDNAデータベースを右クリックし、「プロパティ」を選択します。
  3. [データベースのプロパティ] ダイアログボックスで、[ファイル] をクリックします。
  4. [ファイル] ページで、[フルテキストインデックスを使用する] チェックボックスをオフにします。

IIS の最適化

AppDNAインストーラーとAppDNA環境の構成ウィザードでIISの最適化が試みられますが、それが不可能になったり、設定が変更されたりすることがあります。このセクションで説明されているようにIISを最適化することをお勧めします。

許可されるコンテンツの最大長

許可されるコンテンツの最大長の設定が低すぎると、大きなアプリケーションおよびオペレーティングシステムイメージのインポートが妨げられることがあります。制限値を大きくするには、次の手順に従います。

  1. AppDNAとすべてのAppDNAクライアントを閉じます。
  2. インターネットインフォメーションサービス (IIS) マネージャーを開きます。
  3. IISの下のツリーを展開し、AppDNAサイトをクリックします。
  4. 中央のペインで、[要求のフィルタリング] をダブルクリックします。
  5. [操作] で、[フィーチャ設定を編集] をクリックします。
  6. [要求フィルタ設定の編集] ダイアログボックスで、[許可されるコンテンツの最大長] を 2147483648 に設定し、[OK] をクリックします。
  7. IISのリセット:ツリーで、AppDNAサイトをクリックし、[再起動] をクリックします。

IIS のタイムアウトとリサイクルの設定

デフォルトでは、IISはAppDNAで使用するには一般的に低すぎるタイムアウト値で構成されています。特に、[Recycle]設定では、実行時間が長すぎるため、AppDNAタスクが完了する前に終了することがあります。この問題は、特に大規模なアプリケーションポートフォリオで発生します。設定を構成するには、次の手順に従います。

  1. インターネットインフォメーションサービス (IIS) マネージャーを開きます。
  2. ツリーを展開し、[アプリケーションプール] をクリックします。
  3. [アプリケーションプール] ボックスの一覧で、[AppDNAAppPool] をクリックします。
  4. [操作] の [詳細設定] をクリックします。
  5. [詳細設定] ダイアログボックスで、次のオプションを設定し、[OK] をクリックします。

    オプション 設定
    管理パイプラインモード クラシック
    アイドルタイムアウト (分) 0
    Pingが有効 いいえ
    通常の時間間隔 (分) 0
  6. AppDNAAppPoolを選択したまま、[操作] の下の [リサイクル] をクリックします。
  7. [定期的な間隔 (分単位)] チェックボックスをオフにし、[次へ] と [完了] をクリックします。
  8. IISのリセット:ツリーで、AppDNAサイトをクリックし、[再起動] をクリックします。

アンチウイルス設定の最適化

オンアクセスアンチウイルススキャンは、AppDNA、SQL Server、IISのパフォーマンスに悪影響を及ぼします。AppDNAをできるだけ効率的に実行できるように、次のフォルダをオンアクセスアンチウイルススキャンから除外することをお勧めします。

  • AppDNAプログラムおよびデータフォルダ
  • アプリケーションインストールパッケージフォルダ (ローカルの場合)
  • IIS Web サイトフォルダ
  • SQL Server データベースフォルダ
  • 一時的な場所
  • Windows\WoWx64

アプリケーションのインポートの最適化

アプリケーションをAppDNAにインポートするには、アプリケーションのインストールパッケージを使用します。インポートのパフォーマンスに影響する多くの変数には、アプリケーションのサイズ、外部ファイル、ネットワーク帯域幅、物理ネットワーク接続と機能などがあります。

AppDNAへのアプリケーションのインポートを迅速かつ効率的に実行するには、アプリケーションのインストールファイルをAppDNAインポートクライアントに対してローカルに保存することをお勧めします。理想的には、AppDNAおよび一時データベースとは別の物理ディスク上に配置する必要があります。

ローカルエリアネットワーク経由でアプリケーションインストールファイルをインポートすることはできますが、インポート処理に遅延が発生し、インポートが失敗したり、インポートの警告が表示されることがあります。

AppDNAの最適化