Exchange でディスク I/O が生じるしくみ

 

適用先: Exchange Server 2007 SP3, Exchange Server 2007 SP2, Exchange Server 2007 SP1, Exchange Server 2007

トピックの最終更新日: 2010-05-31

Microsoft Exchange Server 2007 には、ハブ トランスポートとエッジ トランスポート (まとめてトランスポート サーバーと呼ばれます)、クライアント アクセス、ユニファイド メッセージング、およびメールボックスというサーバーの役割があります。各サーバーが以下のように異なる機能を実行することもあって、それらの記憶域の要件と、バックアップおよび復元の要件が異なっています。

  • ハブ トランスポート サーバーおよびエッジ トランスポート サーバーは、以下を配信します。
    • 組織に対して送受信されるメール
    • メールボックス サーバーに対して送受信されるメール
    • ユニファイド メッセージング サーバーによって送信されるボイス メール メッセージ
  • クライアント アクセス サーバーは、Exchange のクライアント プロトコル サーバーであり、Microsoft Outlook Web Access、Exchange ActiveSync、Outlook Anywhere、およびその他のインターネット プロトコルを提供します。
  • ユニファイド メッセージング サーバーは、Outlook Voice Access を提供し、着信 FAX をサポートします。
  • メールボックス サーバーは Exchange Server の中核であり、ユーザー メールボックスとパブリック フォルダが格納されます。
  • メールボックスのクラスタ化、つまりシングル コピー クラスタ (SCC) は、共有ディスクのアクティブ/パッシブ構成でクラスタ サービスを使用します。
  • 連続レプリケーションでは、ログ ファイルが別の場所に送信されます。この場所は、クラスタ連続レプリケーション (CCR) を使用するクラスタ内でローカル連続レプリケーション (LCR) を使用する場合はスタンドアロンのサーバーになり、スタンバイ連続レプリケーション (SCR) を使用する場合はリモート サーバーになります。

メールボックス サーバーの役割

Exchange 2007 メールボックス サーバーの役割は、他のサーバーの役割が構築される基盤となる中心的なサーバーの役割です。1 秒あたりのユーザー入出力 (I/O) 数や容量を含めてメールボックスのプロファイルを特定したら、展開の計画を開始できます。1 台の Exchange サーバーに配置するユーザー数は、通常、ハードウェアのボトルネックを防止することと、サービス レベル契約 (SLA) 内でデータのバックアップと復元を行う機能を提供することのバランスを考慮して決定します。

Exchange 2007 の展開を適切に行うには、記憶域の 3 つの要件のバランスをとる必要があります。最初の要件はトランザクション I/O です。これは、各 I/O が記憶域によって実行されるまでの待ち時間で測定されるパフォーマンスのことです。2 番目の要件はバックアップと復元のスループットです。これは、どれだけ短時間にバックアップ メディアとの間でデータを移動できるかを意味します。3 番目の要件は容量です。運用論理ユニット番号 (LUN) 用に選択した Redundant Array of Independent Disks (RAID) 構成と、対象のバックアップ メディアで十分な領域を確保することを意味します。

メールボックス プロファイルを使用してディスク I/O の要件を数値化する方法の詳細については、「メールボックス サーバーの記憶域設計」を参照してください。たとえばサーバーに、3,000 人のユーザーを 1 秒あたり 0.4 I/O (IOPS) で 2 GB メールボックスに割り当てるとします。パフォーマンスの要件は、1,200 IOPS になります。6 テラバイト (TB) の情報をバックアップし復元できるか確かめる必要があります。バックアップの SLA が 4 時間であれば、1 時間で 1.5 TB のデータをバックアップする (毎秒 417 MB でバックアップする) 必要があります。バックアップ ソリューションで毎秒 300 MB のみしかバックアップできない場合は、メールボックスのサイズまたはユーザー数を 28% 減らす必要があります。

Exchange 2000 Server でのベスト プラクティスは、仮想メモリの制限によって影響されていましたが、1 つのストレージ グループに 5 つのデータベースを格納してから別のストレージ グループを作成する方法です。Exchange Server 2003 ではこのような制限が減ったため、最大数のストレージ グループが作成されるまで、新しいデータベースごとに新規のストレージ グループを追加する方法がベスト プラクティスになります。Exchange 2007 では、Exchange Server が使用する基本のデータベース エンジンである Extensible Storage Engine (ESE) が強化されたため、I/O フットプリントが減少しています。

