ファイルシステムオプション
Oracle初期化パラメータ filesystemio_options 非同期I/OとダイレクトI/Oの使用を制御します。
ASA r2 の filesystemio_options の動作と推奨事項は、パラメータが Oracle 固有であり、ストレージ プラットフォームに依存しないため、 AFF/ FASシステムと同じです。ASA r2 はAFF/ FASと同様にONTAP を使用するため、同じベスト プラクティスが適用されます。
一般的な考え方に反して、非同期I/OとダイレクトI/Oは相互に排他的ではありません。NetAppでは、お客様の環境でこのパラメータの設定ミスが頻繁に発生し、この設定ミスが多くのパフォーマンス問題の直接的な原因となっていることを確認しています。
非同期I/Oとは、Oracle I/O処理を並行処理できることを意味します。さまざまなOSで非同期I/Oが使用可能になる前は、ユーザが多数のdbwriterプロセスを設定し、サーバプロセスの設定を変更していました。非同期I/Oでは、OS自体がデータベースソフトウェアに代わって効率的かつ並列的にI/Oを実行します。このプロセスによってデータがリスクにさらされることはなく、OracleのRedoロギングなどの重要な処理も同期的に実行されます。
ダイレクトI/OはOSのバッファキャッシュをバイパスします。UNIXシステムのI/Oは、通常、OSのバッファキャッシュを通過します。これは内部キャッシュを持たないアプリケーションでは便利ですが、OracleはSGA内に独自のバッファキャッシュを備えています。ほとんどの場合、OSのバッファキャッシュを使用するよりも、ダイレクトI/Oを有効にしてサーバRAMをSGAに割り当てる方が適しています。Oracle SGAはメモリをより効率的に使用します。さらに、I/OがOSバッファを通過すると、追加の処理が発生し、レイテンシが増加します。レイテンシの増加は、低レイテンシが重要な要件である書き込みI/Oの負荷が高い場合に特に顕著です。
オフシヨン filesystemio_options 次のとおりです。
-
* async。* OracleはI/O要求をOSに送信して処理します。このプロセスにより、OracleはI/Oの完了を待たずに他の処理を実行できるため、I/Oの並列化が促進されます。
-
* directio.* Oracleは、ホストOSキャッシュを介してI/Oをルーティングするのではなく、物理ファイルに対して直接I/Oを実行します。
-
なし。 Oracleは同期I/OとバッファI/Oを使用します。この構成では、共有サーバプロセスと専用サーバプロセスの選択、およびdbwriterの数がより重要になります。
-
* SETALL。* Oracleは非同期I/OとダイレクトI/Oの両方を使用します。ほとんどすべての場合、
setall最適です。
|
|
ASM環境では、OracleはASM管理ディスクに対して直接I/Oと非同期I/Oを自動的に使用するため、 filesystemio_options ASM ディスク グループには影響しません。ASM 以外の展開 (SAN LUN 上のファイル システムなど) の場合は、次のように設定します。 filesystemio_options = setall。これにより、非同期 I/O と直接 I/O の両方が有効になり、最適なパフォーマンスが得られます。
|
一部の古いオペレーティング システムでは非同期I/Oに問題があったため、非同期 I/O を避けるように勧める古いアドバイスがありました。ただし、非同期I/Oは安定しており、現在のすべてのオペレーティング システムで完全にサポートされています。特定の OS バグが特定されない限り、無効にする理由はありません。
データベースでバッファI/Oが使用されている場合は、ダイレクトI/Oに切り替えてもSGAサイズの変更が必要になることがあります。バッファI/Oを無効にすると、ホストOSキャッシュがデータベースに提供するパフォーマンス上のメリットがなくなります。RAMをSGAに再度追加すると、この問題が解決します。最終的には、I/Oパフォーマンスの向上につながります。
RAMはOSのバッファキャッシュよりもOracle SGAに使用する方がほとんどですが、最適な値を特定できない場合もあります。たとえば、断続的にアクティブになるOracleインスタンスが多数あるデータベースサーバでは、SGAサイズが非常に小さいバッファI/Oを使用することを推奨します。この方法では、実行中のすべてのデータベースインスタンスが、空いているOSのRAMを柔軟に使用できます。これは非常にまれな状況ですが、一部のお客様のサイトで確認されています。
|
|
* NetAppの推奨設定* filesystemio_options に `setall`ただし、状況によっては、ホスト バッファ キャッシュの損失により Oracle SGA の増加が必要になる場合があることに注意してください。ASA r2 システムは、低レイテンシの SAN ワークロード向けに最適化されているため、setall の使用は、ハイパフォーマンスのOracle 展開向けの ASA の設計と完全に一致します。
|