Amazon FSx for NetApp ONTAPやFSx for Windows File Serverで重複排除を有効化した時の料金に注意しよう

重複排除を有効化するだけで料金が半額以下になるなんてことはない
2023.05.31

重複排除を有効化するだけでストレージ料金が半額以下になるって本当?

こんにちは、のんピ(@non____97)です。

皆さんは「Amazon FSx for NetApp ONTAP(以降FSxN)において、重複排除(正しくはStorage Efficiency)を有効化するだけでストレージ料金が半額以下になるって本当?」と思ったことはありますか? 私はあります。

FSxNの料金表を見てください。

FSxNの料金表

抜粋 : NetApp ONTAP ファイルシステム管理の料金 – Amazon Web Services

「効果的なコスト、ストレージの圧縮と重複排除が有効」であれば、「料金」と比較してストレージの料金が65%もお安くなっています。

続いて、Amazon FSx for Windows File Server(以降FSxW)の料金表を見てください。

FSxWの料金表

抜粋 : 料金 - Amazon FSx for Windows File Serve | AWS

こちらも「データ重複排除を有効にした場合の効果的なコスト」は「料金」と比較してストレージの料金が50%もお安くなっています。

重複排除するだけで料金が半額になるなんて最高ですね!!

というそんな美味しい話はありません。

以下解説します。

いきなりまとめ

  • FSxNとFSxWどちらも基本的にプロビジョニングしたサイズに対して課金が発生する
    • 例外はFSxNのキャパシティプールストレージ
  • 重複排除を有効化しているかどうかは料金に直接影響を与えない
    • 重複排除を有効化することで物理的なストレージ消費量を抑えるという意味で有効
  • 重複排除を加味してストレージをプロビジョニングする場合は以下に注意
    • 設定した重複排除、圧縮率の妥当性
    • 重複排除がかかるタイミング
  • ストレージサイズを徐々に拡張するのがオススメ
    • ただし、1度拡張すると再拡張まで6時間間隔を空ける必要がある

FSxNとFSxWどちらも基本的にプロビジョニングしたサイズに対して課金が発生するぞ

前提として、FSxNとFSxWどちらも基本的にプロビジョニングしたサイズに対して課金が発生します。

使用したストレージサイズに対しての課金ではありません。(例外としてFSxNのキャパシティプールストレージは使用したストレージサイズに対して課金されます)

プロビジョニングした ストレージサイズ

重複排除を有効化しているかどうかは料金に直接影響を与えません。重複排除を有効化することで、使用したストレージサイズを抑えることができるというだけです。

そのため、1,024GiBでストレージをプロビジョニングを行い、0埋めされた1,024GBのデータを書き込んだ場合、重複排除により物理ストレージ消費量が0GiBであってもプロビジョニングしたストレージサイズである1,024GiBに対して課金が発生します。

物理ストレージ消費量が0GiBであってもプロビジョニングしたストレージサイズ 1,024GiBに対して課金が発生

先述のFSxNの料金表で「「効果的なコスト、ストレージの圧縮と重複排除が有効」」が指しているのは重複排除や圧縮を有効にした場合に、一般的な汎用ファイル共有ワークロードでの削減率(65%)を加味した課金額ということになります。

重複排除量を加味してストレージサイズをプロビジョニングすれば良いのか?

この話を聞いて「重複排除量を加味してストレージサイズをプロビジョニングすれば良いのか?」と思われるかもしれません。

正解です。しかし、以下2点に注意する必要があります。

  1. 設定した重複排除、圧縮率の妥当性
  2. 重複排除がかかるタイミング

FSxNのFAQでは重複排除や圧縮をした場合のデータ削減量の目安を紹介しています。

ワークロードの種類 圧縮のみ 重複排除のみ 圧縮および重複排除
汎用ファイル共有 50% 30% 65%
仮想サーバーとデスクトップ 55% 70% 70%
データベース 65~70% 0% 65~70%
エンジニアリングデータ 55% 30% 75%
地質地震データ 40% 3% 40%

こちらはあくまで目安であって、実際にこちらに記載の通りデータ量が削減することを約束するものではありません。

自身のワークロードが想定している重複排除、圧縮率ほどデータ量が削減されるかはやってみなければ分からないところがあります。

また、重複排除がかかるタイミングについても要注意です。

FSxWの場合、重複排除はインラインで動作するのではなく、スケジューラーによって定期実行されます。

そのため、重複排除率が50%のファイルを書き込んだとしても、実際に圧縮されるのはスケジューラーによる重複排除処理実行後です。

重複排除がかかるタイミング

重複排除量を加味してギリギリのストレージサイズでプロビジョニングしている環境で、短時間に大量のデータを書き込むと、すぐディスクフルになるため注意しましょう。ある程度バッファー分を見込んでプロビジョニングする必要があります。

重複排除が間に合わずディスクフル

FSxWの重複排除の詳細は以下記事をご覧ください。

FSxWの料金例には以下のように記載されていますが、一気に10TB書き込むと確実にパンクします。仮に書き込めたとしてもストレージ使用率が100%になるため、ファイルサーバーとして健全ではありません。

米国東部 (バージニア北部) リージョンの HDD ストレージを使用して、10 TB の汎用ファイル共有データを保存するとします。典型的な重複排除による節約割合 50〜60% に基づいて、16 MBps のスループット容量で 5 TB のマルチ AZ ファイルシステムをプロビジョニングします。今月のバックアップストレージの平均使用量を 5 TB と仮定します。

合計月額料金

ストレージ: 5 TB x 0.025 GB/月 = 128 USD/月

スループット: 16 MBps x 4.50 USD/MBps/月 = 72 USD/月

バックアップ: 5 TB x 0.050 USD/GB-月 = 256 USD/月

合計月額料金: 456 USD (10 TB のデータの場合 0.045 USD/GB-月)

料金 - Amazon FSx for Windows File Serve | AWS

そのためにもバッファーをある程度見込んでサイジングすることが重要です。ただし、FSxW、FSxNどちらも一度プロビジョニングしたストレージサイズを縮小することはできないので注意が必要です。

FSxNであればインライン圧縮やインライン重複排除が行われ、データを投入したタイミングで重複排除・圧縮がかかります。しかし、ポストプロセスの重複排除や圧縮よりも効果は薄いため、FSxW同様に注意が必要です。

では、どうすれば良いのでしょうか。

必要に応じて徐々にストレージサイズを増やしていけば良いのです。

具体的にはストレージ使用率が80%ぐらいになったことを目処にストレージを拡張すると良いと考えます。

ただし、FSxW、FSxNどちらもストレージサイズを1度増やすと6時間感覚を空ける必要があります。データ移行などで短時間に大量に書き込みが発生する場合は、重複排除処理の間に書き込まれるデータサイズを加味してプロビジョニングをしましょう。

重複排除を有効化するだけで料金が半額以下になるなんてことはない

Amazon FSx for NetApp ONTAPやFSx for Windows File Serverで重複排除を有効化した時の料金の注意点を紹介しました。

請求書を見て「重複排除の設定しているのに思ったより高い!!」と驚かないように、料金の仕組みを把握しておきましょう。

この記事が誰かの助けになれば幸いです。

以上、AWS事業本部 コンサルティング部の のんピ(@non____97)でした!