All Articles

The Tail at Scale์„ ์ฝ๊ณ 

๊ตฌ๊ธ€์—์„œ 2013๋…„์— ์“ด ๊ธ€์ธ๋ฐ ๋„ˆ๋ฌด ๋ฐฐ์šธ๊ฒŒ ๋งŽ๋‹คโ€ฆ https://ai.google/research/pubs/pub40801

์‘๋‹ต์‹œ๊ฐ„์ด ์™œ ์ค‘์š”ํ•œ๊ฐ€?

  • ์‚ฌ์šฉ์ž ์ฒด๊ฐ ๋•Œ๋ฌธ์—
  • interactive usage (eg VR)์ด ๋งŽ์•„์ง€๋ฉด ๋” ์ค‘์š”

์™œ ๊ฐ™์€ ์š”์ฒญ์ธ๋ฐ ์‘๋‹ต ์‹œ๊ฐ„์ด ์ฐจ์ด๊ฐ€ ๋‚˜๋‚˜?

  • ๋จธ์‹ ์˜ ๋‹ค๋ฅธ ์•ฑ๋“ค์ด ์ž์›์„ ๋งŽ์ด ๋จน์–ด์„œ
  • GC, ๋กœ๊ทธ ๋จธ์ง€ ๋“ฑ์˜ ๋น„์ •๊ธฐ์ ์ธ ์ž‘์—…
  • ๊ฐ™์€ ์ž์›์„ ๋‘๊ณ  ๊ฒฝ์Ÿํ•˜๋‹ˆ๊นŒ ๋“ฑ๋“ฑ

tail latency์˜ ์ค‘์š”์„ฑ

  • ๋ณดํ†ต ์ž‘์—… ํ•˜๋‚˜๋Š” ์ž‘์€ ์š”์ฒญ ์—ฌ๋Ÿฌ๊ฐœ๋ฅผ ์ˆ˜๋ฐ˜ํ•˜๋Š”๋ฐ ๊ทธ ์ค‘ ํ•˜๋‚˜๊ฐ€ ๋Š๋ฆฌ๋ฉด ์ „์ฒด ์ž‘์—… ์™„๋ฃŒ๊ฐ€ ๋Š๋ ค์งˆ ์ˆ˜๋ฐ–์— ์—†๋‹ค.
    • ์˜ˆ๋ฅผ ๋“ค๋ฉด ์„œ๋ฒ„ ํ•œ ๋Œ€๊ฐ€ 1/10000 ์˜ ํ™•๋ฅ ๋กœ ์‘๋‹ต์— 1์ดˆ ์ด์ƒ ๊ฑธ๋ฆฐ๋‹ค๊ณ  ํ•˜๋ฉด
    • ์ด๋Ÿฐ๊ฑฐ 2000๊ฐœ๋ฅผ ๊ฐ€์ง€๊ณ  ๋งŒ๋“œ๋Š” ์‘๋‹ต์€ ๋Œ€๋žต 1/5 ํ™•๋ฅ ๋กœ ์‘๋‹ต์— 1์ดˆ ์ด์ƒ ๊ฑธ๋ฆฐ๋‹ค๊ณ 

