Glacierだからってコストあきらめてない? / JAWS Meet Glacier Cost
by
sasaki
Link
Embed
Share
Beginning
This slide
Copy link URL
Copy link URL
Copy iframe embed code
Copy iframe embed code
Copy javascript embed code
Copy javascript embed code
Share
Tweet
Share
Tweet
Slide 1
Slide 1 text
Glacierだからってコストあきらめてない? 2025年7月5日 株式会社コドモン 佐々木真也
Slide 2
Slide 2 text
2 ● 名前 ○ 佐々木真也 ● 所属 ○ 株式会社コドモン ■ SREチーム マネージャー ● X ○ @taishin ● 居住地 ○ 大阪 自己紹介
Slide 3
Slide 3 text
3 パパママと、子どもとの時間に 1秒でも多くの笑顔と愛情を すべての先生に 子どもと向き合う時間と心のゆとりを 「保育・子育て」と 社会をつなげる 保護者の子育てへの伴走 保育・教育者の環境改善 子育ての社会インフラ作り 子どもを取り巻く環境を テクノロジーの力で よりよいものに ミッション 私たちの使命
Slide 4
Slide 4 text
すべての先生に 子どもと向き合う 時間と心のゆとりを こんなプロダクトを開発しています メインプロダクトは、こども施設職員の業務を支援するWebアプリケーション。 保護者と施設のやり取りを支えるモバイルアプリケーションや、施設職員向けモバイル版 アプリケーション、外部サービスと連携するAPIなども開発しています。 4
Slide 5
Slide 5 text
5
Slide 6
Slide 6 text
6 CONFIDENTIAL - © 2022 CoDMON Inc. 6 S3 ストレージクラス ● S3 Standard ● S3 Standard-IA ● S3 Glacier Instant Retrieval ● S3 Glacier Flexible Retrieval ● S3 Glacier Deep Archive 高コスト 低コスト
Slide 7
Slide 7 text
7 CONFIDENTIAL - © 2022 CoDMON Inc. 7 S3 ストレージクラス ● S3 Standard ● S3 Standard-IA ● S3 Glacier Instant Retrieval ● S3 Glacier Flexible Retrieval ● S3 Glacier Deep Archive 高コスト 低コスト
Slide 8
Slide 8 text
8 CONFIDENTIAL - © 2022 CoDMON Inc. 8 ウチのGlacier Deep Archive(GDA)の高くない? S3 Standard S3 GDA
Slide 9
Slide 9 text
9 CONFIDENTIAL - © 2022 CoDMON Inc. 9 GDA 料金がかかっていたS3バケット ● PB!! 1.xxx PB ● サイズ ○ 1.XPB ● オブジェクト数 ○ 5X万
Slide 10
Slide 10 text
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
Slide 11
Slide 11 text
11 CONFIDENTIAL - © 2022 CoDMON Inc. 11 GDA 料金がかかっていたS3バケットのオブジェクト ● .sql ?
Slide 12
Slide 12 text
12 CONFIDENTIAL - © 2022 CoDMON Inc. 12 GDA 料金がかかっていたS3バケットのオブジェクト ● .sql ? mysqldump? ただのテキストデータなのでは?
Slide 13
Slide 13 text
13 CONFIDENTIAL - © 2022 CoDMON Inc. 13 データベースのバックアップ ● データベース(Aurora MySQL)のバックアップを保存する必要があった ● 現在はAmazon Aurora Export S3を利用 ○ Apache Parquet形式なので、圧縮される ● 以前は mysqldumpのデータをS3にそのまま保存 ○ .sqlファイル、テキスト形式 ○ テーブルごとにファイルを作成・・・
Slide 14
Slide 14 text
14 CONFIDENTIAL - © 2022 CoDMON Inc. 14 データベースのバックアップ ● データベース(Aurora MySQL)のバックアップを保存する必要があった ● 現在はAmazon Aurora Export S3を利用 ○ Apache Parquet形式なので、圧縮される ● 以前は mysqldumpのデータをS3にそのまま保存 ○ .sqlファイル、テキスト形式 ○ テーブルごとにファイルを作成・・・
Slide 15
Slide 15 text
15 CONFIDENTIAL - © 2022 CoDMON Inc. 15 それなら ● テキストファイルだったら圧縮すれば、データ量が減って、コストが下が るのでは? ① Glacierから取り出し
Slide 16
Slide 16 text
16 CONFIDENTIAL - © 2022 CoDMON Inc. 16 それなら ● テキストファイルだったら圧縮すれば、データ量が減って、コストが下が るのでは? ② ダウンロード
Slide 17
Slide 17 text
17 CONFIDENTIAL - © 2022 CoDMON Inc. 17 それなら ● テキストファイルだったら圧縮すれば、データ量が減って、コストが下が るのでは? ③ 圧縮
Slide 18
Slide 18 text
18 CONFIDENTIAL - © 2022 CoDMON Inc. 18 それなら ● テキストファイルだったら圧縮すれば、データ量が減って、コストが下が るのでは? ④ Glacierにアップロード
Slide 19
Slide 19 text
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/
Slide 20
Slide 20 text
20 CONFIDENTIAL - © 2022 CoDMON Inc. 20 AWS SAにもらったアドバイス ● 事前に圧縮率を検証したほうがいいよ ○ 圧縮後が80%くらいならGlacierの取り出し料金は1年くらいでペイで きそう ● Glacierはオブジェクトごとにメタデータが付与され、その容量も課金対象 なので、アーカイブしてファイル数も減らした方がいいよ ● ゲートウェイ型のVPCエンドポイントを使えば S3 <-> EC2間のデータ転 送量はかからないよ ● 作業はエラー検知、ハンドリングもした方がいいよ
Slide 21
Slide 21 text
21 事前検討
Slide 22
Slide 22 text
22 CONFIDENTIAL - © 2022 CoDMON Inc. 22 圧縮率の調査 ● GZIPでの圧縮 ○ データサイズ 534GB → 50GB ○ 圧縮後のデータ量 9% 圧縮後が80%で一次費用1年で元取れるかもってことだっ たので9%ならもっと早く回収できそう ↓ 実施決定
Slide 23
Slide 23 text
23 CONFIDENTIAL - © 2022 CoDMON Inc. 23 圧縮方式 ● gzipを採用 ○ 選定理由 ■ bz2は圧縮率は高いが、時間がかかりすぎ、作業にかかる一時費用にも差が大きそう ■ 圧縮後の費用差もそんなに高額ではない gzip bz2 圧縮後のデータサイズ 50GB 32GB 圧縮後の割合 9% 6% 圧縮完了までの時間 約2時間 約21時間 534GBのデータでのテスト結果
Slide 24
Slide 24 text
24 CONFIDENTIAL - © 2022 CoDMON Inc. 24 ファイル数の削減 ● 一回のバックアップデータを一ファイルにアーカイブしてファイル数を削減 xxx.sql xxx.sql xxx.sql 2020120101.tar.gz
Slide 25
Slide 25 text
25 CONFIDENTIAL - © 2022 CoDMON Inc. 25 EC2インスタンス ● インスタンスサイズ ○ c7g.largeを選定 ■ maxでCPU使用率60%、メモリ使用率50% ■ c7g.xlargeにしても完了までの時間に変化はなかった ● EBSサイズ ○ 1.5TB ■ 一回のバックアップの最大が900GBくらい ■ 圧縮作業時でも使用量は1.2倍程度なので1.5TBで対応可能と判断
Slide 26
Slide 26 text
26 CONFIDENTIAL - © 2022 CoDMON Inc. 26 EC2インスタンス ● AMIの用意 ○ 実行スクリプトを配置 ○ Cloudwatchエージェントの設定 ■ CloudWatch Logsに実行経過、エラー、完了を送信 ○ Session Managerでログインできるようにする
Slide 27
Slide 27 text
27 構成と費用が発生するポイント
Slide 28
Slide 28 text
28 CONFIDENTIAL - © 2022 CoDMON Inc. 28 構成
Slide 29
Slide 29 text
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
Slide 30
Slide 30 text
30 CONFIDENTIAL - © 2022 CoDMON Inc. 30 S3 → EC2へのデータ転送 ● ゲートウェイエンドポイントを経由 することで、データ処理料金や時間 単位料金は無料 ● GET 料⾦ ○ 0.00037 USD/1,000 リクエスト ○ 無視できる範囲
Slide 31
Slide 31 text
31 CONFIDENTIAL - © 2022 CoDMON Inc. 31 EC2、EBS使用料 EC2、EBSは従量課金
Slide 32
Slide 32 text
32 CONFIDENTIAL - © 2022 CoDMON Inc. 32 VPCエンドポイント利用料金 Interfaceタイプは有料 Gatewayタイプは無料
Slide 33
Slide 33 text
33 CONFIDENTIAL - © 2022 CoDMON Inc. 33 EC2 → S3へのデータ転送 ● ゲートウェイエンドポイントを経由 することで、データ処理料金や時間 単位料金は無料 ● PUT 料⾦ ○ 0.065 USD/1,000 リクエスト ○ アーカイブしてファイル数を減らす ことで無視できる範囲
Slide 34
Slide 34 text
34 実行
Slide 35
Slide 35 text
35 CONFIDENTIAL - © 2022 CoDMON Inc. 35 実行 ● 2ヶ月分くらいのバックアップをGDAから取り出し ● 作成したAMIからEC2を30台くらい起動 ● 各インスタンスでスクリプトを実行 ● 2日くらいで終了 ○ 終了したらCloudWatch Logs → Slackで通知
Slide 36
Slide 36 text
36 結果
Slide 37
Slide 37 text
37 CONFIDENTIAL - © 2022 CoDMON Inc. 37 GDA 料金がかかっていたS3バケット ● GDA削減額 ○ 該当バケット約90% 削減 ● 一時費用 ○ 約5ヶ月でペイ
Slide 38
Slide 38 text
38 まとめ
Slide 39
Slide 39 text
39 CONFIDENTIAL - © 2022 CoDMON Inc. 39 まとめ ● GDAの費用は知らない間に大きくなってる ● テキストデータなら圧縮効果は大きいのでやってみる価値はあり ● 計画は大事!
Slide 40
Slide 40 text
40 コドモン採用ページ 開発ブログ コドモンでは一緒に働きたい仲間を募集しています!
Slide 41
Slide 41 text
No content