Solaris 2.6 情報ライブラリ (SPARC 版)

データベースの性能

データベースエンジンは主に仮想記憶 (VM) と入出力スループットの 2 つの点で処理能力が強化されています。

VM では、データベースエンジンが使用する共用メモリー領域で従来より大きなページサイズを使うことによりオーバーヘッドの減少に成功しています。このメモリー領域でデフォルトのシステムページサイズを使う代わりに、4M バイトという大きなページサイズを使用します。これによって、プロセスが使用するページのために各プロセスに添付される記述を管理するときに必要となるシステム内部の作業量が減少します。従来の記述共有メカニズムとこのページサイズを組み合わせることで、多くの業界標準のテストで約 12 % の性能向上が確認されています。

低レベルルーチンを変更して、大きなページリストを入出力処理するときに発生するオーバーヘッドを最小限に抑えた結果、I/O スループットが飛躍的に向上しました。この変更により、システムが使用する仮想アドレスをデバイスドライバが必要とする物理アドレスに変換して I/O 要求を処理するときに発生するオーバーヘッドも減少しました。これらの改良の結果、物理デバイスに対する入出力の負荷を大幅に軽減しています。

最近の Informix TPC-C ベンチマークテストの結果、次に示すスループットの向上が確認されています。

上記のベンチマークは、これまで記録されたもので最高の Informix TPC-C です。また、ミッドレンジクラスのシステムでは、最高のコスト性能を示しています。

TPC-C は、Transaction Performance Processing Council (TPC) の後援で行われるベンチマークテストです。このベンチマークでは、倉庫配送システムのシミュレーションを行います。9 個のテーブルに格納されたデータに対して、あらかじめ決められた方法で 5 つのトランザクションを実行します。評価単位は tpmC です。tpmC は、TPC-C ベンチマークでの 1 分間当たりのトランザクション数 (transactions per minute) という意味です。

UFS の直接入出力

ユーザーの多くが、メモリー上にバッファリングすることなく、直接ディスクにデータを書き込みたいと考えています。Solaris 2.6 では、ディスクへの直接入出力によってこれを実現しました。バルク入出力操作では、サイズの大きなバッファーを使って物理メモリーより大きなファイルを転送します。バルク入出力操作の例として、人工衛星から大量のデータをファイルにダウンロードする場合があります。

直接入出力されるデータはプロセスのアドレス空間に読み書きされるので、オペレーティングシステムのページキャッシング機構にオーバーヘッドがかかりません。

詳細については、directio(3C) のマニュアルページを参照してください。

raw 入出力

低レベルの入出力サポート用ルーチンが改良されました。この変更により、ファイルシステム (raw デバイス) を中継しないでディスクデバイスと入出力を行うときのスループットが大幅に向上しました (raw デバイスはデータベースファイルへのアクセスによく使用されます)。SPARCstorage Array 用のドライバは、スループット向上のために書き直されました。