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
Airflow+SageMakerで安定稼動する機械学習バッチインフラへ
Search
Tech Leverages
June 30, 2023
Technology
0
5.3k
Airflow+SageMakerで安定稼動する機械学習バッチインフラへ
Airflow+SageMakerで安定稼動する機械学習バッチインフラへ
Tech Leverages
June 30, 2023
Tweet
Share
More Decks by Tech Leverages
See All by Tech Leverages
未来を拓くAI技術〜エージェント開発とAI駆動開発〜
leveragestech
2
200
コンテキストエンジニアリングで変わるAI活用 リファクタリングワークフローの実践から学んだ形式知
leveragestech
0
110
AirflowでDataformを制御するポイント
leveragestech
0
100
古き良き Laravel のシステムは関数型スタイルでリファクタできるのか
leveragestech
1
1.2k
リファクタリングいつやるの? 〜依存の整理〜
leveragestech
0
120
ディメンショナルモデリングを軽く語る
leveragestech
1
5.1k
アクターモデルによる効率的な分散システム設計
leveragestech
0
4.9k
Terraform による運用効率化の取り組みと最新のテストアプローチの紹介
leveragestech
0
4.9k
OpenFGAで拓く次世代認可基盤 〜予告編〜
leveragestech
0
4.9k
Other Decks in Technology
See All in Technology
なぜスクラムはこうなったのか?歴史が教えてくれたこと/Shall we explore the roots of Scrum
sanogemaru
0
160
Kiroと学ぶコンテキストエンジニアリング
oikon48
5
6.2k
【Grafana Meetup Japan #6】Grafanaをリバプロ配下で動かすときにやること ~ Grafana Liveってなんだ ~
yoshitake945
0
220
異業種出身エンジニアが気づいた、転向して十数年経っても変わらない自分の武器とは
macnekoayu
0
260
モバイルアプリ研修
recruitengineers
PRO
5
1.7k
【5分でわかる】セーフィー エンジニア向け会社紹介
safie_recruit
0
30k
Nstockの一人目エンジニアが 3年間かけて向き合ってきた セキュリティのこととこれから〜あれから半年〜
yo41sawada
0
180
AI時代にPdMとPMMはどう連携すべきか / PdM–PMM-collaboration-in-AI-era
rakus_dev
0
250
allow_retry と Arel.sql / allow_retry and Arel.sql
euglena1215
0
150
Webブラウザ向け動画配信プレイヤーの 大規模リプレイスから得た知見と学び
yud0uhu
0
150
大「個人開発サービス」時代に僕たちはどう生きるか
sotarok
9
3.1k
Snowflakeの生成AI機能を活用したデータ分析アプリの作成 〜Cortex AnalystとCortex Searchの活用とStreamlitアプリでの利用〜
nayuts
0
150
Featured
See All Featured
Art, The Web, and Tiny UX
lynnandtonic
302
21k
Code Reviewing Like a Champion
maltzj
525
40k
Chrome DevTools: State of the Union 2024 - Debugging React & Beyond
addyosmani
7
830
The MySQL Ecosystem @ GitHub 2015
samlambert
251
13k
How To Stay Up To Date on Web Technology
chriscoyier
790
250k
VelocityConf: Rendering Performance Case Studies
addyosmani
332
24k
The Art of Delivering Value - GDevCon NA Keynote
reverentgeek
15
1.6k
The Pragmatic Product Professional
lauravandoore
36
6.8k
Building Flexible Design Systems
yeseniaperezcruz
328
39k
The Art of Programming - Codeland 2020
erikaheidi
55
13k
Practical Tips for Bootstrapping Information Extraction Pipelines
honnibal
PRO
23
1.4k
XXLCSS - How to scale CSS and keep your sanity
sugarenia
248
1.3M
Transcript
Airflow+SageMakerで安定稼動す る機械学習バッチインフラへ テク戦MLOpsチーム 古賀
自己紹介 古賀悠太(4年目)、テクノロジー戦略室 MLOpsチーム 機械学習周辺のシステムの開発 /運用 - レコメンドAPIの実装 - 機械学習パイプラインの実装 ほんと時間ないので、プロフィール貼っときます
https://lvgs.docbase.io/posts/1267498
話すこと - 機械学習バッチが増えても、安定して動き、運用工数がなるべくかからないシステ ム構成
旧システムでのデータサイエンティスト開発/運用状況
旧システムでのデータサイエンティスト開発/運用状況 怪しい匂い ・開発環境と本番環境を兼ねてる ・なるべく被らないように、定期実行設定 (機械学習はメモリ食うので)
何が辛いの? - バッチ数が増えると、実行時間を被らせないのが大変に - 可用性の懸念 - 実行時間が被ると、共倒れする - 機械学習はリソース食うので、共倒れ発生しやすい -
運用工数の懸念 - そもそも何がいつ実行されているのか管理必要 - 一度書いて終わりじゃない サーバー使用表の抜粋
解決策 - 各バッチのインフラを分離 - 死んでも他へは影響しない →共倒れしない - 実行時間が被っても良いので、好きなタイミングで実行できる →他のバッチを考えなくて良い
導入技術 Airflow - スケジューラー - Pythonで実行タイミングと処理を記述 - 今回は順次ワーカーを起動するだけ AWS SageMaker
Processing Job - ワーカー - ECSタスクみたいなもの - Dockerイメージをpullして実行 - CPU / GPU / メモリを指定可能
システム構成とデプロイフロー ※開発はまだGCE。許して。
Airflowの他のメリット - 依存関係定義が楽 - コストカット - 必要なリソースだけ稼動するので - リトライ設定簡単 -
通知設定簡単 - 実行履歴やログ見れる などなど Pythonでの定義 taskA >> [taskB, taskC] >> taskD
まとめ - 機械学習バッチが増えても、安定して動き、運用工数がなるべくかからないシステ ム構成にできた - 役割で分割して、負荷面のスケーラビリティを担保する手法はよくある - Message QueueとかDBのWriter /
Readerとか - イケテナイシステムにも敬意を持ちたい