中心的な Extensible Storage Engine の機能拡張

Exchange 2007 では、ESE でのいくつかの重要な設計変更のために、Exchange Server の全体としての I/O フットプリントが削減されています。

  • 64 ビット オペレーティング システムと 64 ビット Exchange Server アプリケーションにより、大幅に大容量のデータベース キャッシュが可能になっており、900 MB から、システムの合計メモリ量によっては数十 GB まで増加できます。
  • データベースの読み取り操作でも、キャッシュの最適化が新しく何度も行われたために利点がもたらされています。I/O をまとめる単位が 64 KB から 1 MB に大きくなったため、より大きな I/O を読み書きできる場合が増加し、ディスク I/O がさらに減少しています。
  • ストリーミング データベース ファイルはなく、インストール可能ファイル システム (IFS) は削除されました。

Exchange 2007 は 64 ビット アプリケーションであるため、以前の 32 ビット Exchange にあった仮想メモリに関する制限がありません。Exchange 2007 メールボックス サーバーは、最大で 50 のデータベースと 50 のストレージ グループをサポートしており、1 つのストレージ グループにつき 5 つまでのデータベースを配置できます。ただし、それぞれの Exchange 2007 メールボックス サーバーに配置できるデータベースは最大で 50 です。

各ストレージ グループは、個々に固有のトランザクション ログを作成し、バックアップと復元の基本単位となります。キャッシュの圧力がないため、ESE がデータベースに書き込む前にトランザクション ログに書き込めるデータの最大量が、チェックポイントの深さと呼ばれるキャッシュです。1 つのストレージ グループ内で 1 つのデータベースを使用すると、チェックポイントの深さ全体がこのデータベースに割り当てられて、データベース ページに対する複数の更新がキャッシュ内で実行される確率が高まります。データベースには最後の更新だけが書き込まれるため、I/O が減少します。

Exchange メールボックスのデータ コンポーネント

次の表は、メールボックス サーバーの役割の動作と、各動作がディスク I/O にどのような影響を与えるかを示したものです。

Exchange 2007 でのメールボックス サーバーの役割の動作

動作 ディスク I/O に影響を与える動作

ESE データベース (.edb ファイル)

メールボックス サーバーは、ESE データベースにすべてのメールを格納します。I/O がまとめられた結果、I/O のサイズが大きくなる場合がありますが、ESE データベースはランダムにアクセスされ、8 KB のページ サイズが使用されます。信頼性の理由、また場合によってはパフォーマンス上の理由で、トランザクション ログを含まないディスクにデータベースを配置する必要があります。

トランザクション ログ ファイル (.log ファイル)

データベースに加えられたすべての変更は最初にトランザクション ログにコミットされます。これは、ディスクのシーケンシャルな書き込みです。書き込みのサイズは、512 バイトからログ バッファのサイズまでさまざまです。

コンテンツのインデックス処理

コンテンツのインデックス処理は、データベースと同じ LUN に配置する必要があるランダムな負荷であり、通常はデータベース サイズの約 5% になります。コンテンツのインデックス処理はバックグラウンドで実行され、メッセージの到着時にインデックスを付けるため、ディスク I/O への影響は最小限です。

ページング

ある処理がメモリ内のページを要求し、要求された場所でシステムがそのページを見つけられない場合、ページ フォールトが発生します。ページがメモリの別の場所にある場合、このフォールトはソフト ページ フォールトです。ディスクからページを取得する必要がある場合、このフォールトはハード ページ フォールトです。ほとんどのプロセッサは、多数のソフト ページ フォールトを処理可能で、重大な結果にはなりません。ただし、ハード ページ フォールトによって大幅な遅延が生じる場合があります。ディスクへのページングが連続して多い場合、メモリ不足であることを示しています。

コンテンツ変換

