AIX 6.1 JFS2 Oracleファイル・システム、ファイル・システム・キャッシュをあまり使用しない

AIX 6.1 JFS2 Oracleファイル・システム、ファイル・システム・キャッシュをあまり使用しない

私はAIX 6.1でOracleデータベースを実行しており、OracleはJFS2ファイルシステムを使用しています。 Maxpermは90%に設定されています。このサーバーは大量のデータベースサーバーですが、ファイルシステムキャッシュを使用しません(2%未満)。システムには40GBの使用可能なメモリがあります。

ファイルシステムキャッシュを使用しない理由はありますか?

ベストアンサー1

Oracleは実際に一生懸命働いています避けるファイルシステムは、それを実行できるシステムにデータファイル(制御ファイルとログファイルを含む)をキャッシュします。これは、同時I / Oを持つAIXおよびJFS2の場合です(参照:AIXでのOracleデータベースの管理調整提案も可能です。)

アイデアは、データの二重バッファリングを防ぐことです。 OracleはSGAのブロックをキャッシュします。 OSがこれらもキャッシュするとRAMに2回保存されます。これは無駄です。 Oracleは、オペレーティングシステムのキャッシュ交換ポリシーよりも正確にキャッシュを管理できる必要があります。 Oracleは、一般的な状況では、オペレーティングシステムよりも現在のワークロードに関するブロックの重要度/ホット度に関するより多くの情報を持っています。
(Oracleは、ACID属性を維持するためにデータベースだけが実行できる非常にクールな「書き込みバッファリング」も実行します。いつ、何をフラッシュして同期するかを正確に制御する必要があります。)

空きRAMがあり、Oracleキャッシュヒット率が悪い場合は、SGAサイズ(特にDBバッファキャッシュ)を増やすことを検討する必要があります。その他のチューニングビューを確認V$DB_CACHE_ADVICEし、他の用途(特にPGAおよび非Oracleアプリケーション)にもRAMが必要であることに注意してください。したがって、すべてのRAMをSGAに割り当てないでください。
Oracle 11gを使用している場合は、次の設定を行います。自動メモリ管理単一のターゲットメモリサイズを設定し、Oracleが独自にさまざまな領域のバランスを取ることができるように考慮する必要があります。 (以前のバージョンでは、自動SGAとPGA管理を学ぶことをお勧めします。)

いつものように、本番システムに適用する前に変更をテストしてベンチマークしてください。そして、オペレーティングシステムを使い果たすのではなく、他の要件を満たすために、Oracleメモリ領域の外側に「合理的な」量のメモリを残してください。

データベースエンジン(ブランドに関係なく)またはファイルシステム/オペレーティングシステムのいずれかのキャッシュに最適なものであるかどうかは、古い議論です。よく調整されたデータベースは、一般的な状況でより効果的にキャッシュできる必要があります。オペレーティングシステムが誤って設定されたデータベースを無効にする可能性があります。

おすすめ記事