๐Ÿ“บ ์˜์ƒ ์š”์•ฝ ์•„์นด์ด๋ธŒ
โ† ๋ชฉ๋ก

Learned Execution Graphs for Anomaly Detection & Drift in APIs โ€” Ritvik Pandya, JP Morgan Chase

AI Engineer ยท 2026-07-23 09:00 ยท 19:38

ํ•œ ์ค„ ํ•ต์‹ฌ

API ์š”์ฒญ ์ฒ˜๋ฆฌ ํ๋ฆ„์„ ์ผ์‹œ์ ์ธ ์‹คํ–‰ ๊ทธ๋ž˜ํ”„๋กœ ๋ชจ๋ธ๋งํ•ด ์ •์ƒ ๊ฒฝ๋กœ์˜ ๊ธฐ์ค€์„ ์„ ๋งŒ๋“ค๊ณ , ๊ตฌ์กฐ์  ๋ณ€ํ™”ยท์„ฑ๋Šฅ ํŽธ์ฐจยท๋“œ๋ฆฌํ”„ํŠธ๋ฅผ ๋น ๋ฅด๊ฒŒ ๊ตญ์†Œํ™”ํ•˜๋ฉด ์˜คํƒ์„ ์ค„์ด๋ฉด์„œ ์žฅ์•  ํƒ์ง€์™€ ๋Œ€์‘์„ ์ž๋™ํ™”ํ•  ์ˆ˜ ์žˆ๋‹ค.

์‹œ๊ฐ„๋ณ„ ์š”์•ฝ

  1. 0:01
    ์‹คํ–‰ ๊ทธ๋ž˜ํ”„๋Š” ์š”์ฒญ์ด ์–ด๋–ค ์ˆœ์„œ๋กœ ์–ด๋–ค ์ปจํ…์ŠคํŠธ๋ฅผ ๊ฑฐ์ณ ์ฒ˜๋ฆฌ๋˜๋Š”์ง€ DAG๋กœ ํ‘œํ˜„ํ•ด, ๋‹จ์ˆœํ•œ persistence graph์™€ ๋‹ฌ๋ฆฌ ์‹ค์ œ ์š”์ฒญ ํ๋ฆ„์˜ ์ •์ƒ ๊ฒฝ๋กœ๋ฅผ ์ดํ•ดํ•˜๋Š” ๋ฐ ์ดˆ์ ์„ ๋‘”๋‹ค. ์ด๋ ‡๊ฒŒ ๋ณด๋ฉด ์žฌ์‹œ๋„์™€ ๋ฃจํ”„๊นŒ์ง€ ๋ณ„๋„ ์—”ํ‹ฐํ‹ฐ๋กœ ์ถ”์ ํ•  ์ˆ˜ ์žˆ์–ด, ๋ฌธ์ œ ์ง€์ ์„ ๋” ์ •ํ™•ํ•˜๊ฒŒ ์ฐพ์„ ์ˆ˜ ์žˆ๋‹ค.
  2. 3:00
    ํ•ต์‹ฌ์€ ์ „์ฒด ํ๋ฆ„์„ ๊ธฐ์ค€์„ ๊ณผ ๋น„๊ตํ•ด Tier 1์—์„œ ์ด์ƒ์ด ์—†์œผ๋ฉด ๋„˜์–ด๊ฐ€๊ณ , ์ง€์—ฐ์ด๋‚˜ ํŽธ์ฐจ๊ฐ€ ๋ณด์ผ ๋•Œ๋งŒ ๋” ๊นŠ๊ฒŒ ์กฐ์‚ฌํ•˜๋Š” ๋ฐฉ์‹์ด๋‹ค. ์ƒˆ ๋…ธ๋“œ ์ถ”๊ฐ€ยท์‚ญ์ œ ๊ฐ™์€ ๊ตฌ์กฐ์  ๋ณ€ํ™”๋‚˜ client๋ณ„๋กœ ๋‹ค๋ฅธ ์ง€์—ฐ ํŠน์„ฑ๊นŒ์ง€ ๋ฐ˜์˜ํ•ด์•ผ ๋ถˆํ•„์š”ํ•œ ์•Œ๋žŒ์„ ์ค„์ผ ์ˆ˜ ์žˆ๋‹ค.
  3. 7:01
    Anomaly๋Š” ๋‹จ๋ฐœ์„ฑ ์ด์ƒ, drift๋Š” ์‹œ๊ฐ„์ด ์ง€๋‚˜๋ฉฐ ๊ธฐ์ค€ ์ž์ฒด๊ฐ€ ๋ฐ”๋€Œ๋Š” ํ˜„์ƒ์œผ๋กœ ๊ตฌ๋ถ„๋œ๋‹ค. ๊ตฌ์กฐ์  drift, ๋ณผ๋ฅจ drift, covariate drift์ฒ˜๋Ÿผ ์œ ํ˜•์„ ๋‚˜๋ˆ  ๋ด์•ผ ํ•˜๋ฉฐ, ์‚ฌ๋ก€์— ๋”ฐ๋ผ ๋กค๋ฐฑยท์Šค์ผ€์ผ์—…ยท๋น„๋™๊ธฐ ์ „ํ™˜์ฒ˜๋Ÿผ ๋Œ€์‘ ๋ฐฉ์‹๋„ ๋‹ฌ๋ผ์ง„๋‹ค.
  4. 12:00
    ์ „์ฒด ํŒŒ์ดํ”„๋ผ์ธ์€ OpenTelemetry๋กœ ๋ฐ์ดํ„ฐ ์ˆ˜์ง‘์„ ํ•˜๊ณ , root cause analysis๋กœ drift ์œ ํ˜•์„ ๋ถ„๋ฅ˜ํ•œ ๋’ค, ์ž๋™ ์กฐ์น˜์™€ ๊ทธ ์œ„ํ—˜๋„๋ฅผ ํŒ๋‹จํ•ด ์ ์ง„์ ์œผ๋กœ ๋ฐฐํฌํ•˜๋Š” ๊ตฌ์กฐ๋‹ค. ์šด์˜ ํ™˜๊ฒฝ์—์„œ๋Š” hot path๋กœ ๋น ๋ฅด๊ฒŒ ๊ฒฐ์ •ํ•˜๊ณ , recon ๊ฒฝ๋กœ๋กœ ๋” ์ •ํ™•ํ•˜๊ฒŒ ๊ฒ€์ฆํ•˜๋Š” ์ด์ค‘ ๊ตฌ์กฐ๊ฐ€ ์œ ํšจํ•˜๋‹ค.
  5. 16:00
    ์‹ค๋ฌด์—์„œ ์ค‘์š”ํ•œ ๋ณด์ • ํฌ์ธํŠธ๋Š” ์ง€์—ฐ๋œ ์ด๋ฒคํŠธ๋ฅผ ๊ตฌ์กฐ์  ๋ณ€ํ™”๋กœ ์˜ค์ธํ•˜์ง€ ์•Š๋„๋ก ์œˆ๋„์šฐ์™€ ๊ธฐ์ค€์„ ์ •๊ตํ•˜๊ฒŒ ์žก๋Š” ์ผ์ด๋‹ค. endpoint๋ณ„ยทclient๋ณ„ baseline, cold start ์ฒ˜๋ฆฌ, ์„ค๋ช…๊ฐ€๋Šฅ์„ฑ, ์ƒˆ ๋ฐฐํฌ ์ธ์ง€๊นŒ์ง€ ํฌํ•จํ•ด์•ผ ์˜คํƒ์„ ์ค„์ด๊ณ  ์‹ค์ œ ๋Œ€์‘ ์†๋„๋ฅผ ๋†’์ผ ์ˆ˜ ์žˆ๋‹ค.

