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
240
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
140
2019.08.10_AAJUG Kyoto #2_Alexa✕ML
koba_taka
0
58
2019.07.05 Cloud Native Kansai #04 MLOpsで必要なflowを考えてみる
koba_taka
0
180
2018.07.31 JAWS-UG京都 AWSマネージドDB祭~まだDBにEC2使ってんの?~ / 今のAuroraのスゴさ
koba_taka
0
290
JAWS-UG Sales #0 「SalesがJAWS-UGに参加してみて」
koba_taka
0
190
【さるる勉強会#1】AWSの機械学習って?
koba_taka
0
300
2018.2.11- Alexa Day 2018 - Alexa Ninja Warrior 結果発表
koba_taka
0
4.9k
【さばわの「わ」#2】AWSパートナーとしてのサバワの営業スタイル
koba_taka
0
550
【BIファーストステップ】AWSやSalesforceとPowerBIとの連携
koba_taka
0
1.8k
Other Decks in Technology
See All in Technology
Wantedly での Datadog 活用事例
bgpat
1
400
NW-JAWS #14 re:Invent 2024(予選落ち含)で 発表された推しアップデートについて
nagisa53
0
250
UI State設計とテスト方針
rmakiyama
2
290
CustomCopを使ってMongoidのコーディングルールを整えてみた
jinoketani
0
220
コンテナセキュリティのためのLandlock入門
nullpo_head
2
320
re:Invent をおうちで楽しんでみた ~CloudWatch のオブザーバビリティ機能がスゴい!/ Enjoyed AWS re:Invent from Home and CloudWatch Observability Feature is Amazing!
yuj1osm
0
120
LINEスキマニにおけるフロントエンド開発
lycorptech_jp
PRO
0
330
Postman と API セキュリティ / Postman and API Security
yokawasa
0
200
10分で学ぶKubernetesコンテナセキュリティ/10min-k8s-container-sec
mochizuki875
3
320
kargoの魅力について伝える
magisystem0408
0
200
Oracle Cloudの生成AIサービスって実際どこまで使えるの? エンジニア目線で試してみた
minorun365
PRO
4
270
watsonx.ai Dojo #5 ファインチューニングとInstructLAB
oniak3ibm
PRO
0
160
Featured
See All Featured
Docker and Python
trallard
41
3.1k
The Success of Rails: Ensuring Growth for the Next 100 Years
eileencodes
44
6.9k
For a Future-Friendly Web
brad_frost
175
9.4k
The MySQL Ecosystem @ GitHub 2015
samlambert
250
12k
Stop Working from a Prison Cell
hatefulcrawdad
267
20k
CoffeeScript is Beautiful & I Never Want to Write Plain JavaScript Again
sstephenson
159
15k
A better future with KSS
kneath
238
17k
Designing for Performance
lara
604
68k
Art, The Web, and Tiny UX
lynnandtonic
298
20k
Into the Great Unknown - MozCon
thekraken
33
1.5k
Designing for humans not robots
tammielis
250
25k
How to Think Like a Performance Engineer
csswizardry
22
1.2k
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!!