Eliminating I/O bottleneck
HDD vs. SSD。 なぜ違いが重要なのか
HDD と SDD の間には継続的な戦いがあり、どちらにも長所と短所があります。 HDDは、アクチュエータ、読み書きアーム、スピンドル、そしてデータが格納されるプラッタで構成されています。 このため、大量の読み書き要求があると、プラッターは回転し、読み書きヘッドはドライブ上に散在するデータを非連続に探すために動き続ける。 これがレイテンシーの原因です。 しかし、SDD には可動部品がなく、データの保存にフラッシュ メモリを使用しているため、従来のハードディスクと比較して消費電力が少なく、騒音や振動、熱もほとんど発生せず、高速に動作します。
さて、違いを理解したところで、SSD のキャッシュとは一体何でしょう。 それは、SSD のフラッシュ メモリ チップに、頻繁にアクセスするデータ(別名ホット データ)を一時的に保存する領域のことです。 ホット データが格納されるキャッシュとして一定の部分を確保することにより、低レイテンシ SSD はデータ要求により迅速に応答し、読み取り/書き込み速度を加速し、全体のパフォーマンスを向上させます。
高いランダム IOPS を必要とするアプリケーションや大量のデータが連続しないブロック(たとえば、OLTP データベースやメール サービスなど)に書き込まれる場合、オール SSD システムを構築すると、懐が深くなる場合があります。 しかし、心配はご無用です。SSDキャッシュという解決策があります。 SSDキャッシュを単一のストレージボリュームまたはブロックレベルのiSCSI LUNにマウントして、読み取り/書き込みバッファを作成し、ランダムアクセスのパフォーマンスを向上させることができます。 HD ビデオ ストリーミングなどの大規模なシーケンシャル読み取り/書き込み操作には再読み取りパターンがないので、そのような作業負荷パターンは SSD キャッシュからあまり恩恵を受けられないことに注意してください。
SSD キャッシュは次の 2 つのモードに分類されます。 SSD を読み取り専用キャッシュとして設定すると、頻繁にアクセスされるデータのみがキャッシュに保存され、ランダム読み取り速度が加速されます。 データの書き込みには関与しないため、SSDが故障した場合でもデータは安全に保持されます。 リードオンリーキャッシュと比較して、リードライトキャッシュは、SSDに同期してデータを書き込む。 データの安全性を確保するために、少なくとも2台のSSDを使用してRAID 1を設定し、1台のSSDのフォールトトレランスを可能にする必要があります。 しかし、消耗した SSD の数が RAID 構成の耐障害性を超えると、データを失う危険性があります。
Choosing it right
SSD は、データを書き込む頻度が高いほど、その寿命が短くなる傾向があります。 キャッシュ ドライブがすぐに消耗してしまうようでは困るので、IO 要求に適合する適切な SSD を見つけることが最も重要です。 NAS用のSSDキャッシュをセットアップするために適切なSSDを選ぶ際には、2つの仕様をよく見てSSDの耐久性を評価する必要があります。 TBW (Terabytes Written) & DWPD (Drive Writes Per Day). TBWは、SSDの全寿命期間にわたって書き込めるデータの累積量を意味し、DWPDは、保証期間中に毎日SSD全体を何回上書きできるかを指します。 ドライブの容量と保証期間がわかっている場合、以下の式で TBW を DWPD に、またはその逆に簡単に変換できます。
- TBW = DWPD X 365 X 保証年数 X 容量 (TB)
- DWPD = TBW / (365 X保証年数X容量 (TB))
SSD が 2TB で 5 年保証だと仮定します。 DWPDが1であれば、その後5年間、毎日2TBのデータを書き込むことができることを意味します。 上記の式に基づくと、TBWの数値は、1 * 365 * 5 * 2 = 3650TBとなります。 3650TBになる前に買い換えた方がよいでしょう。 日常的な NAS の使用状況を記録して書き込みデータ量を評価し、TBW 評価がニーズを満たしているかどうかを確認してください。
NAS の日常的な使用で書き込みの多いアプリケーションがある場合は、重い書き込み活動に耐えられるようにエンタープライズ SSD を使用することが推奨されます。 コンシューマー向けSSDは通常、DWPDの数値が1以下であり、起動ドライブとして使用するには適していますが、継続的な読み取り/書き込みの作業負荷に耐えることはできません。 対照的に、ほとんどのエンタープライズ SSD は 1 から 10 の範囲でより高い DWPD を持つため、より良い耐久性を提供します。
Starting on the right track
SSD 耐久性とは別に、SSD キャッシュのメモリ要件も考慮する必要があります。 SSD キャッシュは、キャッシュ サイズに応じて一定のシステム メモリを必要とするため、より大きな SSD キャッシュをマウントする場合は、メモリをアップグレードする必要があります。 システムの安定性を維持するために、プリインストールされたシステム メモリの 1/4 のみが SSD キャッシングに割り当てられます。
1GB SSD が約 416KB システム メモリ (拡張可能メモリを含む) を占有するので、2 X 128GB SSD リードオンリー キャッシュ (合計 256GB) は最低 104MB メモリを必要とし、2 X 128GB SSD リードライト キャッシュ (合計 128GB) は 52MBメモリを消費することになる。 したがって、メモリが不足すると、SSD キャッシュ サイズが制限されることに留意する必要があります。
ストレージ効率の最適化
NAS に PCIe スロットがある場合、SATA および NVMe SSD の両方をサポートするデュアル M.2 SSD アダプター カードを取り付けて、キャッシュ パフォーマンスを高めることを検討できます。 Synology M2D18 を使用すると、データ ストレージ用に多くのドライブ ベイを確保できるだけでなく、2280/2260/2242 の M.2 モジュールに対応しているので、柔軟な SSD オプションを使用できます。
SSD キャッシュを追加してパフォーマンスを最適化する場合、互換リストを参照して互換 SSD を確認する以外に、ドライブ スペックシートで TBW と DWPD 定格も確認して、SSD 耐用度がワークロード要件に合っているかを確認されることを強くお勧めします。