Solaris ボリュームマネージャの管理

ランダム入出力と順次入出力の最適化

ここでは、構成の最適化方法について説明します。

作成しようとしている Solaris ボリュームマネージャのボリューム上で順次入出力とランダム入出力のどちらが多用されるのかわからない場合は、性能のチューニングに関する以下の手法を適用しないでください。実装が適切でないと、性能が低下することがあります。

以下に示す最適化のための手法では、RAID-0 ボリュームを最適化するものとします。通常は、RAID-0 ボリュームを最適化してからそのボリュームをミラー化して、最適な性能とデータの冗長性を同時に達成します。

ランダム入出力

データベースや汎用ファイルサーバーに使用されるランダム入出力環境では、すべてのディスクにおいて、入出力要求の応答にかかる時間が同じであることが望まれます。

たとえば、データベースアプリケーション用に 40G バイトの記憶領域があるとします。10G バイトのディスクスピンドルを 4 つ使ってストライプ化を行っている場合、入出力がランダムで、ボリューム間で均一に分散されていれば、各ディスクの使用率が均一になり、通常、性能は向上します。

ランダム入出力性能を最大化するためには、ディスクの使用率を 35 パーセント以下に抑えるようにします (iostat コマンドで調べることができる)。ディスクの使用率が定常的に 65 パーセントを超える場合には問題となります。90 パーセントを超える場合には重大な問題が発生します。このような問題を解決するためには、さらに多くのディスク (スピンドル) を追加して、新しい RAID-0 ボリュームを作成する必要があります。


注 –

既存のボリュームにディスクを追加するだけでは、性能を向上することはできません。適切なパラメータを設定して新しいボリュームを作成し、性能の最適化を図る必要があります。


データをすべてのディスクに分散する場合には、飛び越し値のサイズは重要ではありません。一般的な入出力要求よりも大きい飛び越し値を指定するだけで十分です。

順次アクセス入出力

テーブル全体のスキャンが頻繁に行われる DBMS サーバーまたはデータの非常に多い環境で使用される NFS サーバーなどの順次入出力環境で、構成の性能を最適化できます。順次入出力環境を活用するには、飛び越し値を通常の入出力要求のサイズより小さく設定してください。

たとえば、通常の入出力要求のサイズが 256K バイトで、ストライプが 4 スピンドルに渡っているとします。この場合の適切なストライプユニットサイズは

256K バイト / 4 = 64K バイトまたはそれ以下です。

この場合には、通常の入出力要求が複数のディスクスピンドルに分散されるため、順次入出力の帯域幅が増加します。


注 –

順次入出力環境では、シーク時間と回転待ち時間は実質的にゼロです。順次入出力の最適化では、ディスクの内部転送速度が最も重要な要素になります。


順次アプリケーションの通常の入出力サイズには大きい値を使用します (128K バイト以上、場合によっては 1M バイト以上)。ここでは、通常の入出力要求のサイズが 256K バイトで、ストライプが 4 ディスクスピンドルに渡っているとします。

256K バイト / 4 = 64K バイトであるため、

飛び越しサイズは 32–64K バイトにするにが適切です。