Product Documentation

AppDNAの最適化

Jul 08, 2016

ここでは、AppDNAを可能な限り効率的に実行するために行うことができる手順について説明します。 アプリケーションのポートフォリオが大きい場合は特に、これらの実稼働環境用システムの最適化をすべて実行することをお勧めします。

SQL Serverの最適化

SQL Serverのパフォーマンスを向上させるには、まずサーバーのRAMを増設します。 RAMを追加すると、低速なハードディスクのパフォーマンスを補うことができます。

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

デフォルトでは、SQL Serverは使用できるメモリを消費します。 このことは、メモリ使用量が大きいAppDNAのインポートや分析のタスクと同時に実行しているほかのプロセスに悪影響を与える可能性があります。

SQL Serverでアクセスできるメモリ量に上限を定義して、約3~5GBの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 Management Studioを開きます。
  2. SQL Serverインスタンスを右クリックし、[プロパティ]を選択します。
  3. [サーバーのプロパティ]ダイアログボックスで[詳細設定]をクリックします。
  4. [詳細設定]ページで[並列処理の最大限度]1に設定します。

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

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

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

ハードディスクの最適化

  • データベースを構成するファイルグループ内にできるだけ多くのファイルを配置します。
  • ファイルのコレクションをシステムドライブではない別の物理ドライブに配置します。
  • 大きく低速なディスクよりも、小さく高速なハードディスクを使用します。
  • 可能であれば、masterおよびtempデータベースのファイルを別の専用の物理ディスクに移動します。
  • tempdbデータベースのあるディスクに少なくとも30GBの空き領域を確保します。

次の図は、SQL ServerのさまざまなアーキテクチャとAppDNAのパフォーマンスの対応関係を示しています。



基本的に、より多くのディスクヘッドにSQL Serverが負荷を分散できるほど、処理速度が速くなります。

SQL ServerでRAWパーティションを使用できるようにした場合も、ディスク内の使用できるヘッドの使用状況が最適化されます。 ただし、これを使用できるようにすると、ディスクはSQL Server専用になり、Windowsの通常の用途に使用できなくなります。また、ドライブ上の既存データが失われる可能性があります。

AppDNAデータベースの復旧モデル

AppDNAでアプリケーションポートフォリオを分析すると、多くのSQLクエリが実行されます。 すべてのトランザクションを「完全」復旧モデルでログに記録する場合は、データベースがバックアップされるまでSQLログファイルが拡張し続けるため、大きなデータベースでは非常に多くのハードディスクスペースが消費されます。

重要:「完全」復旧モデルを使用する場合にディスクスペースの問題を避けるには、SQL Serverの保守計画を立て、定期的にAppDNAデータベースのバックアップを取ります。

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. ツリーでAppDNAサイトを選択し、[再起動]をクリックしてIISをリセットします。

IISのタイムアウトおよびリサイクルの設定

デフォルトでIISに構成されているタイムアウト値は、AppDNAと共に使用するには概して低すぎます。 特に、AppDNAのタスクは実行に時間がかかるため、リサイクル設定が原因で、タスクが完了する前に終了する結果になる可能性があります。 この問題は特に、アプリケーションポートフォリオが大きい場合に発生します。 設定を構成するには、以下の手順に従います。

  1. インターネットインフォメーションサービス(IIS)マネージャーを開きます。
  2. ツリーを展開し、[アプリケーションプール]をクリックします。
  3. アプリケーションプールの一覧で、[AppDNAAppPool]をクリックします。
  4. [操作]で、[詳細設定]をクリックします。
  5. [詳細設定]ダイアログボックスで、次のオプションを設定し、[OK]をクリックします。
    オプション 設定
    マネージパイプラインモード クラシック
    アイドル状態のタイムアウト(分) 0
    Pingの有効化 False
    定期的な間隔(分) 0
  6. AppDNAAppPoolを選択したままの状態で、[操作][リサイクルの設定]をクリックします。
  7. [定期的な間隔(分)]チェックボックスをオフにして、[次へ]をクリックし、[完了]をクリックします。
  8. ツリーでAppDNAサイトを選択し、[再起動]をクリックしてIISをリセットします。

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

アクセスしたときにスキャンを実行するアンチウイルスは、AppDNA、SQL Server、およびIISのパフォーマンスに悪影響を与えます。 AppDNAを可能な限り効率的に実行するため、アクセスしたときにアンチウイルスで実行するスキャンから次のフォルダーを除外することをお勧めします。

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

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

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

AppDNAへのアプリケーションのインポートを最も迅速かつ効率的に実行するには、アプリケーションのインストールファイルをAppDNAのインポートクライアントのローカルに格納します。 AppDNAおよび一時データベースとは別の物理ディスクに配置することが理想的です。

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