์„ค๊ณ„ ๋ ˆ๋ฒจ์˜ ๋…ธ๋ ฅ๋“ค

  • ๋น ๋ฅธ ์‘๋‹ต์„ ์š”ํ•˜๋Š” ์š”์ฒญ์ด๋ž‘ ๊ทธ๋ ‡์ง€ ์•Š์€ ์š”์ฒญ์„ ๊ตฌ๋ถ„
    • ํ›„์ž๊ฐ€ ์ „์ž๋ฅผ block ํ•˜์ง€ ์•Š๋„๋ก
  • ํฐ ์ž‘์—…์„ ์ž‘์€ ์ž‘์—…์œผ๋กœ ๋‚˜๋ˆ”
    • ํฐ ์ž‘์—… ์ˆ˜ํ–‰ ๋•Œ๋ฌธ์— ๋‹ค๋ฅธ ์ž‘์—…์ด ์ˆ˜ํ–‰์ด ๋ชป๋˜๋Š” ๊ฒฝ์šฐ๊ฐ€ ์—†๋„๋ก
  • ๋ฐฑ๊ทธ๋ผ์šด๋“œ ์ž‘์—… ๊ด€๋ฆฌ
    • ์ชผ๊ฐœ์„œ ๋Œ๋ฆฌ๊ธฐ, ์•ˆ๋ฐ”์ ๋•Œ ๋Œ๋ฆฌ๊ธฐ, ์“ฐ๋กœํ‹€๋ง ๋“ฑ๋“ฑ
    • ์—ฌ๋Ÿฌ ๋Œ€์—์„œ ๋™์‹œ์— ๋Œ๋ฆฌ๋Š” ๊ฒƒ์ด ํ•œ ๋Œ€์”ฉ ๋Œ์•„๊ฐ€๋ฉด์„œ ๋Œ๋ฆฌ๋Š” ๊ฒƒ๋ณด๋‹ค tail latency์— ๋„์›€์ด ๋œ๋‹ค
  • ์บ์‹ฑ์€ ๋…ผ์™ธ๋กœ ํ•˜์ž
  • ๊ทธ๋Ÿผ์—๋„ ๋ถˆ๊ตฌํ•˜๊ณ  tail latency๋Š” ์ƒ๊ธด๋‹ค

ํ”ผํ•  ์ˆ˜ ์—†๋‹ค๋ฉด ๊ณต์ƒํ•ด์•ผ ํ•œ๋‹ค - ์งง์€ ์š”์ฒญ์˜ ๊ฒฝ์šฐ

  • hedged request
    • ์š”์ฒญ์„ ๋ณด๋ƒˆ๋Š”๋ฐ p95 ์‘๋‹ต์‹œ๊ฐ„ ์ง€๋‚˜๋„ ์™„๋ฃŒ๊ฐ€ ์•ˆ๋œ๋‹ค? ์ด ๋•Œ ๋‹ค์‹œ ์š”์ฒญ์„ ๋ณด๋‚ธ๋‹ค
    • ์ด๋Ÿฌ๋ฉด ์ „์ฒด ์š”์ฒญ ๊ฐœ์ˆ˜๋Š” 5%๋งŒ ๋Š˜์–ด๋‚˜๋Š”๋ฐ, ์ „์ฒด tail latency๋Š” ํ™• ์ค€๋‹ค
    • ์ด hedge request์˜ priority๋ฅผ ์ผ๋ฐ˜ request๋ณด๋‹ค ๋†’๊ฒŒ ์ฃผ๋ฉด ํšจ๊ณผ๊ฐ€ ๋” ์ข‹๋‹ค
  • tied request
    • ์‚ฌ์‹ค ์‹คํ–‰ ์‹œ๊ฐ„ ์ž์ฒด ๋ณด๋‹ค๋„ ํ์— ๋จธ๋ฌด๋Š” ์‹œ๊ฐ„ ๋•Œ๋ฌธ์— variability๊ฐ€ ์ƒ๊ธด๋‹ค
    • ๊ทธ๋ž˜์„œ ์—ฌ๋Ÿฌ ๋จธ์‹ ์˜ ํ์— ๋„ฃ์–ด๋†“์€ ๋‹ค์Œ์— ํ•œ ์ชฝ์—์„œ ์‹คํ–‰์ด ๋˜๋ฉด ๋‚˜๋จธ์ง€๊บผ์—์„œ ์บ”์Šฌํ•˜๋Š” ๋ฐฉ๋ฒ•์ด ์žˆ๋‹ค
    • ๋‘ ์ž‘์—…์ด ๋™์‹œ์— ์‹คํ–‰๋  ์ˆ˜๊ฐ€ ์žˆ์œผ๋‹ˆ ์ฒซ๋ฒˆ์žฌ ์ž‘์—…์„ ๋„ฃ๊ณ  ๋”œ๋ ˆ์ด๋ฅผ ์ข€ ์ค€ ๋‹ค์Œ์— ๋‹ค์Œ ์ž‘์—…์„ ๋„ฃ์œผ๋ฉด ํ”ผํ•  ์ˆ˜ ์žˆ๋‹ค

