ABOUT ME

-

Today
-
Yesterday
-
Total
-
  • Consistency Model์˜ ์ข…๋ฅ˜
    ML engineer/System designs 2023. 1. 2. 21:55
    ๋ฐ˜์‘ํ˜•

    ๐Ÿ•“ 4 mins read

    # Consistency

    ๋ถ„์‚ฐ ์‹œ์Šคํ…œ ํ™˜๊ฒฝ์—์„œ consistency๋Š” ์—ฌ๋Ÿฌ ๊ฐ€์ง€ ์˜๋ฏธ๋ฅผ ๊ฐ€์งˆ ์ˆ˜ ์žˆ์Šต๋‹ˆ๋‹ค. ํ•œ ๊ฐ€์ง€๋Š” ๊ฐ ๋ ˆํ”Œ๋ฆฌ์นด ๋…ธ๋“œ๊ฐ€ ํŠน์ • ์‹œ๊ฐ„์— ํ•ญ์ƒ ๋™์ผํ•œ ๋ฐ์ดํ„ฐ view๋ฅผ(๋™์ผํ•œ read ๊ฒฐ๊ณผ๋ฅผ ๋‚ด๋ฑ‰๋Š” ๊ฒƒ) ๊ฐ€์ง€๋Š” ๊ฒƒ์„ ์˜๋ฏธํ•˜๋Š”๊ฑธ ์ˆ˜ ์žˆ์ฃ . ๋˜ ๋‹ค๋ฅธ ์˜๋ฏธ๋กœ๋Š” ์—ฌ๋Ÿฌ read request์— ๋Œ€ํ•ด์„œ ๊ฐ€์žฅ ์ตœ๊ทผ์— write ๋œ ๊ฐ’์„ ๋ฆฌํ„ดํ•˜๋Š” ๊ฒƒ์„ ์˜๋ฏธํ•  ์ˆ˜ ์žˆ๊ณ ์š”. Consistency๋ฅผ ๋ณด์žฅํ•˜๋Š” ๋ฐฉ๋ฒ•๋„ ๋‹ค์–‘ํ•˜๊ธฐ ๋•Œ๋ฌธ์— ์ด ๋‘ ๊ฐ€์ง€ ์™ธ์—๋„ consistency์— ๋Œ€ํ•œ ์ •์˜๊ฐ€ ๋‹ฌ๋ผ์งˆ ์ˆ˜ ์žˆ์Šต๋‹ˆ๋‹ค.

    ์ผ๋ฐ˜์ ์œผ๋กœ consistency model์€ ์ถ”์ƒํ™”๋œ ๊ฐœ๋…์œผ๋กœ ๋ถ„์‚ฐ ์‹œ์Šคํ…œ ๋‚ด์—์„œ read, write, modification๋“ฑ์— ๋Œ€ํ•ด ์–ด๋–ค ๋™์ž‘์ด ์ ํ•ฉํ•œ์ง€ ๋”ฐ์ ธ ๋ณผ ์ˆ˜ ์žˆ๋„๋ก ์ •์˜ ๋ฉ๋‹ˆ๋‹ค.

    ์–ดํ”Œ๋ฆฌ์ผ€์ด์…˜์„ ์„ค๊ณ„ ํ• ๋•Œ ๊ตฌ์„ฑ์š”์†Œ๋กœ ๋ณ„๋„์˜ ์ €์žฅ์†Œ ๋‚ด์ง€๋Š” DB๋ฅผ ์ด์šฉํ•˜๊ฒŒ ๋˜๋Š”๋ฐ ์–ด๋–ค consistency ๋ชจ๋ธ์ด ์žˆ๊ณ  ์–ด๋–ค ์ƒํ™ฉ์— ์ ํ•ฉํ•œ์ง€๋ฅผ ์•Œ์•„ ๋‘ฌ์•ผํ•ฉ๋‹ˆ๋‹ค.

    Consistency ๋ชจ๋ธ์˜ ์–‘ ๊ทน๋‹จ์—๋Š” ์•„๋ž˜ ๊ทธ๋ฆผ๊ณผ ๊ฐ™์ด ๊ฐ•๋„์— ๋”ฐ๋ฅธ ๋ถ„๋ฅ˜๊ฐ€ ์žˆ๊ณ  ์–‘ ๊ทน๋‹จ ์‚ฌ์ด์—์„œ ํƒ€ํ˜‘ํ•œ ๋ชจ๋ธ๋“ค์ด ์กด์žฌํ•ฉ๋‹ˆ๋‹ค.

    [์ฃผ์˜1] ACID ์™€ CAP theorem์€ ์„œ๋กœ ๋น„์Šทํ•œ๋“ฏ ํ•˜๋‚˜, ๋‹ค๋ฅธ ์ •์˜์ž…๋‹ˆ๋‹ค.
    [์ฃผ์˜2] ์œ„์˜ 4๊ฐ€์ง€ ๋ชจ๋ธ ์ด์™ธ์—๋„ ๋‹ค์–‘ํ•œ ๋ชจ๋ธ์ด ์žˆ๋Š”๋ฐ, ๋Œ€ํ‘œ์ ์ธ ๊ฒƒ๋“ค๋งŒ ๋‚˜์—ดํ–ˆ์Šต๋‹ˆ๋‹ค.

    ์š”์•ฝํ•˜์ž๋ฉด,

    • ACID ๋Š” ๊ฐœ๋ณ„ ๋…ธ๋“œ์—์„œ์˜ ๋ฐ์ดํ„ฐ consistency๋ฅผ,
    • CAP์€ ์ „์ฒด ํด๋Ÿฌ์Šคํ„ฐ๋‚ด์—์„œ์˜ consistency๋ฅผ ์˜๋ฏธํ•ฉ๋‹ˆ๋‹ค.

    ์ฆ‰, ACID๋Š” ๋ฐ์ดํ„ฐ๋ฒ ์ด์Šค์—์„œ ํŠน์ • operation์ด ์ฒ˜๋ฆฌ ๋˜๋Š” ๋™์•ˆ์˜ consistency๋ฅผ ๋ณด์žฅํ•˜๋Š” ๋ฐฉ๋ฒ•์„ ์ด์•ผ๊ธฐํ•˜๋Š”๊ฒƒ์ด๊ณ , CAP์€ ๋ถ„์‚ฐ ์‹œ์Šคํ…œ๋‚ด์—์„œ ์—ฌ๋Ÿฌ replica ๋…ธ๋“œ๋“ค ๊ฐ„์˜ consistency๋ฅผ ๋ณด์žฅํ•˜๋Š” ๋ฐฉ์‹์— ๋Œ€ํ•ด์„œ ์ด์•ผ๊ธฐ ํ•˜๋Š”๊ฒƒ์ž…๋‹ˆ๋‹ค.

     

    1. Eventual Consistency

    ๋จผ์ € ๊ฐ€์žฅ ์•ฝํ•œ consistency ๋ ˆ๋ฒจ์ธ eventual consistency๋Š”, ๋‹จ์–ด ๊ทธ๋Œ€๋กœ, ์‹œ๊ฐ„์ด ์ถฉ๋ถ„ํžˆ ํ๋ฅธ ๋’ค์—๋Š” ์ „์ฒด ์‹œ์Šคํ…œ(ํด๋Ÿฌ์Šคํ„ฐ ๋‚ด์˜ ๋…ธ๋“œ๋“ค๊ฐ„์˜) ๋ฐ์ดํ„ฐ ์ผ๊ด€์„ฑ์„ ์œ ์ง€ํ•œ๋‹ค๋Š”๊ฒƒ์ž…๋‹ˆ๋‹ค.

    ์ฆ‰, read ๋™์ž‘์—์„œ ํ•ญ์ƒ ์ตœ์‹  ๊ฐ’์„ ๋ณด์žฅํ•  ํ•„์š”๊ฐ€ ์—†๋Š” ๊ฒฝ์šฐ์— ์ ํ•ฉํ•œ ๋ชจ๋ธ์ธ๊ฑฐ์ฃ .

    ์–ด์จ‹๊ฑฐ๋‚˜, ๋ชจ๋“  read request์— ๋Œ€ํ•ด์„œ ์–ด๋–ค replica ๋…ธ๋“œ์—์„œ ์‘๋‹ต์„ ๋‚ด๋ ค์ฃผ๋“  ๋™์ผํ•œ ๊ฐ’์„ ๋‚ด์–ด์ฃผ๊ธฐ๋งŒ ํ•œ๋‹ค๋ฉด, consistent ํ•˜๊ธด ํ•œ๊ฒƒ์ด์ฃ . ๋‹ค๋งŒ, ๊ฐ’์ด ์‹ค์‹œ๊ฐ„์œผ๋กœ ์ตœ์‹ ์ด ์•„๋‹ ์ˆ˜ ์žˆ๋‹ค๋Š”๊ฒƒ๋งŒ ๋นผ๊ณ  ๋ง์ด์ฃ .

    ์•„๋ž˜์˜ ํ…Œ์ด๋ธ”์„ ํ†ตํ•ด ๋ถ„์‚ฐ ์‹œ์Šคํ…œ๋‚ด์—์„œ ์‹œ์Šคํ…œ์˜ ์ƒํƒœ์— ๋”ฐ๋ผ ๊ฐ’์ด ๋ณ€๊ฒฝ๋˜๋Š” ๊ณผ์ •๊ณผ, read ๊ฒฐ๊ณผ๋ฅผ ๋ณด์‹œ์ฃ .

    Time Value Operation Read result
    t1 x = 2 - 2
    t2 x = 2 15 write ( x = 15 ) 2  : ์•„์ง ๊ฐ’์„ ์ €์žฅํ•˜๊ณ  replica์— ์ „ํŒŒ ์ค‘ ์ธ ์ƒํƒœ
    t3 x = 15 read ( x ) 15 : ๊ฐ’์ด ๋ชจ๋“  replica์— ๊ฐฑ์‹  ๋œ ์ƒํƒœ

    ๋Œ€ํ‘œ์ ์œผ๋กœ ์ด๋Ÿฐ ๋™์ž‘์ด ์ ๋‹นํ•œ ๊ฒฝ์šฐ๋Š”  DNS ์„œ๋ฒ„ (๋„๋ฉ”์ธ ๋„ค์ž„ ๊ด€๋ฆฌ ์‹œ์Šคํ…œ)๊ฐ€ ์žˆ๊ฒ ์ฃ ?
    - ์ตœ์‹ ์„ฑ์ด ๋™์ž‘์— ์น˜๋ช…์ ์ธ ์˜ํ–ฅ์„ ๋ฏธ์น˜์ง„ ์•Š์„ํ…Œ๋‹ˆ๊นŒ ๋ง์ด์ฃ .

     

    2. Causal Consistency

    Eventual consistency ๋ชจ๋ธ ๋ณด๋‹ค ์•ฝ๊ฐ„ ๋” ์ตœ์‹ ์„ฑ์„ ์œ ์ง€ํ•˜๋Š” ๋ฐฉํ–ฅ์œผ๋กœ ๋ณ€ํ˜•์„ ํ•˜๋ฉด, causal consistency ๋ชจ๋ธ์ด ์žˆ๋Š”๋ฐ, ์—ฌ๊ธฐ์„  ๋ฐ์ดํ„ฐ operation์„ ์˜์กด์„ฑ ์œ ๋ฌด์— ๋”ฐ๋ผ ๋‘๊ฐ€์ง€๋กœ ๋‚˜๋ˆ„์–ด ์ฒ˜๋ฆฌ ํ•˜๋Š” ๋ฐฉ์‹์ž…๋‹ˆ๋‹ค.

    ์˜์กด์„ฑ์ด ์žˆ๋Š” operation์„ dependent ํ˜น์€ causally-related operation์ด๋ผ ๋ถ€๋ฅด๋Š”๋ฐ์š”, ๋ง ๊ทธ๋Œ€๋กœ ์˜์กด์„ฑ์ด ์žˆ๋Š” ๋ช…๋ น๋“ค์„ ์ˆœ์ฐจ์ ์œผ๋กœ ์ฒ˜๋ฆฌ ํ•˜๋Š”๊ฒƒ์„ ๋ณด์žฅํ•ฉ๋‹ˆ๋‹ค.

    ์œ„์˜ ์˜ˆ์‹œ์—์„œ ๋‘ ํ”„๋กœ์„ธ์Šค p1 ๊ณผ p2 ๋Š” causally related operation์„ ์ˆ˜ํ–‰ํ•ฉ๋‹ˆ๋‹ค.
    p1์˜ ์ž‘์—…์ด ์„ ํ–‰๋˜์–ด์•ผ b๊ฐ€ ์กด์žฌํ•˜๊ณ  b๋ฅผ y์— write ํ•  ์ˆ˜ ์žˆ๊ธฐ ๋•Œ๋ฌธ์ด์ฃ .

    ๋Œ€ํ‘œ์ ์ธ ๊ฒฝ์šฐ๋กœ, SNS๋‚˜ ์ปค๋ฎค๋‹ˆํ‹ฐ ๊ฒŒ์‹œํŒ ๋“ฑ์—์„œ ์‚ฌ์šฉ๋˜๋Š” ๋Œ“๊ธ€ ์‹œ์Šคํ…œ์ด ์žˆ์Šต๋‹ˆ๋‹ค. ๋‹ต๋Œ“๊ธ€์„ ๋‹ฌ๊ธฐ ์œ„ํ•ด์„œ๋Š” ๋Œ“๊ธ€์ด ๋จผ์ € ์ €์žฅ ๋œ ๋‹ค์Œ์— ํ•ด๋‹น ๋Œ“๊ธ€์— ๋Œ€ํ•œ ๋‹ต๋Œ“๊ธ€์„ ์ €์žฅ ํ•  ์ˆ˜ ์žˆ์œผ๋‹ˆ๊นŒ์š”. ์ผ๋ จ์˜ ๋™์ž‘์ด ์„ ํ–‰ ๋˜์–ด์•ผ ํ•˜๋Š” ๊ฒฝ์šฐ ์‚ฌ์šฉ๋œ๋‹ค๊ณ  ํ•ฉ๋‹ˆ๋‹ค.

    - ๊ฐ€๋ น ํŠน์ • ๋Œ“๊ธ€์ด ํด๋Ÿฌ์Šคํ„ฐ ๋‚ด์˜ ํ•œ ๋…ธ๋“œ a์—๋Š” ์ €์žฅ๋˜์—ˆ๋Š”๋ฐ ์ „์ฒด replica์— ์ „ํŒŒ ๋˜๊ธฐ ์ „์— ํ•ด๋‹น ๋Œ“๊ธ€์— ๋Œ€ํ•œ ๋‹ต๋Œ“๊ธ€์ด ์ €์žฅ๋˜๋ฉด, ์•„์ง a ์ด์™ธ์˜ ๋…ธ๋“œ์—๋Š” ์ฒซ๋ฒˆ์งธ ๋Œ“๊ธ€์ด ์ €์žฅ๋˜์ง€ ์•Š์•˜์œผ๋‹ˆ, ๋‹ต๋Œ“๊ธ€์— ๋Œ€ํ•œ ์ •๋ณด๊ฐ€ ๋จผ์ € ์ €์žฅ๋˜์–ด์„  ์•ˆ๋œ๋‹ค๋Š” ๊ฒƒ์ด์ฃ . (๊ฐ ๋…ธ๋“œ ๋‹จ์œ„๋กœ ์„ ํ–‰ ๋Œ“๊ธ€์ด ์ €์žฅ ๋œ ๋‹ค์Œ์— ๋‹ต๋Œ“๊ธ€์ด ์ €์žฅ๋˜์–ด์•ผํ•˜๋Š” ๊ตฌ์กฐ)

     

    3. Sequential Consistency

    ํ•œ ๋‹จ๊ณ„ ๋” ๋‚˜์•„๊ฐ€์„œ ์กฐ๊ธˆ ๋” strictํ•œ ์‹œ์Šคํ…œ์œผ๋กœ๋Š” ์‹œ์Šคํ…œ์—์„œ ์ •์˜ํ•œ ํŠน์ • ์ˆœ์„œ๊ฐ€ ๋ณด์žฅ๋˜๋„๋ก ํ•˜๋Š” consistency ๋ชจ๋ธ์ž…๋‹ˆ๋‹ค. ์—ฌ์ „ํžˆ global clock์— ๋Œ€ํ•œ ์‹ค์‹œ๊ฐ„ ์ตœ์‹ ์„ฑ์„ ๋ณด์žฅํ•˜์ง„ ์•Š์ง€๋งŒ, ํŠน์ • ์กฐ๊ฑดํ•˜์— ์ •์˜๋œ ์ˆœ์„œ๋Š” ๋ฐ˜๋“œ์‹œ ๋ณด์žฅ๋˜๋„๋ก ํ•˜๋Š”๊ฒƒ์ž…๋‹ˆ๋‹ค.

    ์˜ˆ๋ฅผ ๋“ค๋ฉด ์ข€ ๋” ์„ค๋ช…์ด ์™€ ๋‹ฟ์„ํ…๋ฐ์š”, SNS ๋‚ด์—์„œ ์ด์šฉ์ž ์ž…์žฅ์—์„œ ์ „์ฒด ํ”ผ๋“œ์˜ ์‹ค์‹œ๊ฐ„ ์ˆœ์„œ๋Š” ์ •ํ™•ํ•˜์ง€ ์•Š์•„๋„ ๋˜์ง€๋งŒ, ํŠน์ • ์นœ๊ตฌ/๊ณ„์ •์ด ์—…๋กœ๋“œํ•œ ํฌ์ŠคํŒ…์€ ๋ฐ˜๋“œ์‹œ ํ•ด๋‹น ์œ ์ €๊ฐ€ ์—…๋กœ๋“œํ•œ ์ˆœ์„œ๋ฅผ ๋ณด์žฅํ•ด์•ผ ํ•˜๊ฒ ์ฃ . ๋”ฐ๋ผ์„œ ์ด๋Ÿฐ ๊ฒฝ์šฐ์— sequential consistency๋ฅผ ์ด์šฉํ•˜๊ฒŒ ๋ฉ๋‹ˆ๋‹ค.

    4. Strict Consistency

    ๋งˆ์ง€๋ง‰์œผ๋กœ strict consistency ๋ชจ๋ธ์€ ๋‹ค๋ฅธ ๋ง๋กœ linearizability ๋ผ๋Š” ์†์„ฑ์œผ๋กœ๋„ ๋ถ€๋ฅด๋Š”๋ฐ ๊ฐ€์žฅ ๊ฐ•๋ ฅํ•œ ์ˆ˜์ค€์˜ ์ผ๊ด€์„ฑ์„ ๋ณด์žฅํ•˜๋Š” ๋ชจ๋ธ์ž…๋‹ˆ๋‹ค. ๊ทธ ์–ด๋–ค replica ๋…ธ๋“œ๊ฐ€ read ์š”์ฒญ์„ ๋ฐ›๋”๋ผ๋„ ๋ฐ˜๋“œ์‹œ ์ตœ์‹ ๊ฐ’์œผ๋กœ ๊ฐฑ์‹ ๋œ ๊ฒฐ๊ณผ๋งŒ์„ ์ฝ์„ ์ˆ˜ ์žˆ๋„๋ก ๋ณด์žฅํ•˜๋Š” ๋ชจ๋ธ์ž…๋‹ˆ๋‹ค. Write ๋‚˜ modification์ด ์ˆ˜ํ–‰๋œ๋‹ค๋ฉด, ํ•ด๋‹น ์ž‘์—…์ด ์™„๋ฃŒ ๋˜์—ˆ๋‹ค๋Š” ack๊ฐ€ ํ™•์ธ ๋ ๋•Œ๋งŒ ํ•ด๋‹น ๊ฐ’์— ๋Œ€ํ•œ read๋ฅผ ์ˆ˜ํ–‰ํ•˜๊ฒŒ ๋ฉ๋‹ˆ๋‹ค.

    ์ด๋Ÿฐ์‹์œผ๋กœ ์ „์ฒด ํด๋Ÿฌ์Šคํ„ฐ ๋…ธ๋“œ์— ์ตœ์‹  ๊ฐ’์ด ๊ฐฑ์‹ ์ด ์™„๋ฃŒ ๋˜์—ˆ์„๋•Œ๋งŒ ack๋ฅผ ๋ฐœ์ƒ์‹œ์ผœ์„œ ํด๋ผ์ด์–ธํŠธ๊ฐ€ ํ•ญ์ƒ ์‹œ์Šคํ…œ์˜ ์ตœ์‹  ๊ฐ’์„ ์ฝ๋„๋ก ํ•˜๋Š”๊ฒฝ์šฐ๋Š” ์€ํ–‰ ๊ณ„์ขŒ ์‹œ์Šคํ…œ๊ฐ™์€ ๊ณณ์—์„œ๋Š” ๋ฐ˜๋“œ์‹œ ์ตœ์‹  ๊ฐฑ์‹ ๋œ state๋กœ๋งŒ ๋™์ž‘ ํ•ด์•ผํ•˜๊ธฐ ๋•Œ๋ฌธ์— ์ค‘์š”ํ•œ ๊ธฐ๋Šฅ์ž…๋‹ˆ๋‹ค. ๋˜๋Š” ํŒจ์Šค์›Œ๋“œ ์ •๋ณด๋ฅผ ๊ด€๋ฆฌํ•ด์•ผํ•˜๋Š” ๊ณ„์ • ์„œ๋ฒ„์˜ ๊ฒฝ์šฐ์—๋„ ๋ฐ˜๋“œ์‹œ ์ตœ์‹  ๊ฐ’ ํ•˜๋‚˜๋งŒ์œผ๋กœ ์ƒํƒœ๊ฐ€ ์œ ์ง€๋˜์–ด์•ผ๊ฒ ์ฃ ?

    ํ•˜์ง€๋งŒ, strictness๊ฐ€ ๊ฐ•ํ•  ์ˆ˜๋ก ์ „์ฒด ํด๋Ÿฌ์Šคํ„ฐ์— ์ตœ์‹  ์ •๋ณด๊ฐ€ ๊ฐฑ์‹ ๋˜์–ด์•ผ ํ•˜๋ฏ€๋กœ ์‹œ์Šคํ…œ์˜ ์‘๋‹ต์‹œ๊ฐ„์ด ๋Š๋ ค์งˆ ์ˆ˜ ์žˆ์Šต๋‹ˆ๋‹ค. ๊ทธ๋ž˜์„œ ์ตœ์‹ ์„ฑ์„ ์ตœ๋Œ€ํ•œ ์œ ์ง€ํ•˜๋˜, ํ•ญ์ƒ ์ด๋Ÿฐ ๋™๊ธฐํ™”๋ฅผ ์š”๊ตฌํ•˜์ง€ ์•Š๋Š” ๊ฒฝ์šฐ์—๋Š” ์–ด๋Š์ •๋„ ๋น„๋™๊ธฐ์„ฑ์„ ๊ฐ–์ถฐ ์‘๋‹ต์‹œ๊ฐ„์„ ํ™•๋ณดํ•˜๊ธฐ๋„ ํ•ฉ๋‹ˆ๋‹ค.

    ## Quorum based Consistency

    ํˆฌํ‘œ ๋ฐฉ์‹์˜ quorum ๋ฐฉ๋ฒ•๋ก ์ธ๋ฐ ๊ฐ„๋‹จํžˆ ํ‘œํ˜„ํ•˜๋ฉด, 

    w + r > n
     w : minimum write nodes
      r : minimum read nodes
      n : nodes in the quorum group

    ์ฆ‰, ๋…ธ๋“œ๋ฅผ ๋ฌถ์–ด์„œ ์ด n ๊ฐœ์˜ ๋…ธ๋“œ๊ฐ€ ์žˆ๋‹ค๊ณ  ํ•˜๋ฉด, w, r ์„ ์ •์˜ ํ•ด๋‘ก๋‹ˆ๋‹ค.
    ํด๋Ÿฌ์Šคํ„ฐ์— ์š”์ฒญ์ด ๋“ค์–ด์™”์„๋•Œ ์ตœ์†Œ ๊ฐ’์— ํ•ด๋‹นํ•˜๋Š” w / r ๋งŒํผ์˜ ๋…ธ๋“œ๊ฐ€ ๋™์ผํ•œ ์‘๋‹ต์„ ํ•  ๊ฒฝ์šฐ์—๋งŒ operation์„ ์ˆ˜ํ–‰ํ•˜๋Š”๊ฒƒ์ด์ฃ .
    ๋”ฐ๋ผ์„œ, ์ด ๊ฒฝ์šฐ์—๋Š” 3๊ฐœ์˜ ๋…ธ๋“œ๊ฐ€ ์žˆ๊ณ  w, r = 2 ๋ผ๊ณ  ๊ฐ€์ •ํ•˜๋ฉด, ์ตœ์†Œ 2๊ฐœ์˜ ๋…ธ๋“œ๊ฐ€ ๊ฐ™์€ ๊ฐ’์„ ๊ฐ€์ง€๊ณ  ์žˆ์œผ๋ฉด ํ•ด๋‹น ๊ฐ’์ด ์ตœ์‹ ๊ฐ’์ด๋ผ ์ƒ๊ฐํ•˜๊ฒ ๋‹ค๋Š” ๊ฒƒ์ž…๋‹ˆ๋‹ค. (๋Œ€๊ฒŒ ํด๋Ÿฌ์Šคํ„ฐ๋Š” ํ™€์ˆ˜๊ฐœ์˜ ๋…ธ๋“œ๋ผ๊ณ  ๊ฐ€์ •ํ•˜๊ณ  w = r= (n+1)/2 ๋ฃฐ์„ ๋งŽ์ด ์‚ฌ์šฉํ•ฉ๋‹ˆ๋‹ค.)

    - ํ•˜์ง€๋งŒ ์ด๋Ÿฐ ๋ฐฉ์‹์—๋Š” ๋ฆฌ์Šคํฌ๊ฐ€ ๋”ฐ๋ฅด๋Š”๋ฐ, ์ตœ์‹ ๊ฐ’์ด ๋Œ€์„ธ๊ฐ€ ์•„๋‹ ๊ฒฝ์šฐ์—๋Š” ์‹œ์Šคํ…œ์˜ availability๋ฅผ ํฌ์ƒํ•˜๊ฑฐ๋‚˜ ์ตœ์‹ ์„ฑ์„ ํฌ์ƒํ•˜๊ฒŒ ๋ฉ๋‹ˆ๋‹ค.

    ์ด๋Ÿฐ์‹์œผ๋กœ ๋น„๋™๊ธฐ์„ฑ์„ ๊ฐ€์ง€๋Š” ์‹œ์Šคํ…œ์€ ์™„์ „ํžˆ strictํ•œ consistency๋ฅผ ๋ณด์žฅํ•  ํ•„์š”๋Š” ์—†์„๋•Œ์—๋งŒ ์‚ฌ์šฉํ•ด์•ผ๊ฒ ์ฃ ? 

    ์˜ค๋Š˜ ์‚ดํŽด๋ณธ ๋‚ด์šฉ์„ ๋ณด๋ฉด, consistency ๊ฐ•๋„์— ๋”ฐ๋ผ ์‹œ์Šคํ…œ์˜ ์ตœ์‹ ์„ฑ๊ณผ ์‘๋‹ต ์†๋„๋Š” ์„œ๋กœ trade off๊ด€๊ณ„์— ์žˆ๋Š”๊ฑธ ์•Œ ์ˆ˜ ์žˆ์Šต๋‹ˆ๋‹ค.
    ๋”ฐ๋ผ์„œ ์‹œ์Šคํ…œ์„ ๊ตฌํ˜„ํ• ๋•Œ ์–ด๋–ค ๋ชจ๋ธ์ด ์ ํ•ฉํ•œ ๊ธฐ๋Šฅ์ธ๊ฐ€๋ฅผ ์ž˜ ํŒ๋‹จํ•ด์„œ ์„ค๊ณ„ํ•ด์•ผ๊ฒ ์ฃ .

    ๋ฐ˜์‘ํ˜•

    'ML engineer > System designs' ์นดํ…Œ๊ณ ๋ฆฌ์˜ ๋‹ค๋ฅธ ๊ธ€

    IaaS / PaaS / SaaS  (0) 2023.09.22
    Domain Name System (DNS) ๊ฐœ์š”  (0) 2023.01.22
    ๋ถ„์‚ฐ ์‹œ์Šคํ…œ ๋””์ž์ธ  (0) 2023.01.19

    ๋Œ“๊ธ€

Designed by naubull2.