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
データベースにまつわるトイル削減の新手法の提案
Search
MIXI ENGINEERS
PRO
September 04, 2023
Technology
1
350
データベースにまつわるトイル削減の新手法の提案
2023/8/31に開催されたSRE Longe #15でお話した、みてね SREの伊東の登壇資料です。
https://sre-lounge.connpass.com/event/290455/
MIXI ENGINEERS
PRO
September 04, 2023
Tweet
Share
More Decks by MIXI ENGINEERS
See All by MIXI ENGINEERS
Google Agentspaceを実際に導入した効果と今後の展望
mixi_engineers
PRO
4
1.5k
プロジェクトマネジメント実践論|現役エンジニアが語る!~チームでモノづくりをする時のコツとは?~
mixi_engineers
PRO
5
410
セキュリティ研修【MIXI 25新卒技術研修】
mixi_engineers
PRO
4
1.8k
QA・ソフトウェアテスト研修【MIXI 25新卒技術研修】
mixi_engineers
PRO
3
1.4k
AI研修【MIXI 25新卒技術研修】
mixi_engineers
PRO
5
2.4k
ソフトウェアアーキテクチャ研修【MIXI 25新卒技術研修】
mixi_engineers
PRO
31
14k
Writing with AI【MIXI 25新卒技術研修】
mixi_engineers
PRO
3
690
Flutter研修【MIXI 25新卒技術研修】
mixi_engineers
PRO
3
720
WEBフロントエンド研修【MIXI 25新卒技術研修】
mixi_engineers
PRO
2
570
Other Decks in Technology
See All in Technology
フルカイテン株式会社 エンジニア向け採用資料
fullkaiten
0
8.6k
Effective Match Types - Scala Days 2025
bishabosha
1
110
GitHub Copilot coding agent を推したい / AIDD Nagoya #1
tnir
3
4.6k
MySQL HeatWave:サービス概要のご紹介
oracle4engineer
PRO
4
1.7k
Preferred Networks (PFN) とLLM Post-Training チームの紹介 / 第4回 関東Kaggler会 スポンサーセッション
pfn
PRO
1
230
AIエージェント就活入門 - MCPが履歴書になる未来
eltociear
0
530
帳票Vibe Coding
terurou
0
140
RAID6 を楔形文字で組んで現代人を怖がらせましょう(実装編)
mimifuwa
1
310
認知戦の理解と、市民としての対抗策
hogehuga
0
370
新規案件の立ち上げ専門チームから見たAI駆動開発の始め方
shuyakinjo
0
130
VPC Latticeのサービスエンドポイント機能を使用した複数VPCアクセス
duelist2020jp
0
260
Figma + Storybook + PlaywrightのMCPを使ったフロントエンド開発
yug1224
9
2.8k
Featured
See All Featured
Fireside Chat
paigeccino
39
3.6k
Bash Introduction
62gerente
614
210k
10 Git Anti Patterns You Should be Aware of
lemiorhan
PRO
656
61k
Unsuck your backbone
ammeep
671
58k
StorybookのUI Testing Handbookを読んだ
zakiyama
30
6k
Being A Developer After 40
akosma
90
590k
A Modern Web Designer's Workflow
chriscoyier
695
190k
The Art of Delivering Value - GDevCon NA Keynote
reverentgeek
15
1.6k
It's Worth the Effort
3n
187
28k
The Power of CSS Pseudo Elements
geoffreycrofte
77
5.9k
How To Stay Up To Date on Web Technology
chriscoyier
790
250k
Git: the NoSQL Database
bkeepers
PRO
431
65k
Transcript
データベースにまつわる トイル削減の新手法の提案 SRE Lounge #15
MIXI, Inc. 自己紹介 株式会社MIXI Vantageスタジオ みてねプロダクト開発部 基盤開発グループ SREチーム
伊東 宏起 https://hekki.info
MIXI, Inc. 家族アルバム みてねの紹介 写真プリント フォトブック スマホで撮影した子どもの写真や動画を家族と共有し、 コミュニケーションして楽しむ家族アルバムサービスで す。
MIXI, Inc. 家族アルバム みてねの紹介 利用者数1,800万人を突破(2023年5月時点) ※ iOS・Android™ アプリ登録者数、ブラウザ版登録者数の合計 7言語・175の国と地域でサービスを提供
MIXI, Inc. 本日お話する内容 - データベースにまつわるトイルについて - トイル削減のための新手法の提案 -
具体的な実装例の紹介 - まとめ
MIXI, Inc. データベースにまつわるトイルについて - Googleの「Site Reliability Engineering」によると、トイルの定義は次のようなものがある - 「トイルとは、手作業、繰り返される、自動化が可能、戦術的、長期的な価値がない、サービスの成長に比例して増加
する、といった特徴を持つ作業です。」 - https://cloud.google.com/blog/ja/products/gcp/identifying-and-tracking-toil-using-sre-principles - ではデータベースにまつわるトイルとは? - 監視の設定や調整 - データベースエンジンのアップグレード - セキュリティパッチの適用
MIXI, Inc. - みてねで運用しているいくつかのサービスのうち、メディアのエンコードを主な責務としているマイクロサー ビスがある - こちらのマイクロサービスの詳細については「1秒動画のつくり方 ― 「家族アルバム みてね」における動画エンコード
パイプラインとその最適化事例」をご覧ください - エンコードに関わるパラメータの管理などにDBを使っているものの、テーブルサイズは小さくクエリも非常 に少ない - そこで、これらのデータをDB以外に保存することでDB自体をなくしてトイルもなくすという手法を思いつく トイル削減のための新手法の提案
MIXI, Inc. - データの保存先はAmazon S3を採用し、JSON形式のテキストデータを保存する - 該当のマイクロサービスはRailsを使っており、通常であればActive Recordを使うところを改造
- Active Modelと自前のS3操作用のモジュールを組み合わせ、 Active Recordのinterfaceに似せた自前のモデルを実装 - テーブルのJOINやトランザクション等は使えないが 元々使っていなかったので問題なし - オブジェクトの保存・ロード・更新など 必要最低限の機能のみを実装 具体的な実装
MIXI, Inc. - 無事DBを廃止することができ、これに伴って冒頭で紹介したトイルを撲滅することに成功 - S3の高耐久性も相まって、リリース後から半年経過した現時点でトラブルなし - DBインスタンスがなくなったことによるコスト削減という副次的な効果も得られた
- 一方で、独自実装による分かりにくさといったデメリットも リリース後
MIXI, Inc. - DB自体をなくすという斬新な手法でDBの運用にまつわるトイルを撲滅することができました - どんなワークロードにも適用できるわけではないので注意 - たとえばDBのテーブルサイズが小さく・シンプルなクエリだけのパターンなど
- SREのプラクティスを推進するにあたって、アプリケーション開発のスキルを求められることはよく語られて いますが、今回のようなケースではそれを強く実感しました まとめ
MIXI, Inc.