Exchange にデータを格納するためのネイティブ メソッドでは、Transport Neutral Encapsulating Format (TNEF) でカプセル化された MAPI メッセージが使用されます。これにより、MAPI メッセージを SMTP 経由で転送でき、Microsoft Outlook などの MAPI クライアントに MAPI メッセージを提供できます。非 MAPI クライアントは、MIME 形式のメッセージを要求します。メッセージをこの形式にするには、Exchange で TNEF/MAPI から MIME 形式へのコンテンツ変換プロセスを実行する必要があります。ほとんどのコンテンツ変換は、クライアント アクセス サーバーとハブ トランスポート サーバーで実行されます。

しかし、Microsoft Entourage などの従来の WebDAV (Web Distributed Authoring and Versioning) アプリケーションは、メールボックス サーバーに直接アクセスします。このシナリオでは、コンテンツ変換プロセスは Exchange 2007 メールボックス サーバーで直接行われます。従来の WebDAV クライアントが、クライアント アクセス サーバー上で変換する必要のあるデータを要求した場合、そのデータへのアクセスは、/Exchange 仮想ディレクトリにアクセスすることによって Exchange 2007 メールボックス サーバーから行われます (一部のツールは、/ExAdmin 仮想ディレクトリにアクセスしてデータにアクセスします)。データは、メールボックス サーバーの TMP ディレクトリで変換され、クライアント アクセス サーバーに送信されます。

TMP ディレクトリが最も使用されるのは、非 MAPI クライアント ユーザーが新しいサーバーに移動した後です。この動作が行われる理由は、ユーザーが自身のメールボックスに初めて接続したときに大量のコンテンツ変換が行われる可能性があるためです。

パフォーマンスを向上させるためには、ページ ファイルやオペレーティング システムと同じ LUN 上に TMP フォルダを配置しないようにします。

データベースの保守

Exchange 2007 インフォメーション ストアでは、各データベースに対して定期的なオンライン保守を実行する必要があります。ディスク I/O に影響する 2 つのタスクは、構成済みの保存期間ポリシーより古いメッセージおよびメールボックスの完全な削除と、オンラインでのデータベースの最適化です。データベースのバックアップではそのデータベースのオンラインの最適化が停止されるため、バックアップとデータベース保守の両方に、タスクを完了するための専用の時間帯を設定するように注意する必要があります。

バックアップおよび復元

データのバックアップ処理では、データベース ボリュームおよびトランザクション ログ ファイル ボリュームからデータを読み取る必要があります。これにより発生する追加の I/O が、ユーザーに対する応答時間に影響を与える可能性があるため、バックアップ処理は勤務時間内に行わないようにする必要があります。ソフト リカバリ処理では、ESE ですべてのトランザクション ログ ファイルを再生する必要があります。この場合の I/O プロファイルはシーケンシャルな読み取りストリームとなります。したがって、トランザクション ログ ファイルがシーケンシャルなディスク アクセスの高速なディスク上に配置されている場合、リカバリのパフォーマンスが向上します。この問題を避ける 1 つの方法は、連続レプリケーションを使用することです。ボリューム シャドウ コピー サービス (VSS) ベースのバックアップをデータベースのアクティブ コピーからデータベースのパッシブ コピーにオフロードできます。

削除されたデータベース ページの解放

削除されたデータベース ページを解放するようにメールボックス サーバーを構成すると、データベースからアイテムを削除するたびに、複数のページが削除されます。その後、Exchange は、削除されたページをゼロで上書きします。Microsoft Exchange Server 2007 の RTM (Release to Manufacturing) 版では、この機能はオンライン ストリーミング バックアップ中にのみ実行され、バックアップ中により多くの物理ディスク I/O を発生させます。Exchange Server 2007 Service Pack 1 (SP1) では、この機能はオンライン保守ウィンドウ中に有効にすることができます。

データベース ファイル アクセスのほかにも、ディスク I/O を発生させる動作があります。次の表は、これらの動作と、各動作がディスク I/O にどのような影響を与えるかを示したものです。

ディスク I/O に影響するその他の動作

動作 ディスク I/O に影響を与える動作

フォルダ内のアイテムの数

コア メールボックス フォルダ内のアイテムの数が増えると、オンライン モードで Outlook を使用している場合は、一部のタスクを実行するための物理ディスク コストも増えます。Exchange キャッシュ モードで Outlook を使用している場合は、クライアントでインデックス処理および検索が実行されます。受信トレイを初めてサイズで並べ替えるには、新しいインデックスを作成する必要があるため、大量のディスク I/O が必要になります。それ以降、受信トレイをサイズで並べ替える場合は、コストは非常に小さくなります。使用できるインデックスの数は限られているので、各自のフォルダをさまざまな方法で頻繁に並べ替えるユーザーは、この制限値を超えて、追加のディスク I/O を発生させる可能性があります。