ํ”ผํ•  ์ˆ˜ ์—†๋‹ค๋ฉด ๊ณต์ƒํ•ด์•ผ ํ•œ๋‹ค - ์˜ค๋ž˜ ๊ฑธ๋ฆฌ๋Š” ์š”์ฒญ์˜ ๊ฒฝ์šฐ

  • imbalance ๋•Œ๋ฌธ์— variability๊ฐ€ ์ƒ๊ธฐ๋‹ˆ๊นŒ ํŒŒํ‹ฐ์…˜์„ ์ž‘๊ฒŒ ๋งŒ๋“ค์–ด์•ผ ํ•œ๋‹ค
  • ๋ ˆํ”Œ๋ฆฌ์ผ€์ด์…˜์„ ๋˜‘๋˜‘ํ•˜๊ฒŒ
    • ์ฒ˜๋ฆฌํ•˜๊ธฐ ๋น„์‹ผ ํŒŒํ‹ฐ์…˜, ์•„๋‹ˆ๋ฉด ์ž์ฃผ ๋ถˆ๋ฆฌ๋Š” ํŒŒํ‹ฐ์…˜์€ ๋ ˆํ”Œ๋ฆฌํ‚ค์ด์…˜์„ ๋Š˜๋ฆฌ๋ฉด ์ข‹๋‹ค
  • ๋Š๋ฆฐ ๋จธ์‹ ์„ ์ž ๊น ๋นผ๋ฒ„๋ฆฐ๋‹ค
  • IR ์‹œ์Šคํ…œ์˜ ๊ฒฝ์šฐ
    • ๋‹ค ๊ธฐ๋‹ค๋ฆด ํ•„์š”๊ฐ€ ์—†๋‹ค - ๋Š๋ฆฐ๊ฑด ๋นผ๊ณ  ๊ทธ๋ƒฅ ๋นจ๋ฆฌ ๋‚˜๋จธ์ง€ ๋Œ€๋ถ€๋ถ„์˜ ๊ฒฐ๊ณผ๋ฅผ ๋‚ด๋ณด๋‚ด๋Š”๊ฒŒ ๋” ํ’ˆ์งˆ์ด ์ข‹์€ ๊ฒƒ์ด๋‹ค

๊ทผ๋ฐ ์ €๊ฑฐ ๋‹ค ์ฝ๊ธฐ์˜ ์ด์•ผ๊ธฐ ์•„๋‹˜? ์“ฐ๊ธฐ์˜ ๊ฒฝ์šฐ๋Š”?

  • ์ผ๋‹จ ์ฝ๊ธฐ์— ๋น„ํ•ด ์š”์ฒญ ํšŸ์ˆ˜๊ฐ€ ์ ๋‹ค
  • ์“ฐ๊ธฐ๋Š” ์ฒœ์ฒœํžˆ ์ง„ํ–‰๋˜๋„ ๋˜๋Š” ๊ฒฝ์šฐ๊ฐ€ ๋งŽ๋‹ค
  • ๊ทธ๋ฆฌ๊ณ  ์“ฐ๊ธฐ๋Š” ๋ณดํ†ต ์—ฌ๋Ÿฌ ๋จธ์‹ ์— ์“ฐ๊ธฐ ๋•Œ๋ฌธ์— tail latency ๋ฌธ์ œ์—์„œ ์ž์œ ๋กœ์šด ํŽธ์ด๋‹ค
    • 5๊ฐœ ์ค‘ 3๊ฐœ์—์„œ ์“ฐ๊ธฐ ์„ฑ๊ณตํ•˜๋ฉด ์„ฑ๊ณต์ด๋‹ˆ ๋‚˜๋จธ์ง€ 2๊ฐœ๋Š” ๋Š๋ ค๋„ ํ‹ฐ๊ฐ€ ์•ˆ๋‚œ๋‹ค

Published Nov 9, 2019

If I keep marking the dots, someday they will ๐Ÿ”—๐Ÿ”—