検索
ニュース

Amazon S3で「ストレージコスト80%削減」――たった6カ月で成功した“再現性のある方法”とは?「知らない間に予算オーバー」を3段階で解消

クラウドストレージの利用では、長く使い続けているうちにどこにコストの無駄があるのかを把握しにくくなり、気付けばコストが膨らんでいたという状況が起こりがちだ。そうした状況に陥っていた気象情報企業は、コスト最適化の取り組みを進め、80%削減することに成功した。どのような対策を取ったのか。

Share
Tweet
LINE
Hatena

 クラウドストレージを長く使い続けているうちに起こりがちなのは、気付かないままコストが膨らんでいたという状況だ。データやその保存先となるバケットが増えれば、どこにコストの無駄があるのかを把握すること自体が難しくなる。

 Amazon Web Services(AWS)のオブジェクトストレージ「Amazon S3」を利用する中で、米国の気象情報企業WeatherBugもそうしたコスト増大に直面していた。同社はAWSの複数のアカウントにまたがり、数百のAmazon S3バケットを運用していた。ストレージコストが増え続ける一方、何が支出を押し上げているのかを詳細に把握できない状態が続いていた。

6カ月以内に「Amazon S3コストを80%削減」 その方法は?

 WeatherBugはストレージコストを削減するためのプロジェクトに着手。その結果、6カ月以内にストレージコストを80%削減することに成功したという。どのような方法を採用したのか。同社は、3段階に分けて対策を進めることにした。

 まず、数百のバケットに散らばるデータセットの把握から始めた。ストレージの使用状況やアクティビティーを可視化する「Amazon S3 Storage Lens」を使い、個々のデータセットの容量や利用状況を詳細に調べた。

 その結果、ストレージコストを押し上げる要因として、主に次のような問題が見つかった。

  • バージョン管理を有効にしたバケットの半数超にライフサイクルポリシーがない
  • ほとんど参照されないログバケットが最も高価な「S3 Standard」に置かれている
  • ランディングゾーンのバケットに有効期限ルールがなく古いデータが残る
  • 重要度の低いデータセットの重複とリージョン間レプリケーション

 こうした問題に対し、WeatherBugはデータのアクセスパターンに応じたライフサイクルポリシーを設定し、ストレージを最適化する方針を採った。アクセスパターンの分析やライフサイクルポリシーの生成には、AWSのAIコーディングエージェントツール「Kiro CLI」を活用した。

1.可視化と評価

 同社は、「可視化と評価」「即効性のある改善」「戦略的な最適化」の3段階でストレージコストの最適化を進めた。

 第1段階では、S3 Storage Lensを使って複数のAWSアカウントを横断的に分析し、ストレージの利用実態を把握した。これによって、ライフサイクルポリシーが設定されていないバケットなど、コスト削減の余地が大きい箇所を特定し、どこから改善に着手すべきか優先順位を付けられるようになった。

 AWSは、この可視化と評価をKiro CLIで実行する方法を示している。例えば、S3 Storage Lensの展開からストレージパターンの分析、コスト最適化策の提示、初期評価レポートの生成までを自然言語で指示できる。サンプルは次の通り。

@q 私のS3アカウントにAmazon S3 Storage Lensをデプロイして。
・アカウントレベルの可視性を有効にする
・日々の指標収集を設定する
・ストレージパターンの分析を設定する
・S3のコスト最適化の方法を表示する
・初期S3評価レポートを生成し、レビューのためにローカルに保存する

2.即効性のある改善

 評価を終えたWeatherBugは、すぐに効果が見込める低リスクの改善に着手した。S3環境全体を調べたところ、期限切れの削除マーカー(オブジェクトが削除済みであることを示す情報)や、未完了のマルチパートアップロード(大容量ファイルなどを分割して転送する機能)がストレージを消費していることが分かった。

 そこで、こうした不要なデータを自動的に削除するライフサイクルルールを、AWSのインフラや設定をコードで管理する「AWS CloudFormation」で設定した。

 AWSは、不要な削除マーカーや未完了のマルチパートアップロードをKiro CLIで洗い出すサンプルも示している。ストレージとコストへの影響を分析し、クリーンアップポリシーを提案させる例は次の通り。

@q 削除マーカーと未完了のマルチパートアップロードによるストレージの無駄を分析して。
・期限切れの削除マーカーを特定する
・ストレージとコストへの影響を表示する
・クリーンアップポリシーを提案する
・結果を表形式で要約し、ローカルに保存する

3.戦略的な最適化

 続いてWeatherBugは、コスト削減効果が最も大きいライフサイクル管理の本格展開に取り組んだ。S3バケット内のプレフィックス(オブジェクト名の先頭部分)単位でデータのアクセスパターンを分析し、利用頻度に応じてより低コストなストレージクラスへ移行するライフサイクルポリシーを設定した。

 AWSは、アクセスパターンを分析し、ライフサイクルルールを作成するKiro CLIの利用例も示している。ストレージクラスの移行先を推奨し、削減できるコストを試算させるサンプルは次の通り。

@q アクセスパターンを分析し、最適なライフサイクルルールを作成して。
・バケット全体にわたるオブジェクトのアクセス頻度を表示する
・ストレージクラスの移行を推奨する
・移行による潜在的な削減額を計算する
・結果を表形式で要約し、ローカルに保存する

6カ月で80%削減――再現性のある枠組み

 ストレージの利用状況を可視化して改善箇所を洗い出し、不要なデータを整理した上で、アクセスパターンに応じたライフサイクル管理を展開する。この3段階を経て、WeatherBugは6カ月でストレージコストを80%削減した。データへのアクセス性や運用の安定性を犠牲にすることはなかったとしている。

 AWSは、WeatherBugが採用した手法は、管理するS3バケットが数十から数百規模の環境にも応用できるとしている。ストレージの利用状況を把握し、削減効果の大きい箇所から優先的に改善し、継続的な管理を自動化していくという考え方だ。AWSは2026年8月13日(米国時間)に、本事例を公式ブログで公開した。

Copyright © ITmedia, Inc. All Rights Reserved.

ページトップに戻る