BlackBerry

BlackBerry と Exchange 2007 の詳細については、Research In Motion (RIM) の Web サイトの「BlackBerry Enterprise Server for Microsoft Exchange」ページのパフォーマンス ベンチマーク ガイダンスを参照してください。

note注 :
このトピックにあるサードパーティの Web サイトに関する情報は、必要な技術情報を参照する際に役立つように提供されています。 この URL は、将来予告なしに変更されることがあります。

パブリック フォルダ

パブリック フォルダがサーバーに存在する場合、追加の I/O 負荷が発生します。ただし、フォルダ コンテンツのレプリカがサーバーに存在しない場合、パブリック フォルダ データベースを持つことによって生じる I/O は、ユーザー メールボックス アクセスによって生じる I/O ほど重要ではありません。

バックアップ

メールボックスのバックアップには慎重な計画が必要です。以降のセクションでは、VSS とストリーミング オンライン バックアップに関するいくつかの考慮事項を示します。どのソリューションにも、コスト、時間、信頼性などの変数に影響があります。ほとんどの管理者は、オンラインでのデータベースの保守、最適化、およびオペレーティング システムの保守にかかる時間を定義します。これらの作業には、バックアップの時間が伴います。バックアップ、保守、および運用負荷のバランスを調整するために、特別な注意が必要です。メールボックスが大きいと、毎日の完全バックアップ戦略を SLA 内で完了することが不可能になる可能性があります。夜間の完全バックアップの影響を軽減する一般的な方法は、完全バックアップを毎週、差分バックアップを毎日実行することです。この方法では、完全バックアップを回復してから、最後の差分バックアップを回復する必要があります。

ボリューム シャドウ コピー サービス

Exchange 2003 の VSS の基礎知識と VSS のベスト プラクティスの詳細については、「Exchange Server 2003 でボリューム シャドウ コピー サービスを使用するためのベスト プラクティス」を参照することをお勧めします。このページで取り上げている情報以外に、Exchange 2007 には考える必要のある VSS 関連の主な考慮事項が 2 つあります。

  • より大きなメールボックス
  • CCR および LCR コピーをバックアップする機能

運用データとコピー データのどちらに対しても VSS バックアップを行えますが、コピーをバックアップして、運用環境の物理ディスクに影響を与えないようにすることをお勧めします。

LCR の場合、Exchange 2007 はトランザクション ログを、同じサーバー上にある別のディスクにレプリケートします。コピーに対して VSS の複製を使用する場合、複製操作とチェックサム整合性が運用環境の物理ディスクに影響を与えないように、コピーの記憶域は別の物理ディスク上に構成する必要があります。コピーに対して VSS スナップショットを使用する場合、チェックサム整合性とその後のテープへのストリーミングが運用環境の物理ディスクに影響を与えないように、コピーの記憶域は別の物理ディスク上に構成する必要があります。

CCR の場合、Exchange 2007 はトランザクション ログを別のサーバーにレプリケートします。このサーバーはクラスタ内のノードですが、レプリケート先のコピーは、共有される記憶域には保管されません。VSS 複製を使用する場合、異なる物理ディスクを使用しているパッシブ ノードのコピーに対してチェックサム整合性を実行できるため、バックアップの処理は切り離されます。VSS スナップショットを使用した場合、チェックサム整合性とその後のテープへのストリーミングは、運用環境のサーバーや物理ディスクに影響を与えません。

ストリーミング オンライン バックアップ

通常はデータが記憶装置内で移動されるハードウェア ベースの VSS バックアップとは異なり、ストリーミング バックアップを使用すると、サーバーがデータの移動を行います。すべてのページはバックアップ中にチェックされるため、チェックサム整合性処理のパフォーマンス上の影響は問題になりません。同時バックアップの場合、このようにストリームが複数あるために、ギガビット イーサネットでもファイバ チャネル接続のテープでも、バックアップ メディアの面での限界が強調される場合があります。多くの顧客の場合、SLA のためのバックアップの時間帯は、ストリーミング バックアップ メディアの 1 分あたりのスループットで分割されるため、使用可能なストレージ グループのサイズが限定されます。たとえば、ストレージ グループでの SLA の時間帯が 1 時間であり、1 秒あたり 100 MB でバックアップできる場合、ストレージ グループの最大サイズは 360 GB になります。

