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
Takayoshi Kobayashi
February 13, 2020
Technology
0
270
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
180
2019.08.10_AAJUG Kyoto #2_Alexa✕ML
koba_taka
0
76
2019.07.05 Cloud Native Kansai #04 MLOpsで必要なflowを考えてみる
koba_taka
0
200
2018.07.31 JAWS-UG京都 AWSマネージドDB祭~まだDBにEC2使ってんの?~ / 今のAuroraのスゴさ
koba_taka
0
300
JAWS-UG Sales #0 「SalesがJAWS-UGに参加してみて」
koba_taka
0
200
【さるる勉強会#1】AWSの機械学習って?
koba_taka
0
350
2018.2.11- Alexa Day 2018 - Alexa Ninja Warrior 結果発表
koba_taka
0
5.1k
【さばわの「わ」#2】AWSパートナーとしてのサバワの営業スタイル
koba_taka
0
590
【BIファーストステップ】AWSやSalesforceとPowerBIとの連携
koba_taka
0
1.9k
Other Decks in Technology
See All in Technology
本当にわかりやすいAIエージェント入門
segavvy
1
480
組織内、組織間の資産保護に必要なアイデンティティ基盤と関連技術の最新動向
fujie
0
280
Bill One 開発エンジニア 紹介資料
sansan33
PRO
4
13k
AI エージェントと考え直すデータ基盤
na0
20
7.9k
SREのためのeBPF活用ステップアップガイド
egmc
2
1.3k
今だから言えるセキュリティLT_Wordpress5.7.2未満を一斉アップデートせよ
cuebic9bic
2
170
AIエージェントが書くのなら直接CloudFormationを書かせればいいじゃないですか何故AWS CDKを使う必要があるのさ
watany
18
7.6k
アクセスピークを制するオートスケール再設計: 障害を乗り越えKEDAで実現したリソース管理の最適化
myamashii
1
670
Introduction to Bill One Development Engineer
sansan33
PRO
0
260
cdk initで生成されるあのファイル達は何なのか/cdk-init-generated-files
tomoki10
1
670
SREの次のキャリアの道しるべ 〜SREがマネジメントレイヤーに挑戦して、 気づいたこととTips〜
coconala_engineer
1
4.4k
助けて! XからWaylandに移行しないと新しいGNOMEが使えなくなっちゃう 2025-07-12
nobutomurata
2
200
Featured
See All Featured
Fashionably flexible responsive web design (full day workshop)
malarkey
407
66k
Build your cross-platform service in a week with App Engine
jlugia
231
18k
How GitHub (no longer) Works
holman
314
140k
Making the Leap to Tech Lead
cromwellryan
134
9.4k
VelocityConf: Rendering Performance Case Studies
addyosmani
332
24k
The Psychology of Web Performance [Beyond Tellerrand 2023]
tammyeverts
48
2.9k
Understanding Cognitive Biases in Performance Measurement
bluesmoon
29
1.8k
Building Adaptive Systems
keathley
43
2.7k
Easily Structure & Communicate Ideas using Wireframe
afnizarnur
194
16k
Rebuilding a faster, lazier Slack
samanthasiow
83
9.1k
Designing for Performance
lara
610
69k
[Rails World 2023 - Day 1 Closing Keynote] - The Magic of Rails
eileencodes
35
2.4k
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!!