Upgrade to Pro
— share decks privately, control downloads, hide ads and more …
Speaker Deck
Features
Speaker Deck
PRO
Sign in
Sign up for free
Search
Search
「家族アルバム みてね」を支えるS3ライフサイクル戦略
Search
fanglang
April 03, 2025
Technology
47k
41
Share
「家族アルバム みてね」を支えるS3ライフサイクル戦略
fanglang
April 03, 2025
More Decks by fanglang
See All by fanglang
マルチCPUアーキテクチャ構成の実現に向けて
fanglang
1
1k
海外から快適に使ってもらうためにしてきたこと / the battle with network latency
fanglang
0
5.2k
Other Decks in Technology
See All in Technology
類似画像検索モデルの開発ノウハウ
lycorptech_jp
PRO
4
870
eBPF Can Do It! A 5-Minute Tour of 5 Real-World PHP Issues Solved with eBPF
egmc
0
220
JavaScript実装の自作プログラミング言語をTypeScript実装に移行した話
keisukeikeda
1
160
freee-mcpを Local→Remote で出してわかった MCP認可実装のリアル
terara
3
640
TSKaigi 2026 - 10秒のビルドを1秒へ:tsdownが切り拓く2026年のTypeScriptライブラリ開発
teamlab
PRO
2
270
Node.js+TypeScriptにおけるCJS/ESM相互運用の最新ポイント
grainrigi
2
120
DI コンテナ自動生成ツールを実装してみた / intro-autodi
uhzz
0
870
TROCCOで始めるクラウドコストを民主化するためのFinOps
tk3fftk
1
160
LLM時代のリファクタリング戦略_AIエージェントによる段階的・安全なTS移行方法
play_inc
0
180
Oracle Cloud Infrastructure:2026年5月度サービス・アップデート
oracle4engineer
PRO
1
110
インフラが苦手でも大丈夫! 紙芝居 Kubernetes -WWGT 10周年編-
aoi1
1
130
管理アカウント単一運用からAWS Organizationsに移行するの大変で滅
hiramax
0
250
Featured
See All Featured
Public Speaking Without Barfing On Your Shoes - THAT 2023
reverentgeek
1
400
How to build an LLM SEO readiness audit: a practical framework
nmsamuel
1
750
No one is an island. Learnings from fostering a developers community.
thoeni
21
3.7k
Ethics towards AI in product and experience design
skipperchong
2
280
How to Talk to Developers About Accessibility
jct
2
210
Building Applications with DynamoDB
mza
96
7k
More Than Pixels: Becoming A User Experience Designer
marktimemedia
3
420
Unlocking the hidden potential of vector embeddings in international SEO
frankvandijk
0
810
The #1 spot is gone: here's how to win anyway
tamaranovitovic
2
1.1k
Templates, Plugins, & Blocks: Oh My! Creating the theme that thinks of everything
marktimemedia
31
2.8k
Evolving SEO for Evolving Search Engines
ryanjones
0
200
Designing for Timeless Needs
cassininazir
1
230
Transcript
©MIXI 「家族アルバム みてね」を支えるS3ライフサイクル戦略 2025/04/03 春のSREまつり 〜 大規模サービス "あるある" との戦い事例 〜
©MIXI 尾関 芳郎 ソフトウェアエンジニア 株式会社MIXI みてねプロダクト開発部 プラットフォームG SREチーム 2018年1月よりSREとしてみてねにJoin テキサスホールデムポーカーとコーヒー豆の焙煎が趣味です。
@fanglang
©MIXI Agenda • サービス紹介 • 課題と目的 • S3バージョニングによるデータ保護 • ストレージクラスとライフサイクルルールによるコスト最適化
• 動画配信におけるライフサイクルルールの活用 • まとめ
©MIXI サービス紹介
©MIXI 「家族アルバム みてね」はスマホで撮った子どもの写真や動画を家族と共有し、 コミュニケーションして楽しむ家族アルバムサービスです。
©MIXI 熱量の高い「今」を、共有 気づけば「思い出」が、 溜まっていく 感動の振り返りがカンタンに! 熱量の高い今を共有し、気づくと、熱量の高い履歴が残っているというコンセプト
©MIXI ビジネスモデル 子どもや家族を中心に、より子育てが楽しく、安心・安全につながるサービスを提供。
©MIXI 写真関連商品 フォトブック・写真プリントで思い出をもっと楽しく。
©MIXI みてねみまもりGPS 頼もしく成長していくお子さまを、みてねが一緒にみまもります。
©MIXI ※ iOS・Android™ アプリ登録者数、ブラウザ版登録者数の合計
©MIXI
©MIXI みてね事業のMVV | Mission 世界中の家族のこころのインフラをつくる
©MIXI 課題と目的
©MIXI 改めて、「家族アルバム みてね」 (以下、みてね) とは • 写真・動画を無制限に保存できるサービス • ユーザー数:2500万人以上 (2025年1月時点)
• シェアされた写真・動画数:131億以上 (2024年3月時点) ※ iOS・Android™ アプリ登録者数、ブラウザ版登録者数の合計
©MIXI Amazon S3利用の現状と課題 • 大量の画像・動画データを保存するためにS3を広範に利用 • データ量の増加に伴うストレージコストの増大
©MIXI 本発表の目的 • みてねにおけるS3のライフサイクルを用いた具体例を紹介 • 特にコスト削減に貢献しているテクニックに焦点を当てる
©MIXI S3バージョニングによるデータ保護
©MIXI S3バージョニングによるデータ保護 • ユーザーの大切な写真・動画の誤削除は絶対に避けたい ◦ S3バージョニングの導入により、誤った操作によるデータ削除リスクの軽減 ▪ ただし、過去バージョンもストレージコストが発生 ▪ 「消したつもり」でもコストは減らない
• ライフサイクルルールの設定 ◦ バージョニング設定と合わせて、一定期間経過後の旧バージョン削除ルールを設定 ◦ リスクに配慮しつつ、過剰なコストを抑制 • みてねにおけるバージョニング運用 ◦ 特別な理由がない限り、全てのS3バケットでバージョニングを有効化
©MIXI ストレージクラスとライフサイクルルールによる コスト最適化
©MIXI S3ストレージクラス • ストレージクラスによる性能の違い ◦ レイテンシ ◦ 可用性 ◦ 料金
• アクセスパターンを分析することで最適なストレージクラスを選択
©MIXI S3ストレージクラス https://aws.amazon.com/jp/s3/storage-classes/
©MIXI みてねの写真・動画データアクセスパターンの分析 • アップロード直後がいちばんアクセス頻度が高い ◦ ユーザーからのアクセス、端末への保存 ◦ 解析処理 ◦ 月1回のフォトブック・写真プリント自動提案
• 1ヶ月間は取り出し料金を抑える必要がある ◦ S3 Standard • その後極端にアクセス頻度が落ちるが、UXを損なわないためリアルタイム性は維持 ◦ Glacier Instant Retreval • 30日間のライフサイクルルールを適用
©MIXI 動画配信におけるライフサイクルルールの活用
©MIXI 動画配信におけるライフサイクルルールの活用 • HLS (HTTP Live Streaming) の利用 ◦ アプリ上での動画再生はHLSを用いている
▪ 再生時にHLSデータがS3になければリアルタイムに生成して配信 ▪ 一定期間経てば削除することで再生用動画の保存コストを削減 ◦ 参考:みてねの動画再生にHLSを導入した話
©MIXI HLSファイルの削除までの期間の選定 • 保存期間を長くすると... ◦ S3ストレージコスト増 • 保存期間を短くすると... ◦ 再生成回数増、コンピュートリソース(EC2)コスト増
• 動画再生のログを元にアクセスパターンを分析 ◦ 保存期間毎に再生成のコストをシミュレーション ◦ コストが最も低くなる保存期間を算出
©MIXI まとめ • 「家族アルバム みてね」では、S3に大量のユーザーデータを保存 • S3バージョニングはオペレーションミスによるデータ損失リスクを軽減 • ストレージクラスの適切な選択とライフサイクルルールの組み合わせが、大量データ のコスト削減に不可欠
• アクセスパターンを分析し、ライフサイクルルールを柔軟に活用することで、UXとコ スト最適化を両立