クライアント アクセス サーバー

クライアント アクセス サーバーは、メールボックス サーバーから、状態がない多数のタスクの負荷を軽減します (役割が物理的に異なるサーバーにインストールされている場合)。また、統合された名前空間を提供し、ユーザーはどのメールボックス サーバーに置かれていても 1 つの名前を参照するだけで済みます。Internet Message Access Protocol 4 (IMAP4) 、Post Office Protocol 3 (POP3) 、HTTP などのインターネット プロトコルのサービスは、クライアント アクセス サーバーによって提供されます。クライアント アクセス サーバーがサービスを提供する機能の例には、その他に、Outlook Anywhere、ActiveSync、自動検出サービス、可用性サービス、Web サービスなどがあります。

クライアント アクセス サーバーでは、CPU、メモリ、およびネットワーク ボトルネックの影響を受ける場合がありますが、ディスク I/O フットプリントは小さくなります。Exchange 2003 および Exchange 2000 を実行しているフロントエンド サーバーで、ディスク I/O の考慮事項になる場合がある SMTP (簡易メール転送プロトコル) のトラフィックは、ハブ トランスポート サーバーとエッジ トランスポート サーバーがすべて処理するようになりました。

次の表は、クライアント アクセス サーバーの役割の動作と、各動作がディスク I/O にどのような影響を与えるかを示したものです。

Exchange 2007 でのクライアント アクセス サーバーの役割の動作

動作 ディスク I/O に影響を与える動作

プロトコルのログ出力

プロトコル ログは、有効な場合、パフォーマンス上の問題の原因になり、ログを格納するためにディスク領域を消費するシーケンシャルな書き込みです。ログ出力することを選択したプロトコルの履歴を保持すると、そのプロトコルが予期したとおり作業を実行しているか、通信の問題が発生しているかを確認して、インターネットからの攻撃を識別できます。

コンテンツ変換

すべての Exchange 2007 プロトコルに対するコンテンツ変換は、クライアント アクセス サーバーで行われます。従来の Outlook Web Access クライアントに向けた以前の WebDAV コンテンツ変換は、Exchange 2003 メールボックス サーバー上で行われます。クライアント アクセス サーバーで変換する必要のあるデータをクライアントが要求すると、このデータは、Exchange 2003 メールボックス サーバーからアクセスされ、メールボックス サーバーの TMP フォルダで変換されてから、クライアント アクセス サーバーに送信されます。パフォーマンスを向上させるためには、ページ ファイルやオペレーティング システムと同じ LUN 上に TMP フォルダを配置してはいけません。

ページング

ある処理がメモリ内のページを要求し、要求された場所でシステムがそのページを見つけられない場合、ページ フォールトが発生します。ページがメモリの別の場所にある場合、このフォールトはソフト ページ フォールトです。ディスクからページを取得する必要がある場合、このフォールトはハード ページ フォールトです。ほとんどのプロセッサは、多数のソフト ページ フォールトを処理可能で、重大な結果にはなりません。ただし、ハード ページ フォールトによって大幅な遅延が生じる場合があります。ディスクへのページングが連続して多い場合、メモリ不足であることを示しています。

クライアント アクセス サーバーでディスク I/O が問題になるシナリオでは、ユーザーはインターネット クライアントを使用して、POP3 または IMAP4 プロトコル経由でメールボックス データにアクセスします。トランスポート エンジンはすべての受信メールを MAPI に変換するため、POP3 および IMAP4 クライアントでは、クライアントに送信する前にメールの内容が変換されて MIME (Multipurpose Internet Mail Extensions) に戻されている必要があります。この変換はクライアント アクセス サーバーで行われ、メッセージが 64 KB より大きい場合はディスク上で行われます。POP3 または IMAP4 を使用しているユーザー ベースの割合が大きい場合は、変換が行われる一時フォルダを専用の高速ディスクに配置する必要があります。

トランスポート サーバー

