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
2020.02.13_ABEJA_プロダクトがスケールする過程における課題と取り組み
Search
Sponsored
·
Ship Features Fearlessly
Turn features on and off without deploys. Used by thousands of Ruby developers.
→
Takayoshi Kobayashi
February 13, 2020
Technology
0
300
2020.02.13_ABEJA_プロダクトがスケールする過程における課題と取り組み
2020.02.13 数千コンテナ規模のサービスをマイクロサービスとサーバーレスでつくって地雷を踏みながらも改善している話 #abejaai
Takayoshi Kobayashi
February 13, 2020
Tweet
Share
More Decks by Takayoshi Kobayashi
See All by Takayoshi Kobayashi
AWS re:Invent 2020 SageMakerのUpdateをre:cap
koba_taka
0
210
2019.08.10_AAJUG Kyoto #2_Alexa✕ML
koba_taka
0
99
2019.07.05 Cloud Native Kansai #04 MLOpsで必要なflowを考えてみる
koba_taka
0
230
2018.07.31 JAWS-UG京都 AWSマネージドDB祭~まだDBにEC2使ってんの?~ / 今のAuroraのスゴさ
koba_taka
0
320
JAWS-UG Sales #0 「SalesがJAWS-UGに参加してみて」
koba_taka
0
230
【さるる勉強会#1】AWSの機械学習って?
koba_taka
0
380
2018.2.11- Alexa Day 2018 - Alexa Ninja Warrior 結果発表
koba_taka
0
5.5k
【さばわの「わ」#2】AWSパートナーとしてのサバワの営業スタイル
koba_taka
0
640
【BIファーストステップ】AWSやSalesforceとPowerBIとの連携
koba_taka
0
2.1k
Other Decks in Technology
See All in Technology
「お金で解決」が全てではない!大規模WebアプリのCI高速化 #phperkaigi
stefafafan
5
2.2k
モジュラモノリス導入から4年間の総括:アーキテクチャと組織の相互作用について / Architecture and Organizational Interaction
nazonohito51
3
1.9k
「通るまでRe-run」から卒業!落ちないテストを書く勘所
asumikam
2
480
GitHub Copilot CLI で Azure Portal to Bicep
tsubakimoto_s
0
180
脳が溶けた話 / Melted Brain
keisuke69
1
940
Kubernetesの「隠れメモリ消費」によるNode共倒れと、Request適正化という処方箋
g0xu
0
110
俺の/私の最強アーキテクチャ決定戦開催 ― チームで新しいアーキテクチャに適合していくために / 20260322 Naoki Takahashi
shift_evolve
PRO
1
430
イベントで大活躍する電子ペーパー名札を作る(その2) 〜 M5PaperとM5PaperS3 〜 / IoTLT @ JLCPCB オープンハードカンファレンス
you
PRO
0
200
AWS Systems Managerのハイブリッドアクティベーションを使用したガバメントクラウド環境の統合管理
toru_kubota
0
150
LINEヤフーにおけるAIOpsの現在地
lycorptech_jp
PRO
5
2.2k
契約書からの情報抽出を行うLLMのスループットを、バッチ処理を用いて最大40%改善した話
sansantech
PRO
2
240
Phase09_自動化_仕組み化
overflowinc
0
1.6k
Featured
See All Featured
Taking LLMs out of the black box: A practical guide to human-in-the-loop distillation
inesmontani
PRO
3
2.1k
The Power of CSS Pseudo Elements
geoffreycrofte
82
6.2k
Utilizing Notion as your number one productivity tool
mfonobong
4
270
Build The Right Thing And Hit Your Dates
maggiecrowley
39
3.1k
DBのスキルで生き残る技術 - AI時代におけるテーブル設計の勘所
soudai
PRO
64
52k
Neural Spatial Audio Processing for Sound Field Analysis and Control
skoyamalab
0
230
<Decoding/> the Language of Devs - We Love SEO 2024
nikkihalliwell
1
160
The MySQL Ecosystem @ GitHub 2015
samlambert
251
13k
Discover your Explorer Soul
emna__ayadi
2
1.1k
SEO in 2025: How to Prepare for the Future of Search
ipullrank
3
3.4k
How People are Using Generative and Agentic AI to Supercharge Their Products, Projects, Services and Value Streams Today
helenjbeal
1
140
A Tale of Four Properties
chriscoyier
163
24k
Transcript
#abejaai 2020.02.13 数千コンテナ規模のサービスをマイクロサービスと サーバーレスでつくって地雷を踏みながらも改善している話 ABEJA, Inc. / Takayoshi Kobayashi /
@koba_taka プロダクトがスケールする過程における 課題と取り組み
#abejaai 2 ⾃社のプロダクト開発に関わっている⽅︖ さっそくですが…
#abejaai 3 どうしてますか︖ Scalability Flexibility Agility Cost
#abejaai 4 Today`s Topic
#abejaai 5 ABEJA Productʼs
#abejaai 6 今⽇お話すること ABEJAのプロダクト開発について プロダクト成⻑に伴う選択の背景 (主にインフラ)
#abejaai 7 伝えたいこと プロダクトの成⻑に伴う苦悩を乗り越える アプローチ
#abejaai 8 @koba_taka Twitter Like takayoshi.kobayashi.16 Facebook AWS Drinking Job
Takayoshi Kobayashi Who is ? ABEJA, Inc. ABEJA Platform Customer Success
#abejaai 9 ABEJA Productʼs
#abejaai 10 この数字わかりますか︖ 200,000,000
#abejaai 11 200,000,000 ⼈ Number of Visitors
#abejaai 12 700+ Shops
#abejaai 13 σʔλ౷߹ɾੳ σʔλऩू ՄࢹԽ ߦಈ Χϝϥ μογϡϘʔυ ϝʔϧͰͷि࣍ Ϩϙʔτ৴
ը૾ղੳ 画像解析の機械学習モデルを活⽤した、⼩売店舗向けのSaaS型のサービス 顧客データの⾒える化と活⽤の⽀援 ,1*ઃఆ ࢧԉ ࣄྫڞ༗ 104σʔλ ABEJA INSIGHT for Retail
#abejaai 14 インフラのこれまで Evolution
#abejaai 15 データ変換システム ダッシュボード システム メール配信 システム 監視・管理ツール ストリーム マネジメント
システム 映像解析 システム サービス基盤 全体構成
#abejaai 16 ストリームマネジメントシステム 暗号化接続終端コンテナ 録画コンテナ 動画変換コンテナ データフロー監視 コンテナリポジトリ カメラ
#abejaai 17 映像解析システム 特徴量データベース 顔画像・年齢性別・特徴量抽出部 リピーター判定部 データフロー監視 映像 ダッシュボード
#abejaai 18 映像解析システム コアの運⽤
#abejaai 19 2017.8 リピーターの研究からの開始 2018.5 リリース 当時のインフラ
#abejaai 20 リリース当初の構成 カメラ 解析 Core カメラ 解析 Core 集計
ダッシュボード
#abejaai 21 リリース当初の構成 カメラ 解析 Core カメラ 解析 Core 集計
ダッシュボード
#abejaai マズイ… 22 Refferal:flicker https://bit.ly/2OIrtq4
#abejaai 23 ・コアの⼊れ替えがツラい… ・当時、店舗閉店後の時間に コア⼊れ替え作業なども...
#abejaai CHANGE 24
#abejaai 25 モデルを⼊れ替えしやすいように マイクロサービス化
#abejaai 26 アーキテクチャー変更後の構成 カメラ カメラ 集計 ダッシュボード モデルC モデルA モデルB
モデルD キュー
#abejaai 27 モデルの⼊れ替え・検証が容易に Flexibility Agility
#abejaai 28
#abejaai 29 272 Registration 1,175 Accounts ABEJA Platform
#abejaai 30 120 TB 850,000,000 Objects ABEJA Platform
#abejaai 05 推論・再学習 04 デプロイ 03 学習 02 前処理 蓄積
01 取得 31 04 デプロイ 01 取得・蓄積 05 推論・再学習 03 学習 02 蓄積 AIのビジネススケールを 拡⼤する メトリクス監視 トリガー 推論コード管理 モデル管理 Blue/Greenデプロイメント データレイク アノテーションツール 事前推論 データセット 学習コード管理 ハイパーパラメータ管理 学習ジョブ (CPU・GPU) ABEJA Platformの機能
#abejaai 32 Retailの動画解析システム カメラ カメラ 集計 ダッシュボード モデルC モデルA モデルB
モデルD キュー 動画 保存 モデル 推論 推論結果 保存
#abejaai Gateway DataLake Trigger LB Container DB Storage Events Subscriber
Batch DB Container Image Inference log Inference Code Inference Result Platformのアーキテクチャー (以前)
#abejaai 34 DataLake
#abejaai 35 Rawデータを蓄積するためのサービス ストレージはS3を利⽤ 内製のGatewayを経由してS3へPUT DataLake
#abejaai Gateway DataLake Trigger LB Container DB Storage Events Subscriber
Batch DB Container Image Inference log Inference Code Inference Result Platformのアーキテクチャー (以前)
#abejaai 37 Trigger
#abejaai 38 特定イベントに対し、推論APIを実⾏ イベントはDataLakeへのPUT or スケジュール 推論結果はDataLakeへ格納 Trigger
#abejaai One day… 39 Refferal:flicker https://bit.ly/2H8Ffhx
#abejaai 40 2019年5⽉ Retailの通常のTrafficから6倍のTraffic
#abejaai 41 Golden Week Refferal:flicker https://bit.ly/2H81CUp
#abejaai 42 2019年8⽉ Retailの通常のTrafficから4倍のTraffic
#abejaai 43 Summer Vacation Refferal:flicker https://bit.ly/2H81CUp
#abejaai 44 ࣌ظతͳτϥϑΟοΫ্ঢ 5⽉ 8⽉
#abejaai 45 利⽤店舗増加のため、取得データ画像の増加
#abejaai 46 秒間 平均200ファイルOverのアップロード
#abejaai 47
#abejaai 48 %#$16ෛՙ
#abejaai 49 Lambda 1回の処理でさばくメッセージ数が少ない ⼤量のメッセージは捌ききれていない 結果︓バックエンド⾼負荷とキュー処理の遅延 メッセージキューの停滞
#abejaai 50 SQS Subscriber タイムアウト付きでバルク更新処理を実装 Queueを計測しつつ、同時実⾏数を調整 SubscriberをECSで実装 メッセージキューの停滞への アプローチ Queue
Status RDB Batch ECS
#abejaai Gateway DataLake Trigger LB Container DB Storage Events Subscriber
Batch DB Container Image Inference log Inference Code Inference Result Platformのアーキテクチャー (以前)
#abejaai Gateway DataLake Trigger LB Container DB Storage Events Subscriber
Batch Container Image Inference log Inference Code Inference Result DB Platformのアーキテクチャー (刷新後)
#abejaai 53
#abejaai 54
#abejaai 解決 55 Refferal:flicker https://bit.ly/2SsKEoQ
#abejaai 56 当時はタスクフォースを設⽴ モデル精度向上も実施 https://bit.ly/2Shfa6v
#abejaai 57 次のTry
#abejaai 58 AWS BatchをKubernetesへ刷新予定
#abejaai 59 We are hiring!!
#abejaai 60 Summary ・Insight for Retailの顧客数は右肩上がり ・そのスケールに対応するため、Platformも⽇々改善・開発 ・プロダクトの成⻑と共に動かし続けることの重要性 ・今後、GCPも積極的に活⽤ ・顧客価値のある機能改善・開発がより重要に
・⼀緒に取り組んでくれるメンバーを募集中︕
#abejaai 61 Thank you!!