ZFSチューニング



  • SSD導入でのZFS性能強化
    • 参考資料
    • 考察
      • ハイブリッド・ストレージ・プールとして、二つの機能がサポートされている。
        • ZIL(Write用ログ領域): データ書き込み時のsyncをSSDで受け、素早く完了させる。物理メモリー容量の半分程度のSSD容量を使用する。
        • L2ARC(Read用拡張2次キャッシュ): 静的データをSSDに溜め、HDDの苦手なランダム読み込みを高速化する。SSDが大容量であるほど効果も高いと考えられる。
      • 必要な特性
        • ZILは(保持時間は短いが)信頼性が要求される。必要に応じてミラーリングも構成できるが、SSD製品ではSLC型が妥当と思われる。
        • L2ARCの信頼性はほどほどで良い。チェックサムで誤りが見つかればSSDのデータは読み捨ててディスクから読み直す。また、システムをシャットダウンすると内容は破棄され、システム起動時は空の状態になる。SSD製品は、廉価なMLC型で良いと思われる。
      • Sunのプロモーション資料では、ZIL用SSDが32GB×1、L2ARC用SSDが80GB×1の構成で、SATAがSASより早くなると謳われている。
        • 容量からSSD製品を推定すると、恐らく、ZILにはIntelのSLC型、L2ARCにはIntelのMLC型を採用しているのではないか?
      • ZILが真価を発揮するのは、重い多重トランザクション処理でコミット性能が響くケースと考えられる。個人用途では、L2ARCのみで十分な改善効果を期待できるのではないか?
    • 実機での導入確認
      • L2ARCサポートが導入されたSolaris 10 10/09リリースは、不具合を持つ地雷品と思われるため、実機導入はしばらく保留とする

  • Solaris 10/09、OpenSolaris 2009.06での書込み性能低下
    • ZILの動作に変更があったためか、改版以降、ZFSへの書込み性能に低下が見られる。
      • 改版前は、100Mバイト/秒ほどの速度で書込みをしても、数秒間バッファリングされ、物理ディスクへの頻繁な書込みはなかった。
      • 改版後は、小刻みな書込みが行われるようになった。
    • ZILの無効化を設定すると、この性能低下は回避できるようだ(Sunは推奨していない)。そのため、ZILの動作が何らかの形で関係していると考えられる。
      • 無効化の方法は、下記の資料に記載されている。しかし、同時にこの資料では、無効化設定を利用環境に適用してはいけないと強く言っている。リスクとして挙げられているのは、データの整合性であるが、ファイルシステムとしての整合性は壊れないようにも読める。
    • ZILは、ZFSのバージョンアップに伴って機能拡張されているが、ZILそのものはZFSの初期段階から実装され、その機能目的も変わっていないようだ。
    • 改版前もZILは実装されていたことを考えれば、ZILを無効化しての回避策は、デグレードと考えられる。

  • COWは絶対ではない
    • SCSI・SASディスクや最近のSATAディスクには、コマンドキューイング機能が実装されている。コマンドキューイング機能が働くと、ZFSのウリのひとつであるCOW(Copy-On-Write)の原則が崩れ、SYNCができずにシステムが停止した場合には、ファイルシステムの整合性を保証できなくなるのではないか?
最終更新:2011年09月14日 08:30
ツールボックス

下から選んでください:

新しいページを作成する
ヘルプ / FAQ もご覧ください。