Upgrade to Pro — share decks privately, control downloads, hide ads and more …

Glacierだからってコストあきらめてない? / JAWS Meet Glacier Cost

Glacierだからってコストあきらめてない? / JAWS Meet Glacier Cost

Avatar for sasaki

sasaki

July 05, 2025
Tweet

More Decks by sasaki

Other Decks in Technology

Transcript

  1. 2 • 名前 ◦ 佐々木真也 • 所属 ◦ 株式会社コドモン ▪

    SREチーム マネージャー • X ◦ @taishin • 居住地 ◦ 大阪 自己紹介
  2. 5

  3. 6 CONFIDENTIAL - © 2022 CoDMON Inc. 6 S3 ストレージクラス

    • S3 Standard • S3 Standard-IA • S3 Glacier Instant Retrieval • S3 Glacier Flexible Retrieval • S3 Glacier Deep Archive 高コスト 低コスト
  4. 7 CONFIDENTIAL - © 2022 CoDMON Inc. 7 S3 ストレージクラス

    • S3 Standard • S3 Standard-IA • S3 Glacier Instant Retrieval • S3 Glacier Flexible Retrieval • S3 Glacier Deep Archive 高コスト 低コスト
  5. 8 CONFIDENTIAL - © 2022 CoDMON Inc. 8 ウチのGlacier Deep

    Archive(GDA)の高くない? S3 Standard S3 GDA
  6. 9 CONFIDENTIAL - © 2022 CoDMON Inc. 9 GDA 料金がかかっていたS3バケット

    • PB!! 1.xxx PB • サイズ ◦ 1.XPB • オブジェクト数 ◦ 5X万
  7. 10 CONFIDENTIAL - © 2022 CoDMON Inc. 10 S3 Glacier

    Deep Archive 保存料金 • USD 0.002/GB /月 (東京リージョン)  • 1PBの場合 ◦ 月 0.002 * 1024 * 1024 * 150 = ¥314,572.8 ◦ 年 314,572.8 * 12 = ¥3,774,873.6
  8. 12 CONFIDENTIAL - © 2022 CoDMON Inc. 12 GDA 料金がかかっていたS3バケットのオブジェクト

    • .sql ? mysqldump? ただのテキストデータなのでは?
  9. 13 CONFIDENTIAL - © 2022 CoDMON Inc. 13 データベースのバックアップ •

    データベース(Aurora MySQL)のバックアップを保存する必要があった • 現在はAmazon Aurora Export S3を利用 ◦ Apache Parquet形式なので、圧縮される • 以前は mysqldumpのデータをS3にそのまま保存 ◦ .sqlファイル、テキスト形式 ◦ テーブルごとにファイルを作成・・・
  10. 14 CONFIDENTIAL - © 2022 CoDMON Inc. 14 データベースのバックアップ •

    データベース(Aurora MySQL)のバックアップを保存する必要があった • 現在はAmazon Aurora Export S3を利用 ◦ Apache Parquet形式なので、圧縮される • 以前は mysqldumpのデータをS3にそのまま保存 ◦ .sqlファイル、テキスト形式 ◦ テーブルごとにファイルを作成・・・
  11. 15 CONFIDENTIAL - © 2022 CoDMON Inc. 15 それなら •

    テキストファイルだったら圧縮すれば、データ量が減って、コストが下が るのでは? ① Glacierから取り出し
  12. 16 CONFIDENTIAL - © 2022 CoDMON Inc. 16 それなら •

    テキストファイルだったら圧縮すれば、データ量が減って、コストが下が るのでは? ② ダウンロード
  13. 17 CONFIDENTIAL - © 2022 CoDMON Inc. 17 それなら •

    テキストファイルだったら圧縮すれば、データ量が減って、コストが下が るのでは? ③ 圧縮
  14. 18 CONFIDENTIAL - © 2022 CoDMON Inc. 18 それなら •

    テキストファイルだったら圧縮すれば、データ量が減って、コストが下が るのでは? ④ Glacierにアップロード
  15. 19 CONFIDENTIAL - © 2022 CoDMON Inc. 19 AWS SAに相談

    • 割とよくやることらしい ◦ 自動化している事例 https://aws.amazon.com/jp/blogs/news/compressing-and-archiving-logs-to-the-amazon-s3-glacier-storage-classes/
  16. 20 CONFIDENTIAL - © 2022 CoDMON Inc. 20 AWS SAにもらったアドバイス

    • 事前に圧縮率を検証したほうがいいよ ◦ 圧縮後が80%くらいならGlacierの取り出し料金は1年くらいでペイで きそう • Glacierはオブジェクトごとにメタデータが付与され、その容量も課金対象 なので、アーカイブしてファイル数も減らした方がいいよ • ゲートウェイ型のVPCエンドポイントを使えば S3 <-> EC2間のデータ転 送量はかからないよ • 作業はエラー検知、ハンドリングもした方がいいよ
  17. 22 CONFIDENTIAL - © 2022 CoDMON Inc. 22 圧縮率の調査 •

    GZIPでの圧縮 ◦ データサイズ 534GB → 50GB ◦ 圧縮後のデータ量 9% 圧縮後が80%で一次費用1年で元取れるかもってことだっ たので9%ならもっと早く回収できそう ↓ 実施決定
  18. 23 CONFIDENTIAL - © 2022 CoDMON Inc. 23 圧縮方式 •

    gzipを採用 ◦ 選定理由 ▪ bz2は圧縮率は高いが、時間がかかりすぎ、作業にかかる一時費用にも差が大きそう ▪ 圧縮後の費用差もそんなに高額ではない gzip bz2 圧縮後のデータサイズ 50GB 32GB 圧縮後の割合 9% 6% 圧縮完了までの時間 約2時間 約21時間 534GBのデータでのテスト結果
  19. 24 CONFIDENTIAL - © 2022 CoDMON Inc. 24 ファイル数の削減 •

    一回のバックアップデータを一ファイルにアーカイブしてファイル数を削減 xxx.sql xxx.sql xxx.sql 2020120101.tar.gz
  20. 25 CONFIDENTIAL - © 2022 CoDMON Inc. 25 EC2インスタンス •

    インスタンスサイズ ◦ c7g.largeを選定 ▪ maxでCPU使用率60%、メモリ使用率50% ▪ c7g.xlargeにしても完了までの時間に変化はなかった • EBSサイズ ◦ 1.5TB ▪ 一回のバックアップの最大が900GBくらい ▪ 圧縮作業時でも使用量は1.2倍程度なので1.5TBで対応可能と判断
  21. 26 CONFIDENTIAL - © 2022 CoDMON Inc. 26 EC2インスタンス •

    AMIの用意 ◦ 実行スクリプトを配置 ◦ Cloudwatchエージェントの設定 ▪ CloudWatch Logsに実行経過、エラー、完了を送信 ◦ Session Managerでログインできるようにする
  22. 29 CONFIDENTIAL - © 2022 CoDMON Inc. 29 Glacierからの取り出し •

    ⼤容量復元 ◦ 0.005 USD/GB ◦ 0.025 USD/1,000 リクエスト • 今回の試算 ◦ 0.005USD/GBx1,000,000 GB = 5,000 USD ◦ 0.025USD/1,000リクエストx500,000=12.5 USD
  23. 30 CONFIDENTIAL - © 2022 CoDMON Inc. 30 S3 →

    EC2へのデータ転送 • ゲートウェイエンドポイントを経由 することで、データ処理料金や時間 単位料金は無料 • GET 料⾦ ◦ 0.00037 USD/1,000 リクエスト ◦ 無視できる範囲
  24. 33 CONFIDENTIAL - © 2022 CoDMON Inc. 33 EC2 →

    S3へのデータ転送 • ゲートウェイエンドポイントを経由 することで、データ処理料金や時間 単位料金は無料 • PUT 料⾦ ◦ 0.065 USD/1,000 リクエスト ◦ アーカイブしてファイル数を減らす ことで無視できる範囲
  25. 35 CONFIDENTIAL - © 2022 CoDMON Inc. 35 実行 •

    2ヶ月分くらいのバックアップをGDAから取り出し • 作成したAMIからEC2を30台くらい起動 • 各インスタンスでスクリプトを実行 • 2日くらいで終了 ◦ 終了したらCloudWatch Logs → Slackで通知
  26. 37 CONFIDENTIAL - © 2022 CoDMON Inc. 37 GDA 料金がかかっていたS3バケット

    • GDA削減額 ◦ 該当バケット約90% 削減 • 一時費用 ◦ 約5ヶ月でペイ
  27. 39 CONFIDENTIAL - © 2022 CoDMON Inc. 39 まとめ •

    GDAの費用は知らない間に大きくなってる • テキストデータなら圧縮効果は大きいのでやってみる価値はあり • 計画は大事!