ハブ トランスポート サーバーとエッジ トランスポート サーバーは、Exchange 2007 のブリッジヘッドおよびゲートウェイ サーバーです。これらの主な役割はメールを送受信することです。多くの企業では、トランスポート サーバーを 2 つのグループに展開します。

  • スパム対策およびウイルス対策保護 (エッジ トランスポート サーバー)
  • ルーティング (ハブ トランスポート サーバー)

エッジ トランスポート サーバーの主な役割は、スパムやウイルスを含む受信メールから Exchange インフラストラクチャを保護することです。次にハブ トランスポート サーバーが問題のないメールを分類し、それらを正しいメールボックス サーバーに配信します。これらのサーバーに対する記憶域の影響は、1 秒あたりに処理されるメッセージ数と、処理されるメッセージの平均サイズに応じて変動します。

次の表は、エッジ トランスポート サーバーおよびハブ トランスポート サーバーの動作と、各動作がディスク I/O にどのような影響を与えるかを示したものです。

Exchange 2007 でのエッジ トランスポート サーバーの役割およびハブ トランスポート サーバーの役割の動作

動作 ディスク I/O に影響を与える動作

ESE データベース (mail.que ファイル)

Exchange 2007 エッジ トランスポート サーバーとハブ トランスポート サーバーのどちらも、すべてのメールを ESE データベースに格納します。ESE データベースはランダムにアクセスされ、8 KB のページ サイズが使用されます。信頼性の理由、また場合によってはパフォーマンス上の理由で、トランザクション ログとは別のディスクにデータベースを配置する必要があります。

トランザクション ログ ファイル (.log ファイル)

データベースに加えられたすべての変更は最初にトランザクション ログにコミットされます。これは、ディスクのシーケンシャルな書き込みです。書き込みのサイズは、512 バイトからログ バッファのサイズまでさまざまです。

プロトコル ログとメッセージ追跡ログ

メッセージ追跡ログとプロトコル ログは、有効な場合、パフォーマンス上の問題の原因になり、ログを格納するためにディスク領域を消費するシーケンシャルな書き込みです。ログ出力することを選択したプロトコルの履歴を保持すると、そのプロトコルが予期したとおり作業を実行しているか、通信の問題が発生しているかを確認して、インターネットからの攻撃を識別できます。

コンテンツ変換

ハブ トランスポート サーバー上で、インターネットからの受信メールは、配信される前に MAPI に変換されます。このコンテンツ変換処理は TMP フォルダで行われます。パフォーマンスを向上させるためには、ページング ファイルやオペレーティング システムと同じ LUN 上に TMP フォルダを配置しないようにします。

ページング

ある処理がメモリ内のページを要求し、要求された場所でシステムがそのページを見つけられない場合、ページ フォールトが発生します。ページがメモリの別の場所にある場合、このフォールトはソフト ページ フォールトです。ディスクからページを取得する必要がある場合、このフォールトはハード ページ フォールトです。ほとんどのプロセッサは、多数のソフト ページ フォールトを処理可能で、重大な結果にはなりません。ただし、ハード ページ フォールトによって大幅な遅延が生じる場合があります。ディスクへのページングが連続して多い場合、メモリ不足であることを示しています。

エージェント

トランスポート サーバーのカスタマイズは、共通言語ランタイム環境で実行され、イベントによって起動されるエージェントと呼ばれるコードを介して行います。データをログ出力するエージェントもあるため、そのようなエージェントはディスクのパフォーマンスに影響を与え、ログを格納するためにディスク領域を消費します。

ユニファイド メッセージング サーバー

ユニファイド メッセージング サーバーのサイジングについては、Exchange 2007 ユニファイド メッセージング サーバーでサポートできるユーザー数の判断についてのページを参照してください (このサイトは英語の場合があります)。

note注 :
各ブログの内容とその URL は、将来予告なしに変更されることがあります。 各ブログの内容は、保証なしに "現状のまま" 提供され、権利を付与するものではありません。 含まれているスクリプト サンプルまたはコードの使用は、「Microsoft Terms of Use」に規定されている条件に従います (このサイトは英語の場合があります)。

参照している情報が最新であることを確認したり、他の Exchange Server 2007 ドキュメントを見つけたりするには、Exchange Server TechCenter を参照してください。