2ヶ月経つと性能が劣化するという落とし穴
フラッシュストレージは速くて当たり前、と言われるが、読み取りの性能に対して書き込みの性能は1/2~1/3程度である。それでもハードディスクに比べれば大変高速だが、使用していくうちに、書き込みの性能が大幅に低下する可能性があるという事実をご存じだろうか。
「最初はとても高性能だったのに最近急に書き込み性能だけ劣化した…という場合、その原因のほとんどは、ガベージコレクションです」(若松氏)
ガベージコレクションは、データの書換え時に起こるバックグラウンド処理だ。なぜバックグラウンド処理が発生するのかというと、フラッシュはハードディスクと違ってデータの上書きができないため、書き換える際には、データの削除が必要になる。しかも連続した書き込み領域を確保するために書き換える対象より大きな単位でしか削除ができない。つまり、書き換えなくてもいいデータまで削除、再度書き込む必要がある訳だが、このときに発生する追加の処理が書き込み性能劣化の要因となる。
「購入した時点では何も書かれていないため、書換えも無く高速です。ウェアレベリングで平準化して、全てのセルに書き込まれた後の2巡目の書き込みからガベージコレクションは発生します。つまり、セルあたり3万回の書き込みが可能なeMLCでは、最初の1回目の書き込みと、それ以降の29,999回の書き込みの性能が違うという点を理解しておく必要があります」(若松氏)
では、その性能劣化はいつから発生すると考えればいいのか?
「初期の容量利用率やIO特性によっても違ってきますので、あくまで参考レベルですが、データベース用途にフラッシュを使っているEMCのお客様のデータでは、早い企業で20日、遅い企業でも149日目から2回目の書き込みが始まっています。平均で大体2ヶ月くらいでしょうか」(若松氏)
とはいえ、全てのフラッシュストレージで大きな性能劣化が発生する訳ではないという。ガベージコレクションの方法が違うためであるが、その方法には、ストレージコントローラで処理するものとSSD内のASICで処理するものの2種類がある。
「性能が大きく低下するのは、ストレージコントローラで行っているケースです。ストレージコントローラでガベージコレクションを処理する場合、コントローラとフラッシュの間のバックエンドの帯域を使って、コントローラのCPUを使用して追加のI/O処理することになります。書き換えによるパリティの再計算も相まってコントローラのCPU負荷が増大します。SSD内のASICで行うものはその中で処理が完結されるため、他のSSDへの性能影響はほぼありません。それによるストレージコントローラのCPU負荷の追加もありません。XtremIOは、SSDのASICで行う方式を採用していますので、2巡目以降の書き込みでも一貫性の高い性能が出せます」(若松氏)
では全てのベンダーがSSD内で行えばいいはずなのに、なぜストレージコントローラで処理するベンダーがいるのか?という疑問も残る。
「汎用的なSSDはいじらず、コントローラのインテリジェンスを追求する、という設計思想があります。CPUの性能も年々上がっていますので、それでコントローラの負荷が上がっても、後継の高性能のものに交換していけば問題ない、という考え方です。ただ、SSDもそのままでは、ストレージシステムとして最適化された処理ができませんので、ストレージシステムに組み込む際には、ファームウェアを変える必要があります。SSDベンダーと協力して開発する必要があり、それができるベンダーとできないベンダーの差もあるでしょう」(若松氏)
こういった点を踏まえて、導入前の性能テストでは、必ず、2巡目以降の書き込みまで確認する必要があるだろう。
調査会社のIDCでは、オールフラッシュストレージのテストフレームワークをまとめたホワイトペーパー「All Flash Array Performance Test Framework」も発行している。そういった情報も、落とし穴にはまるリスクも削減する上で有用だろう。
「性能重視の場合で、第三者機関の公正なテストフレームワークに則って、2巡目の書き込みまでテストした上で、XtremIOよりも性能がよければ、そのときはその製品を使ってください」と若松氏は自信を見せる。EMCでは、これらのコストメリット、性能の落とし穴を事前に確認できるアセスメントサービスを提供している。どういったシステムに対しどのような構成にすればいいのか。システム統合なのか、仮想化の活用なのか、フラッシュを入れた際の効果を可視化した上で判断することが可能だ。
Oracleデータベース環境を新定義!―オールフラッシュストレージで変わる!
データベースにある情報をもっとビジネスに活用したい!―そんな声が高まっています。一方、データベース管理者は、チューニングによる性能の担保やサイジング、運用等に時間を要するといった、従来のデータベースの運用の課題から抜け出せていないという現状もあります。
オールフラッシュストレージは、これらの課題を一掃し、データベース環境を変革する力を持っています。
Oracleデータベース環境の性能やコスト、運用、分析やアジャイル開発といった課題に対して、オールフラッシュストレージが提供できるメリットとは?オールフラッシュストレージでコストはどれくらい削減できるのか?
本資料では、これらの課題を事例とともにご紹介しています。