์‹ค๋ฌด ์ธ์‚ฌ์ดํŠธ

  • ์š”์ฒญ ์ฒ˜๋ฆฌ ํ๋ฆ„์„ ์„œ๋น„์Šค ๋ชฉ๋ก์ด ์•„๋‹ˆ๋ผ ์‹คํ–‰ DAG๋กœ ๋จผ์ € ์ •์˜ํ•˜๋ฉด, ์ด์ƒ ํƒ์ง€๋ณด๋‹ค ์›์ธ ๊ตญ์†Œํ™”์™€ ๋Œ€์‘ ์ž๋™ํ™”๊ฐ€ ํ›จ์”ฌ ์‰ฌ์›Œ์ง„๋‹ค.
  • ๋ชจ๋“  ํŠธ๋ž˜ํ”ฝ์— ํ•˜๋‚˜์˜ baseline์„ ์ ์šฉํ•˜๊ธฐ๋ณด๋‹ค client, endpoint, ์š”์ฒญ ์œ ํ˜•๋ณ„ ๊ธฐ์ค€์„ ์„ ๋ถ„๋ฆฌํ•ด์•ผ false alarm์ด ์ค„๊ณ  ์šด์˜ ์‹ ๋ขฐ๋„๊ฐ€ ๋†’์•„์ง„๋‹ค.
  • ๊ฐ์ง€ ์‹œ์Šคํ…œ์€ ํƒ์ง€๋งŒ์œผ๋กœ ๋๋‚ด์ง€ ๋ง๊ณ , ๊ตฌ์กฐ์  ๋ณ€ํ™” ์ธ์ง€์™€ ์ ์ง„์  rollout/rollback ํŒ๋‹จ๊นŒ์ง€ ํฌํ•จํ•ด์•ผ ์‹ค์ „์—์„œ ์“ธ ์ˆ˜ ์žˆ๋‹ค.