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
4
650
「家族アルバム みてね」を支えるS3ライフサイクル戦略
fanglang
April 03, 2025
Tweet
Share
More Decks by fanglang
See All by fanglang
マルチCPUアーキテクチャ構成の実現に向けて
fanglang
1
260
海外から快適に使ってもらうためにしてきたこと / the battle with network latency
fanglang
0
4.3k
Other Decks in Technology
See All in Technology
アセスメントで紐解く、10Xのデータマネジメントの軌跡
10xinc
1
360
Classmethod AI Talks(CATs) #21 司会進行スライド(2025.04.17) / classmethod-ai-talks-aka-cats_moderator-slides_vol21_2025-04-17
shinyaa31
0
460
Lakeflow Connectのご紹介
databricksjapan
0
100
AWS全冠芸人が見た世界 ~資格取得より大切なこと~
masakiokuda
1
670
大AI時代で輝くために今こそドメインにディープダイブしよう / Deep Dive into Domain in AI-Agent-Era
yuitosato
1
300
All You Need Is Kusa 〜Slackデータで始めるデータドリブン〜
jonnojun
0
140
【2025年度新卒技術研修】100分で学ぶ サイバーエージェントのデータベース 活用事例とMySQLパフォーマンス調査
cyberagentdevelopers
PRO
5
6.6k
2025年春に見直したい、リソース最適化の基本
sogaoh
PRO
0
460
こんなデータマートは嫌だ。どんな? / waiwai-data-meetup-202504
shuntak
6
1.8k
Micro Frontends: Necessity, Implementation, and Challenges
rainerhahnekamp
2
360
Langchain4j y Ollama - Integrando LLMs con programas Java @ Commit Conf 2025
deors
1
130
改めて学ぶ Trait の使い方 / phpcon odawara 2025
meihei3
1
580
Featured
See All Featured
Thoughts on Productivity
jonyablonski
69
4.6k
No one is an island. Learnings from fostering a developers community.
thoeni
21
3.2k
Product Roadmaps are Hard
iamctodd
PRO
52
11k
4 Signs Your Business is Dying
shpigford
183
22k
Stop Working from a Prison Cell
hatefulcrawdad
268
20k
Helping Users Find Their Own Way: Creating Modern Search Experiences
danielanewman
29
2.5k
Scaling GitHub
holman
459
140k
Fontdeck: Realign not Redesign
paulrobertlloyd
83
5.5k
RailsConf & Balkan Ruby 2019: The Past, Present, and Future of Rails at GitHub
eileencodes
135
33k
Art, The Web, and Tiny UX
lynnandtonic
298
20k
ReactJS: Keep Simple. Everything can be a component!
pedronauck
666
120k
Facilitating Awesome Meetings
lara
54
6.3k
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とコ スト最適化を両立