๊ทธ๋ผ ์์ํด ๋ด ์๋ค. ๋ฐฉ์๋ 5๋ง๋ฆฌ์ ๊ณ ์์ด๊ฐ ๊ฐํ ์๋๋ฐ, ์ฃผ์ธ์ ๊นจ์ฐ๋ฌ ๊ฐ๊ธฐ ์ํด์๋ ์๋ก ๋์ํด์ผ ํฉ๋๋ค. XNUMX๋ง๋ฆฌ๊ฐ ๊ธฐ๋์ด ์์ด์ผ๋ง ๋ฌธ์ ์ด ์ ์๊ธฐ ๋๋ฌธ์ ๋๋ค. ๊ณ ์์ด ์ค ํ ๋ง๋ฆฌ๊ฐ ์๋ขฐ๋ฉ๊ฑฐ์ ๊ณ ์์ด์ด๊ณ ๋ค๋ฅธ ๊ณ ์์ด๋ค์ ๊ทธ์ ๊ฒฐ์ ์ ๋ํด ์์ง ๋ชปํ๋ค๋ฉด "์ด๋ป๊ฒ ํ ์ ์์ต๋๊น?"๋ผ๋ ์ง๋ฌธ์ด ์๊น๋๋ค.
์ด ๊ธฐ์ฌ์์๋ ๋ถ์ฐ ์์คํ ์ธ๊ณ์ ์ด๋ก ์ ๊ตฌ์ฑ ์์์ ์๋ ์๋ฆฌ์ ๋ํด ๊ฐ๋จํ ์ฉ์ด๋ก ์ค๋ช ํ๊ฒ ์ต๋๋ค. ๋ํ Paxos์ ๊ธฐ๋ณธ ์์ด๋์ด๋ฅผ ํผ์์ ์ผ๋ก ๊ฒํ ํ๊ฒ ์ต๋๋ค.
๊ฐ๋ฐ์๊ฐ ํด๋ผ์ฐ๋ ์ธํ๋ผ, ๋ค์ํ ๋ฐ์ดํฐ๋ฒ ์ด์ค๋ฅผ ์ฌ์ฉํ๊ณ ๋ค์์ ๋
ธ๋๋ก ๊ตฌ์ฑ๋ ํด๋ฌ์คํฐ์์ ์์
ํ ๋ ๋ฐ์ดํฐ๊ฐ ์์ ํ๊ณ ์์ ํ๋ฉฐ ํญ์ ์ฌ์ฉํ ์ ์๋ค๊ณ ํ์ ํฉ๋๋ค. ํ์ง๋ง ๋ณด์ฅ์ ์ด๋์ ์์ต๋๊น?
๊ธฐ๋ณธ์ ์ผ๋ก ์ฐ๋ฆฌ๊ฐ ์ ๊ณตํ๋ ๋ณด์ฆ์ ๊ณต๊ธ์ ์ฒด ๋ณด์ฆ์ ๋๋ค. ๋ฌธ์์๋ ๋ค์๊ณผ ๊ฐ์ด ์ค๋ช ๋์ด ์์ต๋๋ค. "์ด ์๋น์ค๋ ๋งค์ฐ ์์ ์ ์ ๋๋ค. ์ง์ ๋ SLA๊ฐ ์์ผ๋ฏ๋ก ๊ฑฑ์ ํ์ง ๋ง์ญ์์ค. ๋ชจ๋ ๊ฒ์ด ์์๋๋ก ๋ถ์ฐ๋์ด ์๋ํฉ๋๋ค."
์ฐ๋ฆฌ๋ ์ต๊ณ ๋ฅผ ๋ฏฟ๋ ๊ฒฝํฅ์ด ์์ต๋๋ค. ๋๊ธฐ์ ์ ๋๋ํ ์ฌ๋๋ค์ด ๋ชจ๋ ๊ฒ์ด ์ ๋ ๊ฒ์ด๋ผ๊ณ ํ์ ํ๊ธฐ ๋๋ฌธ์ ๋๋ค. ์ฐ๋ฆฌ๋ ์ง๋ฌธํ์ง ์์ต๋๋ค. ์ค์ ๋ก ์ด๊ฒ์ด ์ ์๋ํ ์ ์์ต๋๊น? ๊ทธ๋ฌํ ์์คํ ์ ์ฌ๋ฐ๋ฅธ ์๋์ ๋ํ ๊ณต์์ ์ธ ์ ๋น์ฑ์ด ์์ต๋๊น?
๋๋ ์ต๊ทผ์ ๊ฐ๋ค
๋๋ถ๋ถ์ ์ต์ ๋ถ์ฐ ์์คํ ์ Paxos ํฉ์ ์๊ณ ๋ฆฌ์ฆ๊ณผ ๋ค์ํ ์์ ์ฌํญ์ ์ฌ์ฉํฉ๋๋ค. ๊ฐ์ฅ ๋ฉ์ง ์ ์ ์ด ์๊ณ ๋ฆฌ์ฆ์ ํ๋น์ฑ๊ณผ ์์น์ ์ผ๋ก ์กด์ฌ ๊ฐ๋ฅ์ฑ์ด ํ๊ณผ ์ข ์ด๋ง์ผ๋ก ๊ฐ๋จํ๊ฒ ์ ์ฆ๋ ์ ์๋ค๋ ๊ฒ์ ๋๋ค. ์ค์ ๋ก ์ด ์๊ณ ๋ฆฌ์ฆ์ ํด๋ผ์ฐ๋์ ์๋ง์ ๋ ธ๋์์ ์คํ๋๋ ๋๊ท๋ชจ ์์คํ ์ ์ฌ์ฉ๋ฉ๋๋ค.
๋ค์์ ๋
ผ์๋ ๋ด์ฉ์ ๋ํ ๊ฐ๋จํ ์ค๋ช
: ๋ ์ฅ๊ตฐ์ ์๋ฌด์๋ฐ์
์ ์ดํด๋ณด์
์ฐ๋ฆฌ์๊ฒ๋ ๋นจ๊ฐ์๊ณผ ํฐ์์ ๋ ๊ตฐ๋๊ฐ ์์ต๋๋ค. ๋ฐฑ์ธ ๊ตฐ๋๋ ํฌ์๋ ๋์์ ์ฃผ๋ํ๊ณ ์์ต๋๋ค. ์ฅ๊ตฐ A1๊ณผ A2๊ฐ ์ด๋๋ ๋ถ์ ๊ตฐ๋๋ ๋์์ ์์ชฝ์ ์์นํด ์์ต๋๋ค. ๋นจ๊ฐ ๋จธ๋ฆฌ์ ์๋ฌด๋ ๋ฐฑ์ธ ๋์๋ฅผ ๊ณต๊ฒฉํ๊ณ ์น๋ฆฌํ๋ ๊ฒ์ ๋๋ค. ๊ทธ๋ฌ๋ ๊ฐ ๋ถ์ ์ฅ๊ตฐ์ ๊ตฐ๋๋ ๊ฐ๋ณ์ ์ผ๋ก ๋ฐฑ๊ตฐ๋ณด๋ค ์์ต๋๋ค.
์ ์๊ตฐ์ ์น๋ฆฌ ์กฐ๊ฑด: ๋ฐฑ์๊ตฐ์ ๋นํด ์์ ์ฐ์๋ฅผ ํ๋ณดํ๋ ค๋ฉด ๋ ์ฅ๊ตฐ์ด ๋์์ ๊ณต๊ฒฉํด์ผ ํฉ๋๋ค. ์ด๋ฅผ ์ํด์๋ ์ฅ๊ตฐ A1๊ณผ A2๊ฐ ์๋ก ํฉ์ํด์ผ ํฉ๋๋ค. ๋ชจ๋๊ฐ ๋ฐ๋ก ๊ณต๊ฒฉํ๋ฉด ๋นจ๊ฐ ๋จธ๋ฆฌ๊ฐ ํจ๋ฐฐํฉ๋๋ค.
ํฉ์์ ๋๋ฌํ๊ธฐ ์ํด ์ฅ๊ตฐ A1๊ณผ A2๋ ๋ฐฑ์ ๋์์ ์ํ ๋ฅผ ํตํด ์๋ก์๊ฒ ๋ฉ์ ์ ๋ฅผ ๋ณด๋ผ ์ ์์ต๋๋ค. ๋ฉ์ ์ ๋ ์ฐํฉ๊ตฐ ์ฅ๊ตฐ์๊ฒ ์ฑ๊ณต์ ์ผ๋ก ๋๋ฌํ ์๋ ์๊ณ , ์ ์๊ฒ ์ฐจ๋จ๋ ์๋ ์์ต๋๋ค. ์ง๋ฌธ: ๋นจ๊ฐ ๋จธ๋ฆฌ ์ฅ๊ตฐ๋ค ์ฌ์ด์ X ์๊ฐ์ ๊ณต๊ฒฉ์ ๋์ํ๋ ์ผ๋ จ์ ํต์ ์ด ์์ต๋๊น(A1์์ A2๋ก ๋๋ ๊ทธ ๋ฐ๋๋ก A2์์ A1๋ก ๋ฉ์ ์ ๋ฅผ ๋ณด๋ด๋ ์์). ์ฌ๊ธฐ์, ๋ณด์ฅ์ ๋ ์ฅ๊ตฐ์ด ๋๋งน๊ตญ(๋ค๋ฅธ ์ฅ๊ตฐ)์ด ์ง์ ๋ ์๊ฐ์ ํ์คํ ๊ณต๊ฒฉํ ๊ฒ์ด๋ผ๋ ๋ช ํํ ํ์ธ์ ๊ฐ๋๋ค๋ ๊ฒ์ ์๋ฏธํฉ๋๋ค X.
A1์ด A2์๊ฒ "์ค๋ ์์ ์ ๊ณต๊ฒฉํ์!"๋ผ๋ ๋ฉ์์ง์ ํจ๊ป ๋ฉ์ ์ ๋ฅผ ๋ณด๋ธ๋ค๊ณ ๊ฐ์ ํด ๋ณด๊ฒ ์ต๋๋ค. ์ฅ๊ตฐ A1์ ์ฅ๊ตฐ A2์ ํ์ธ ์์ด๋ ๊ณต๊ฒฉํ ์ ์์ต๋๋ค. A1์ ๋ฉ์ ์ ๊ฐ ๋์ฐฉํ๋ฉด A2 ์ฅ๊ตฐ์ "์, ์ค๋ ๋ฐฑ์ธ์ ์ฃฝ์ด์"๋ผ๋ ๋ฉ์์ง์ ํจ๊ป ํ์ธ ๋ฉ์์ง๋ฅผ ๋ณด๋ ๋๋ค. ๊ทธ๋ฌ๋ ์ด์ A2 ์ฅ๊ตฐ์ ๊ทธ์ ๋ฉ์ ์ ๊ฐ ๋์ฐฉํ๋์ง ์ฌ๋ถ๋ฅผ ์์ง ๋ชปํ๋ฉฐ ๊ณต๊ฒฉ์ด ๋์์ธ์ง ์ฌ๋ถ๋ ๋ณด์ฅํ ์ ์์ต๋๋ค. ์ด์ ์ผ๋ฐ A2๋ ๋ค์ ํ์ธ์ด ํ์ํฉ๋๋ค.
๊ทธ๋ค์ ํต์ ์ ๋ ์์ธํ ์ค๋ช ํ๋ฉด ๋ฉ์์ง ๊ตํ ์ฃผ๊ธฐ๊ฐ ์๋ฌด๋ฆฌ ๋ง์๋ ๋ ์ฅ๊ตฐ์ด ๋ฉ์์ง๋ฅผ ๋ฐ์๋ค๋ ๊ฒ์ ๋ณด์ฅํ ์ ์๋ ๋ฐฉ๋ฒ์ด ์๋ค๋ ๊ฒ์ด ๋ถ๋ช ํด์ง๋๋ค(๋ ๋ฉ์ ์ ์ค ํ๋๋ฅผ ๊ฐ๋ก์ฑ ์ ์๋ค๊ณ ๊ฐ์ ).
๋ ์ฅ๊ตฐ ๋ฌธ์ ๋ ํต์ ์ด ๋ถ์์ ํ ๋ ๊ฐ์ ๋ ธ๋๊ฐ ์๋ ๋งค์ฐ ๊ฐ๋จํ ๋ถ์ฐ ์์คํ ์ ์ ๋ณด์ฌ์ค๋๋ค. ์ฆ, ๋๊ธฐํ๊ฐ 100% ๋ณด์ฅ๋์ง๋ ์์ต๋๋ค. ์ ์ฌํ ๋ฌธ์ ๋ ๊ธฐ์ฌ ๋ท๋ถ๋ถ์์ ๋ ํฐ ๊ท๋ชจ๋ก ๋ ผ์๋ฉ๋๋ค.
๋ถ์ฐ ์์คํ ์ ๊ฐ๋ ์ ์๊ฐํฉ๋๋ค.
๋ถ์ฐ ์์คํ ์ ๋ฉ์์ง๋ฅผ ๊ตํํ ์ ์๋ ์ปดํจํฐ ๊ทธ๋ฃน(์ดํ ๋ ธ๋๋ผ๊ณ ํจ)์ ๋๋ค. ๊ฐ ๊ฐ๋ณ ๋ ธ๋๋ ์ผ์ข ์ ์์จ์ ๊ฐ์ฒด์ ๋๋ค. ๋ ธ๋๋ ์ค์ค๋ก ์์ ์ ์ฒ๋ฆฌํ ์ ์์ง๋ง ๋ค๋ฅธ ๋ ธ๋์ ํต์ ํ๋ ค๋ฉด ๋ฉ์์ง๋ฅผ ๋ณด๋ด๊ณ ๋ฐ์์ผ ํฉ๋๋ค.
๋ฉ์์ง๊ฐ ์ ํํ ์ด๋ป๊ฒ ๊ตฌํ๋๋์ง, ์ด๋ค ํ๋กํ ์ฝ์ด ์ฌ์ฉ๋๋์ง ๋ฑ์ ์ด ๋งฅ๋ฝ์์ ์ฐ๋ฆฌ์๊ฒ ์ค์ํ์ง ์์ต๋๋ค. ๋ถ์ฐ ์์คํ ์ ๋ ธ๋๋ค์ ์๋ก ๋ฉ์์ง๋ฅผ ๋ณด๋ด ๋ฐ์ดํฐ๋ฅผ ๊ตํํ ์ ์๋ค๋ ๊ฒ์ด ์ค์ํ๋ค.
์ ์ ์์ฒด๋ ๊ทธ๋ค์ง ๋ณต์กํด ๋ณด์ด์ง ์์ง๋ง ๋ถ์ฐ ์์คํ ์๋ ์ฐ๋ฆฌ์๊ฒ ์ค์ํ ์ฌ๋ฌ ๊ฐ์ง ์์ฑ์ด ์๋ค๋ ์ ์ ๊ณ ๋ คํด์ผ ํฉ๋๋ค.
๋ถ์ฐ ์์คํ ์ ์์ฑ
- ๋์์ฑ โ ์์คํ ์์ ๋์ ๋๋ ๋์ ์ด๋ฒคํธ๊ฐ ๋ฐ์ํ ๊ฐ๋ฅ์ฑ. ๋์ฑ์ด, ์ฐ๋ฆฌ๋ ์ด๋ฌํ ์ด๋ฒคํธ์ ๋ช ํํ ๋ฐ์ ์์๊ฐ ์๋ ํ ๋ ๊ฐ์ ์๋ก ๋ค๋ฅธ ๋ ธ๋์์ ๋ฐ์ํ๋ ์ด๋ฒคํธ๋ฅผ ์ ์ฌ์ ์ผ๋ก ๋์์ ๋ฐ์ํ๋ ๊ฒ์ผ๋ก ๊ฐ์ฃผํฉ๋๋ค. ๊ทธ๋ฌ๋ ์์น์ ์ผ๋ก ์ฐ๋ฆฌ๋ ๊ทธ๊ฒ์ ๊ฐ์ง๊ณ ์์ง ์์ต๋๋ค.
- ๊ธ๋ก๋ฒ ์๊ณ ์์. ๊ธ๋ก๋ฒ ์๊ณ๊ฐ ์๊ธฐ ๋๋ฌธ์ ๋ช ํํ ์ด๋ฒคํธ ์์๊ฐ ์์ต๋๋ค. ํ๋ฒํ ์ฌ๋๋ค์ ์ธ๊ณ์์ ์ฐ๋ฆฌ๋ ์๊ณ์ ์๊ฐ์ด ์ ๋์ ์ผ๋ก ์๋ค๋ ์ฌ์ค์ ์ต์ํฉ๋๋ค. ๋ถ์ฐ ์์คํ ์ ๊ดํด์๋ ๋ชจ๋ ๊ฒ์ด ๋ณํฉ๋๋ค. ์ด์ ๋ฐ ์์์๊ณ์๋ ๋๋ฆฌํํธ๊ฐ ์์ด์, ๋ ๊ฐ์ง ์ฌ๊ฑด ์ค ์ด๋ ๊ฒ์ด ๋จผ์ ์ผ์ด๋ฌ๋์ง ์ ์ ์๋ ์ํฉ์ด ์์ ์ ์์ต๋๋ค. ๊ทธ๋ฌ๋ฏ๋ก ์ฐ๋ฆฌ๋ ์๊ฐ์ ์์กดํ ์ ์์ต๋๋ค.
- ์์คํ
๋
ธ๋์ ๋
๋ฆฝ์ ์ธ ์ค๋ฅ. ๋ ๋ค๋ฅธ ๋ฌธ์ ๊ฐ ์์ต๋๋ค. ๋
ธ๋๊ฐ ์์ํ ์ง์๋์ง ์๊ธฐ ๋๋ฌธ์ ๋ฌธ์ ๊ฐ ๋ฐ์ํ ์ ์์ต๋๋ค. ํ๋ ๋๋ผ์ด๋ธ์ ์ค๋ฅ๊ฐ ๋ฐ์ํ๊ณ , ํด๋ผ์ฐ๋์ ๊ฐ์ ๋จธ์ ์ด ์ฌ๋ถํ
๋๊ณ , ๋คํธ์ํฌ๊ฐ ๊น๋ฐ์ด๊ณ ๋ฉ์์ง๊ฐ ์์ค๋ ์ ์์ต๋๋ค. ๋ํ ๋
ธ๋๊ฐ ์๋ํ์ง๋ง ๋์์ ์์คํ
์ ๋ฐ๋๋๋ ์ํฉ์ด ์์ ์ ์์ต๋๋ค. ๋ฌธ์ ์ ๋ง์ง๋ง ํด๋์ค์๋ ๋ฌธ์ ๋ผ๋ ๋ณ๋์ ์ด๋ฆ์ด ๋ถ์์ต๋๋ค.
๋น์ํด ์ฅ๊ตฐ . ์ด ๋ฌธ์ ๋ฅผ ์๊ณ ์๋ ๋ถ์ฐ ์์คํ ์ ๊ฐ์ฅ ์ ๋ช ํ ์๋ ๋ธ๋ก์ฒด์ธ์ ๋๋ค. ๊ทธ๋ฌ๋ ์ค๋ ์ฐ๋ฆฌ๋ ์ด ํน๋ณํ ์ข ๋ฅ์ ๋ฌธ์ ๋ฅผ ๊ณ ๋ คํ์ง ์์ ๊ฒ์ ๋๋ค. ์ฐ๋ฆฌ๋ ๋จ์ํ ํ๋ ์ด์์ ๋ ธ๋๊ฐ ์คํจํ ์ ์๋ ์ํฉ์ ๊ด์ฌ์ ๊ฐ์ง ๊ฒ์ ๋๋ค. - ๋ ธ๋ ๊ฐ ํต์ ๋ชจ๋ธ(๋ฉ์์ง ๋ชจ๋ธ). ์ฐ๋ฆฌ๋ ๋ ธ๋๊ฐ ๋ฉ์์ง๋ฅผ ๊ตํํ์ฌ ํต์ ํ๋ค๋ ๊ฒ์ ์ด๋ฏธ ํ๋ฆฝํ์ต๋๋ค. ์ ์๋ ค์ง ๋ฉ์์ง ๋ชจ๋ธ์๋ ๋๊ธฐ์๊ณผ ๋น๋๊ธฐ์์ ๋ ๊ฐ์ง ๋ชจ๋ธ์ด ์์ต๋๋ค.
๋ถ์ฐ ์์คํ ์ ๋ ธ๋ ๊ฐ ํต์ ๋ชจ๋ธ
๋๊ธฐ์ ๋ชจ๋ธ โ ์ฐ๋ฆฌ๋ ๋ฉ์์ง๊ฐ ํ ๋ ธ๋์์ ๋ค๋ฅธ ๋ ธ๋๋ก ๋๋ฌํ๋ ๊ฒ์ด ๋ณด์ฅ๋๋ ์๊ฐ์ ์ ํํ ๋ธํ๊ฐ ์๋ค๋ ๊ฒ์ ํ์คํ ์๊ณ ์์ต๋๋ค. ์ด ์๊ฐ์ด ์ง๋๋ ๋ฉ์์ง๊ฐ ๋์ฐฉํ์ง ์์ผ๋ฉด ๋ ธ๋๊ฐ ์คํจํ๋ค๊ณ ์์ ํ๊ฒ ๋งํ ์ ์์ต๋๋ค. ์ด ๋ชจ๋ธ์์๋ ์์ธก ๊ฐ๋ฅํ ๋๊ธฐ ์๊ฐ์ด ์์ต๋๋ค.
๋น๋๊ธฐ์ ๋ชจ๋ธ โ ๋น๋๊ธฐ์ ๋ชจ๋ธ์์๋ ๋๊ธฐ ์๊ฐ์ด ์ ํํ๋ค๊ณ ์๊ฐํ์ง๋ง ๋ ธ๋๊ฐ ์คํจํ๋ค๊ณ ๋ณด์ฅํ ์ ์๋ ์๊ฐ ์ฐจ์ด๋ ์์ต๋๋ค. ์ ๊ฒ๋ค. ๋ ธ๋์ ๋ฉ์์ง ๋๊ธฐ ์๊ฐ์ ์์๋ก ๊ธธ์ด์ง ์ ์์ต๋๋ค. ์ด๊ฒ์ ์ค์ํ ์ ์์ด๋ฏ๋ก ์ด์ ๋ํด ๋ ์์ธํ ์ค๋ช ํ๊ฒ ์ต๋๋ค.
๋ถ์ฐ ์์คํ ์ ํฉ์ ๊ฐ๋
ํฉ์์ ๊ฐ๋ ์ ๊ณต์์ ์ผ๋ก ์ ์ํ๊ธฐ ์ ์ ํฉ์๊ฐ ํ์ํ ์ํฉ์ ์๋ฅผ ์ดํด๋ณด๊ฒ ์ต๋๋ค. ์ํ ๋จธ์ ๋ณต์ .
๋ฐฐํฌ๋ ๋ก๊ทธ๊ฐ ์์ต๋๋ค. ์ฐ๋ฆฌ๋ ๊ทธ๊ฒ์ด ์ผ๊ด๋๊ณ ๋ถ์ฐ ์์คํ ์ ๋ชจ๋ ๋ ธ๋์ ๋์ผํ ๋ฐ์ดํฐ๋ฅผ ํฌํจํ๊ธฐ๋ฅผ ์ํฉ๋๋ค. ๋ ธ๋ ์ค ํ๋๊ฐ ๋ก๊ทธ์ ์ธ ์ ๊ฐ์ ํ์ตํ๋ฉด ํด๋น ์์ ์ ์ด ๊ฐ์ ๋ค๋ฅธ ๋ชจ๋ ๋ ธ๋์ ์ ๊ณตํ์ฌ ๋ชจ๋ ๋ ธ๋์์ ๋ก๊ทธ๊ฐ ์ ๋ฐ์ดํธ๋๊ณ ์์คํ ์ด ์๋ก์ด ์ผ๊ด๋ ์ํ๋ก ์ด๋ํ๊ฒ ๋ฉ๋๋ค. ์ด ๊ฒฝ์ฐ ๋ ธ๋๊ฐ ์๋ก ๋์ํ๋ ๊ฒ์ด ์ค์ํฉ๋๋ค. ๋ชจ๋ ๋ ธ๋๋ ์ ์๋ ์ ๊ฐ์ด ์ ํํ๋ค๋ ๋ฐ ๋์ํ๊ณ , ๋ชจ๋ ๋ ธ๋๋ ์ด ๊ฐ์ ์๋ฝํ๋ฉฐ, ์ด ๊ฒฝ์ฐ์๋ง ๋ชจ๋ ์ฌ๋์ด ์ ๊ฐ์ ๋ก๊ทธ์ ์ธ ์ ์์ต๋๋ค.
์ฆ, ๋ ๊ด๋ จ์ฑ์ด ๋์ ์ ๋ณด๊ฐ ์๊ณ ์ ์๋ ๊ฐ์ด ์ฌ๋ฐ๋ฅด์ง ์๋ค๊ณ ๋ฐ๋ํ๋ ๋
ธ๋๊ฐ ํ๋๋ ์์์ต๋๋ค. ๋
ธ๋ ๊ฐ์ ํฉ์์ ํ๋์ ์ฌ๋ฐ๋ฅธ ํ์ฉ ๊ฐ์ โโ๋ํ ํฉ์๋ ๋ถ์ฐ ์์คํ
์์์ ํฉ์์
๋๋ค. ๋ค์์ผ๋ก, ๋ถ์ฐ ์์คํ
์ด ํฉ์์ ๋๋ฌํ๋๋ก ๋ณด์ฅํ๋ ์๊ณ ๋ฆฌ์ฆ์ ๋ํด ์ด์ผ๊ธฐํ๊ฒ ์ต๋๋ค.
๋ณด๋ค ๊ณต์์ ์ผ๋ก๋ ํฉ์ ์๊ณ ๋ฆฌ์ฆ(๋๋ ๊ฐ๋จํ ํฉ์ ์๊ณ ๋ฆฌ์ฆ)์ ๋ถ์ฐ ์์คํ
์ A ์ํ์์ B ์ํ๋ก ์ด์ ํ๋ ํน์ ๊ธฐ๋ฅ์ผ๋ก ์ ์ํ ์ ์์ต๋๋ค. ๋ํ ์ด ์ํ๋ ๋ชจ๋ ๋
ธ๋์์ ์๋ฝ๋๋ฉฐ ๋ชจ๋ ๋
ธ๋์์ ์ด๋ฅผ ํ์ธํ ์ ์์ต๋๋ค. ์๊ณ ๋ณด๋ ์ด ์์
์ ์ธ๋ป ๋ณด๊ธฐ์ ๊ทธ๋ ๊ฒ ์ฌ์ํ ๊ฒ์ด ์๋๋๋ค.
ํฉ์ ์๊ณ ๋ฆฌ์ฆ์ ์์ฑ
์์คํ ์ด ๊ณ์ํด์ ์กด์ฌํ๊ณ ์ํ์์ ์ํ๋ก ์ด๋ํ๋ ๊ณผ์ ์์ ์ด๋ ์ ๋ ์ง์ ์ ์ด๋ฃจ๋ ค๋ฉด ํฉ์ ์๊ณ ๋ฆฌ์ฆ์๋ ์ธ ๊ฐ์ง ์์ฑ์ด ์์ด์ผ ํฉ๋๋ค.
- ํ์ฝ โ ์ฌ๋ฐ๋ฅด๊ฒ ์๋ํ๋ ๋ชจ๋ ๋
ธ๋๋ ๋์ผํ ๊ฐ์ ๊ฐ์ ธ์ผ ํฉ๋๋ค(๋ฌธ์์์๋ ์ด ์์ฑ์ ์์ ์์ฑ์ด๋ผ๊ณ ๋ ํจ). ํ์ฌ ์๋ ์ค์ธ ๋ชจ๋ ๋
ธ๋(๋ค๋ฅธ ๋
ธ๋์์ ์ฐ๊ฒฐ์ด ๋์ด์ง๊ฑฐ๋ ์คํจํ์ง ์์)๋ ํฉ์์ ๋๋ฌํ๊ณ ์ต์ข
๊ณตํต ๊ฐ์ ์๋ฝํด์ผ ํฉ๋๋ค.
์ฌ๊ธฐ์ ์ฐ๋ฆฌ๊ฐ ๊ณ ๋ คํ๊ณ ์๋ ๋ถ์ฐ ์์คํ ์ ๋ ธ๋๊ฐ ๋์ํ๊ธฐ๋ฅผ ์ํ๋ค๋ ์ ์ ์ดํดํ๋ ๊ฒ์ด ์ค์ํฉ๋๋ค. ์ฆ, ์ฐ๋ฆฌ๋ ์ด์ ๋ฌด์ธ๊ฐ๊ฐ ๋จ์ํ ์คํจํ ์ ์๋ ์์คํ (์: ์ผ๋ถ ๋ ธ๋ ์คํจ)์ ๋ํด ์ด์ผ๊ธฐํ๊ณ ์์ง๋ง ์ด ์์คํ ์๋ ์๋์ ์ผ๋ก ๋ค๋ฅธ ๋ ธ๋์ ๋ํด ์๋ํ๋ ๋ ธ๋(๋น์ํด ์ฅ๊ตฐ์ ์์ )๊ฐ ํ์คํ ์์ต๋๋ค. ์ด ์์ฑ์ผ๋ก ์ธํด ์์คํ ์ ์ผ๊ด์ฑ์ ์ ์งํฉ๋๋ค.
- ์ง์ค์ฑ โ ์ฌ๋ฐ๋ฅด๊ฒ ์๋ํ๋ ๋ชจ๋ ๋ ธ๋๊ฐ ๋์ผํ ๊ฐ์ ์ ๊ณตํ๋ ๊ฒฝ์ฐ v์ด๋ ์ฌ๋ฐ๋ฅด๊ฒ ์๋ํ๋ ๋ชจ๋ ๋ ธ๋๊ฐ ์ด ๊ฐ์ ์๋ฝํด์ผ ํจ์ ์๋ฏธํฉ๋๋ค. v.
- ์ข ๋ฃ โ ์ฌ๋ฐ๋ฅด๊ฒ ์๋ํ๋ ๋ชจ๋ ๋ ธ๋๋ ๊ฒฐ๊ตญ ํน์ ๊ฐ(ํ์ฑ ์์ฑ)์ ๊ฐ๊ฒ ๋๋ฉฐ, ์ด๋ฅผ ํตํด ์๊ณ ๋ฆฌ์ฆ์ด ์์คํ ์์ ์ง์ ์ ์ด๋ฃฐ ์ ์์ต๋๋ค. ์ฌ๋ฐ๋ฅด๊ฒ ์๋ํ๋ ๊ฐ ๊ฐ๋ณ ๋ ธ๋๋ ์กฐ๋ง๊ฐ ์ต์ข ๊ฐ์ ์๋ฝํ๊ณ ํ์ธํด์ผ ํฉ๋๋ค. "๋์๊ฒ๋ ์ด ๊ฐ์ด ์ฌ์ค์ด๋ฉฐ ์ ์ฒด ์์คํ ์ ๋์ํฉ๋๋ค."
ํฉ์ ์๊ณ ๋ฆฌ์ฆ์ ์๋ ๋ฐฉ์์ ๋ํ ์
์๊ณ ๋ฆฌ์ฆ์ ์์ฑ์ด ์์ ํ ๋ช ํํ์ง ์์ ์ ์์ต๋๋ค. ๋ฐ๋ผ์ ์ฐ๋ฆฌ๋ ๋ชจ๋ ๋ ธ๋๊ฐ ์์๋๋ก ์๋ํ๊ณ ๋ฉ์์ง๊ฐ ์์ค๋์ง ์๊ณ ์ค๋จ๋์ง ์๋ ๋๊ธฐ์ ๋ฉ์์ง ๋ชจ๋ธ์ ์ฌ์ฉํ๋ ์์คํ ์์ ๊ฐ์ฅ ๊ฐ๋จํ ํฉ์ ์๊ณ ๋ฆฌ์ฆ์ด ์ด๋ค ๋จ๊ณ๋ฅผ ๊ฑฐ์น๋์ง ์๋ฅผ ํตํด ์ค๋ช ํ ๊ฒ์ ๋๋ค(์ด๊ฒ์ด ์ค์ ๋ก ๋ฐ์ํฉ๋๊น?).
- ๋ชจ๋ ๊ฒ์ ๊ฒฐํผ ์ ์(Propose)์ผ๋ก ์์๋ฉ๋๋ค. ํด๋ผ์ด์ธํธ๊ฐ "Node 1"์ด๋ผ๋ ๋ ธ๋์ ์ฐ๊ฒฐ๋์ด ํธ๋์ญ์ ์ ์์ํ๊ณ ๋ ธ๋ O์ ์๋ก์ด ๊ฐ์ ์ ๋ฌํ๋ค๊ณ ๊ฐ์ ํด ๋ณด๊ฒ ์ต๋๋ค. ์ด์ ๋ถํฐ "Node 1"์ ํธ์ถํ๊ฒ ์ต๋๋ค. ์ ๊ณต. ์ ์์๋ก์ "๋ ธ๋ 1"์ ์ด์ ์ ์ฒด ์์คํ ์ ์๋ก์ด ๋ฐ์ดํฐ๊ฐ ์์์ ์๋ ค์ผ ํ๋ฉฐ ๋ค๋ฅธ ๋ชจ๋ ๋ ธ๋์ ๋ฉ์์ง๋ฅผ ๋ณด๋ ๋๋ค. "๋ณด์ธ์! "์ค"๋ผ๋ ๋ป์ด ๋ ์ฌ๋ผ์ ์ ์ด๋ณด๊ณ ์ถ์ด์! ๋ก๊ทธ์๋ "O"๊ฐ ๊ธฐ๋ก๋๋์ง ํ์ธํ์๊ธฐ ๋ฐ๋๋๋ค.
- ๋ค์ ๋จ๊ณ๋ ์ ์๋ ๊ฐ์น์ ๋ํ ํฌํ(Voting)์
๋๋ค. ๊ทธ๊ฒ์ ๋ฌด์์ ์ํ ๊ฒ์
๋๊น? ๋ค๋ฅธ ๋
ธ๋๊ฐ ๋ ์ต๊ทผ์ ์ ๋ณด๋ฅผ ์์ ํ๊ณ ๋์ผํ ํธ๋์ญ์
์ ๋ํ ๋ฐ์ดํฐ๋ฅผ ๊ฐ์ง๊ณ ์๋ ๊ฒฝ์ฐ๊ฐ ๋ฐ์ํ ์ ์์ต๋๋ค.
๋ ธ๋ "๋ ธ๋ 1"์ด ์ ์์ ๋ณด๋ด๋ฉด ๋ค๋ฅธ ๋ ธ๋๋ ์ด ์ด๋ฒคํธ์ ๋ํ ๋ฐ์ดํฐ์ ๋ํ ๋ก๊ทธ๋ฅผ ํ์ธํฉ๋๋ค. ๋ชจ์์ด ์์ผ๋ฉด ๋ ธ๋๋ ๋ค์๊ณผ ๊ฐ์ด ๋ฐํํฉ๋๋ค. โ์, ์ด ์ด๋ฒคํธ์ ๋ํ ๋ค๋ฅธ ๋ฐ์ดํฐ๊ฐ ์์ต๋๋ค. "O" ๊ฐ์ ์ฐ๋ฆฌ๊ฐ ๋ง๋ ํ ๋ฐ์์ผ ํ ์ต์ ์ ๋ณด์ ๋๋ค."๋ค๋ฅธ ๊ฒฝ์ฐ์๋ ๋ ธ๋๊ฐ "๋ ธ๋ 1"์ ์๋ตํ ์ ์์ต๋๋ค. "๋ค์ด๋ณด์ธ์! ์ด ๊ฑฐ๋์ ๋ํ ์ต์ ๋ฐ์ดํฐ๊ฐ ์์ต๋๋ค. 'O'๊ฐ ์๋๋ผ ๋ ๋์ ๊ฒ์ ๋๋ค."
ํฌํ ๋จ๊ณ์์ ๋ ธ๋๋ ๊ฒฐ์ ์ ๋ด๋ฆฝ๋๋ค. ๋ ธ๋๋ ๋ชจ๋ ๋์ผํ ๊ฐ์ ์๋ฝํ ์ง ์๋๋ฉด ๋ ธ๋ ์ค ํ๋๊ฐ ๋ฐ๋ ํฌํ๋ฅผ ํ์ฌ ํด๋น ๋ ธ๋๊ฐ ์ต์ ๋ฐ์ดํฐ๋ฅผ ๊ฐ์ง๊ณ ์์์ ๋ํ๋ ๋๋ค.
- ํฌํ๊ฐ ์ฑ๊ณต์ ์ผ๋ก ์ด๋ฃจ์ด์ง๊ณ ๋ชจ๋ ์ฌ๋์ด ์ฐฌ์ฑํ๋ฉด ์์คํ ์ ๊ฐ์น ์์ฉ์ด๋ผ๋ ์๋ก์ด ๋จ๊ณ๋ก ์ด๋ํฉ๋๋ค. โ๋ ธ๋ 1โ์ ๋ค๋ฅธ ๋ ธ๋๋ก๋ถํฐ ๋ชจ๋ ์๋ต์ ์์งํ๊ณ ๋ค์๊ณผ ๊ฐ์ด ๋ณด๊ณ ํฉ๋๋ค. โ๋ชจ๋๊ฐ โOโ ๊ฐ์ ๋์ํ์ต๋๋ค! ์ด์ ์ ๋ โOโ๊ฐ ์ฐ๋ฆฌ์ ์๋ก์ด ์๋ฏธ์ด๋ฉฐ ๋ชจ๋ ์ฌ๋์๊ฒ ๋์ผํจ์ ๊ณต์์ ์ผ๋ก ์ ์ธํฉ๋๋ค! ๊ทธ๊ฒ์ ๋น์ ์ ์์ ์ฑ ์ ์ ์ด ๋์ญ์์ค. ์์ง ๋ง์ญ์์ค. ์ผ์ง์ ์ ์ด ๋์ธ์!โ
- ๋๋จธ์ง ๋
ธ๋๋ "O" ๊ฐ์ ๊ธฐ๋กํ๋ค๋ ํ์ธ(Accepted)์ ๋ณด๋
๋๋ค. ์ด ์๊ฐ ๋์ ์๋ก์ด ๊ฒ์ ์๋ฌด๊ฒ๋ ๋์ฐฉํ์ง ์์์ต๋๋ค(์ผ์ข
์ XNUMX๋จ๊ณ ์ปค๋ฐ). ์ด ์ค์ํ ์ด๋ฒคํธ๊ฐ ๋๋๋ฉด ๋ถ์ฐ ํธ๋์ญ์
์ด ์๋ฃ๋ ๊ฒ์ผ๋ก ๊ฐ์ฃผํฉ๋๋ค.
๋ฐ๋ผ์ ๊ฐ๋จํ ๊ฒฝ์ฐ ํฉ์ ์๊ณ ๋ฆฌ์ฆ์ ์ ์, ํฌํ(ํฌํ), ์๋ฝ(์๋ฝ), ์๋ฝ ํ์ธ(์๋ฝ)์ ๋ค ๋จ๊ณ๋ก ๊ตฌ์ฑ๋ฉ๋๋ค.
์ด๋ค ๋จ๊ณ์์ ํฉ์์ ๋๋ฌํ ์ ์๋ ๊ฒฝ์ฐ ์ ์๋ ๊ฐ ํ์ธ์ ๊ฑฐ๋ถํ ๋ ธ๋๊ฐ ์ ๊ณตํ ์ ๋ณด๋ฅผ ๊ณ ๋ คํ์ฌ ์๊ณ ๋ฆฌ์ฆ์ด ๋ค์ ์์๋ฉ๋๋ค.
๋น๋๊ธฐ ์์คํ ์ ํฉ์ ์๊ณ ๋ฆฌ์ฆ
๊ทธ ์ ์๋ ๋๊ธฐ์ ๋ฉ์์ง ๋ชจ๋ธ์ ๋ํด ์ด์ผ๊ธฐํ๊ธฐ ๋๋ฌธ์ ๋ชจ๋ ๊ฒ์ด ์์กฐ๋กญ๊ฒ ์งํ๋์์ต๋๋ค. ๊ทธ๋ฌ๋ ์ฐ๋ฆฌ๋ ํ๋ ์ฌํ์์ ๋ชจ๋ ๊ฒ์ ๋น๋๊ธฐ์์ผ๋ก ์ํํ๋ ๋ฐ ์ต์ํ๋ค๋ ๊ฒ์ ์๊ณ ์์ต๋๋ค. ๋ ธ๋์ ์๋ต์ ๊ธฐ๋ค๋ฆฌ๋ ์๊ฐ์ด ์์๋ก ๊ธธ ์ ์๋ค๊ณ ์๊ฐํ๋ ๋น๋๊ธฐ ๋ฉ์์ง ๋ชจ๋ธ์ ์ฌ์ฉํ๋ ์์คํ ์์ ์ ์ฌํ ์๊ณ ๋ฆฌ์ฆ์ด ์ด๋ป๊ฒ ์๋ํฉ๋๊น? (๊ทธ๋ฐ๋ฐ ๋ ธ๋์ ์คํจ๋ ๋ค์๊ณผ ๊ฐ์ ๊ฒฝ์ฐ์ ์๋ก ๊ฐ์ฃผ๋ ์ ์์ต๋๋ค.) ๋ ธ๋๋ ์์๋ก ์ค๋ ์๊ฐ ๋์ ์๋ตํ ์ ์์ต๋๋ค.)
์ด์ ์ฐ๋ฆฌ๋ ํฉ์ ์๊ณ ๋ฆฌ์ฆ์ด ์์น์ ์ผ๋ก ์ด๋ป๊ฒ ์๋ํ๋์ง ์์์ผ๋ฏ๋ก ์ฌ๊ธฐ๊น์ง ์จ ํธ๊ธฐ์ฌ ๋ง์ ๋ ์๋ค์ ์ํ ์ง๋ฌธ์ ๋๋ค. ๋น๋๊ธฐ ๋ฉ์์ง ๋ชจ๋ธ์ ์ฌ์ฉํ๋ N ๋ ธ๋ ์์คํ ์์ ์์คํ ์ด ์ฌ์ ํ ํฉ์์ ๋๋ฌํ ์ ์๋๋ก ์คํจํ ์ ์๋ ๋ ธ๋ ์๋ ๋ช ๊ฐ์ ๋๊น?
์ ๋ต๊ณผ ์ ๋น์ฑ์ ์คํฌ์ผ๋ฌ ๋ค์ ์์ต๋๋ค.์ ๋ต์ ๋ค์๊ณผ ๊ฐ์ต๋๋ค. 0. ๋น๋๊ธฐ์ ์์คํ
์์๋ ๋
ธ๋ ํ๋๋ผ๋ ์คํจํ๋ฉด ์์คํ
์ ํฉ์์ ๋๋ฌํ ์ ์์ต๋๋ค. ์ด ์ง์ ์ ํน์ ์ง๋จ์์ ์ ์๋ ค์ง FLP ์ ๋ฆฌ(1985, Fischer, Lynch, Paterson, ๊ธฐ์ฌ ๋ ๋ถ๋ถ์ ์๋ณธ ๋งํฌ)์์ ์
์ฆ๋์์ต๋๋ค. โ์ ์ด๋ ํ๋์ ๋
ธ๋๊ฐ ์คํจํ๋ฉด ๋ถ์ฐ ํฉ์๋ฅผ ๋ฌ์ฑํ๋ ๊ฒ์ด ๋ถ๊ฐ๋ฅํฉ๋๋ค. .โ
์ฌ๋ฌ๋ถ, ๊ทธ๋ฌ๋ฉด ๋ฌธ์ ๊ฐ ์๊ฒผ์ต๋๋ค. ์ฐ๋ฆฌ๋ ๋ชจ๋ ๊ฒ์ด ๋น๋๊ธฐ์ ์ธ ๊ฒ์ ์ต์ํฉ๋๋ค. ๊ทธ๋ฆฌ๊ณ ์ฌ๊ธฐ ์์ต๋๋ค. ๊ณ์ ์ฌ๋ ๋ฐฉ๋ฒ?
์ฐ๋ฆฌ๋ ์ด๋ก ๊ณผ ์ํ์ ๋ํด์๋ง ์ด์ผ๊ธฐํ๊ณ ์์์ต๋๋ค. "ํฉ์๋ฅผ ์ด๋ฃฐ ์ ์๋ค"๋ ๊ฒ์ ์ํ์ ์ธ์ด๋ฅผ ์ฐ๋ฆฌ์ ์ธ์ด์ธ ๊ณตํ์ผ๋ก ๋ฒ์ญํ ๋ ๋ฌด์์ ์๋ฏธํฉ๋๊น? ์ด๋ "ํญ์ ๋ฌ์ฑ๋ ์๋ ์๋ค"๋ ์๋ฏธ์ ๋๋ค. ํฉ์๊ฐ ์ด๋ฃจ์ด์ง์ง ์๋ ๊ฒฝ์ฐ๋ ์์ต๋๋ค. ์ด๊ฒ์ ์ด๋ค ๊ฒฝ์ฐ์ธ๊ฐ์?
์ด๋ ๋ฐ๋ก ์์์ ์ค๋ช ํ ํ์ฑ ์์ฑ์ ์๋ฐํ๋ ๊ฒ์ ๋๋ค. ์ฐ๋ฆฌ๋ ๊ณตํต์ ํฉ์๋ฅผ ๊ฐ๊ณ ์์ง ์์ผ๋ฉฐ, ๋ชจ๋ ๋ ธ๋๋ก๋ถํฐ ์๋ต์ด ์๋ ๊ฒฝ์ฐ ์์คํ ์ ์ง์ ์ ์ด๋ฃฐ ์ ์์ต๋๋ค(ํ์ ๋ ์๊ฐ ๋ด์ ์๋ฃํ ์ ์์). ๋น๋๊ธฐ์ ์์คํ ์์๋ ์์ธก ๊ฐ๋ฅํ ์๋ต ์๊ฐ์ด ์์ผ๋ฉฐ ๋ ธ๋๊ฐ ์ถฉ๋ํ๋์ง ๋๋ ์๋ตํ๋ ๋ฐ ์ค๋ ์๊ฐ์ด ๊ฑธ๋ฆฌ๋์ง ์ ์ ์๊ธฐ ๋๋ฌธ์ ๋๋ค.
๊ทธ๋ฌ๋ ์ค์ ๋ก ์ฐ๋ฆฌ๋ ํด๊ฒฐ์ฑ ์ ์ฐพ์ ์ ์์ต๋๋ค. ์ค๋ฅ๊ฐ ๋ฐ์ํ ๊ฒฝ์ฐ ์๊ณ ๋ฆฌ์ฆ์ด ์ค๋ซ๋์ ์๋ํ ์ ์๋๋ก ํ์ญ์์ค(์ ์ฌ์ ์ผ๋ก ๋ฌด๊ธฐํ ์๋ํ ์ ์์). ๊ทธ๋ฌ๋ ๋๋ถ๋ถ์ ์ํฉ์์ ๋๋ถ๋ถ์ ๋ ธ๋๊ฐ ์ฌ๋ฐ๋ฅด๊ฒ ์๋ํ๋ฉด ์์คํ ์ด ๋ฐ์ ํ๊ฒ ๋ฉ๋๋ค.
์ค์ ๋ก ์ฐ๋ฆฌ๋ ๋ถ๋ถ์ ์ผ๋ก ๋๊ธฐ์ ํต์ ๋ชจ๋ธ์ ๋ค๋ฃน๋๋ค. ๋ถ๋ถ ๋๊ธฐํ๋ ๋ค์๊ณผ ๊ฐ์ด ์ดํด๋ฉ๋๋ค. ์ผ๋ฐ์ ์ธ ๊ฒฝ์ฐ ๋น๋๊ธฐ ๋ชจ๋ธ์ด ์์ง๋ง ํน์ ์์ ์ "์ ์ญ ์์ ํ ์๊ฐ"์ด๋ผ๋ ํน์ ๊ฐ๋ ์ด ๊ณต์์ ์ผ๋ก ๋์ ๋์์ต๋๋ค.
์ด ์๊ฐ์ ํ๋์ ์ค์ง ์์ ์๋ ์์ง๋ง ์ธ์ ๊ฐ๋ ๋ฐ๋์ ์ต๋๋ค. ๊ฐ์ ์๋ ์๊ณ๊ฐ ์ธ๋ฆฌ๊ณ ๊ทธ ์๊ฐ๋ถํฐ ๋ฉ์์ง๊ฐ ๋์ฐฉํ ์๊ฐ ๋ธํ๋ฅผ ์์ธกํ ์ ์์ต๋๋ค. ์ด ์๊ฐ๋ถํฐ ์์คํ ์ ๋น๋๊ธฐ์์์ ๋๊ธฐ์์ผ๋ก ์ ํ๋ฉ๋๋ค. ์ค์ ๋ก ์ฐ๋ฆฌ๋ ๊ทธ๋ฌํ ์์คํ ์ ์ ํํ๊ฒ ๋ค๋ฃจ๊ณ ์์ต๋๋ค.
Paxos ์๊ณ ๋ฆฌ์ฆ์ ํฉ์ ๋ฌธ์ ๋ฅผ ํด๊ฒฐํฉ๋๋ค.
๊ทธ๋ฌ๋ ๊ทธ ์ฆ๊ฑฐ๋ ๊ฒฐ์ฝ ์ฌ์ํ ๊ฒ์ด ์๋ ๊ฒ์ผ๋ก ๋๋ฌ๋ฌ์ต๋๋ค. ์๊ณ ๋ฆฌ์ฆ์ ์ค๋ช ํ๋ ์ฒซ ๋ฒ์งธ ์ถํ๋ฌผ์ 1998๋ ์์ผ ๋ฐํ๋์์ต๋๋ค(33ํ์ด์ง). ๊ฒฐ๊ณผ์ ์ผ๋ก ์ดํดํ๊ธฐ๊ฐ ๋งค์ฐ ์ด๋ ค์ ์ผ๋ฉฐ 2001 ๋ ์ 14 ํ์ด์ง์ ๋ฌํ๋ ๊ธฐ์ฌ ์ค๋ช ์ด ์ถํ๋์์ต๋๋ค. ์ค์ ๋ก ํฉ์ ๋ฌธ์ ๊ฐ ์ ํ ๋จ์ํ์ง ์์ผ๋ฉฐ ๊ทธ๋ฌํ ์๊ณ ๋ฆฌ์ฆ ๋ค์๋ ๊ฐ์ฅ ๋๋ํ ์ฌ๋๋ค์ ์์ฒญ๋ ์์ ์์ ์ด ์์์ ๋ณด์ฌ์ฃผ๊ธฐ ์ํด ์ถํ๋ฌผ์ ์์ด ์ ๊ณต๋ฉ๋๋ค.
Leslie Lamport ์์ ์ด ๊ฐ์์์ ๋ ๋ฒ์งธ ์ค๋ช ๊ธฐ์ฌ์๋ ํ๋์ ์ง์ , ํ ์ค(์ด๋ ์ค์ธ์ง ๋ช ์ํ์ง ์์)์ด ์์ผ๋ฉฐ ๋ค๋ฅธ ๋ฐฉ์์ผ๋ก ํด์๋ ์ ์๋ค๊ณ ์ง์ ํ ๊ฒ์ ํฅ๋ฏธ ๋กญ์ต๋๋ค. ๊ทธ๋ฆฌ๊ณ ์ด๋ก ์ธํด ๋ง์ ํ๋ Paxos ๊ตฌํ์ด ์์ ํ ์ฌ๋ฐ๋ฅด๊ฒ ์๋ํ์ง ์์ต๋๋ค.
Paxos์ ์์ ์ ๋ํ ์์ธํ ๋ถ์์๋ ํ๋ ์ด์์ ๊ธฐ์ฌ๊ฐ ํ์ํ๋ฏ๋ก ์๊ณ ๋ฆฌ์ฆ์ ์ฃผ์ ์์ด๋์ด๋ฅผ ์์ฃผ ๊ฐ๋ตํ๊ฒ ์ ๋ฌํ๋ ค๊ณ ๋ ธ๋ ฅํ ๊ฒ์ ๋๋ค. ๋ด ๊ธฐ์ฌ ๋์ ์๋ ๋งํฌ์์ ์ด ์ฃผ์ ์ ๋ํด ๋ ์์ธํ ์์๋ณผ ์ ์๋ ์๋ฃ๋ฅผ ์ฐพ์ ์ ์์ต๋๋ค.
Paxos์์์ ์ญํ
Paxos ์๊ณ ๋ฆฌ์ฆ์๋ ์ญํ ์ด๋ผ๋ ๊ฐ๋ ์ด ์์ต๋๋ค. ์ธ ๊ฐ์ง ์ฃผ์ ์ฌํญ์ ๊ณ ๋ คํด ๋ณด๊ฒ ์ต๋๋ค(์ถ๊ฐ ์ญํ ์ ๋ํ ์์ ์ฌํญ์ด ์์).
- ์ ์์(๋ฆฌ๋ ๋๋ ์กฐ์ ์๋ผ๋ ์ฉ์ด๋ ์ฌ์ฉ๋ ์ ์์). ์ฌ์ฉ์๋ก๋ถํฐ ์๋ก์ด ๊ฐ์น๋ฅผ ๋ฐฐ์ฐ๊ณ ๋ฆฌ๋์ ์ญํ ์ ๋งก์ ์ฌ๋๋ค์ ๋๋ค. ๊ทธ๋ค์ ์๋ฌด๋ ์๋ก์ด ๊ฐ์น์ ๋ํ ์ผ๋ จ์ ์ ์์ ์์ํ๊ณ ๋ ธ๋์ ์ถ๊ฐ ์กฐ์น๋ฅผ ์กฐ์ ํ๋ ๊ฒ์ ๋๋ค. ๋ํ Paxos๋ ํน์ ์ํฉ์์ ์ฌ๋ฌ ๋ฆฌ๋์ ์กด์ฌ๋ฅผ ํ์ฉํฉ๋๋ค.
- ์๋ฝ์(์ ๊ถ์). ์ด๋ ํน์ ๊ฐ์ ์๋ฝํ๊ฑฐ๋ ๊ฑฐ๋ถํ๊ธฐ ์ํด ํฌํํ๋ ๋ ธ๋์ ๋๋ค. ํฉ์ ์๊ณ ๋ฆฌ์ฆ์ ๋ค์ ๋จ๊ณ ์ดํ ์์คํ ์ด ์ด๋ค ์ํ๋ก ๊ฐ ๊ฒ์ธ์ง(๋๋ ๊ฐ์ง ์์ ๊ฒ์ธ์ง) ๊ฒฐ์ ์ด ๊ทธ๋ค์ ๋ฌ๋ ค ์๊ธฐ ๋๋ฌธ์ ๊ทธ๋ค์ ์ญํ ์ ๋งค์ฐ ์ค์ํฉ๋๋ค.
- ํ์ต. ์์คํ ์ํ๊ฐ ๋ณ๊ฒฝ๋๋ฉด ๋จ์ํ ์๋ก์ด ํ์ฉ ๊ฐ์ ๋ฐ์๋ค์ด๊ณ ์ฐ๋ ๋ ธ๋์ ๋๋ค. ๊ทธ๋ค์ ๊ฒฐ์ ์ ๋ด๋ฆฌ์ง ์์ผ๋ฉฐ ๋จ์ง ๋ฐ์ดํฐ๋ฅผ ์์ ํ์ฌ ์ต์ข ์ฌ์ฉ์์๊ฒ ์ ๊ณตํ ์ ์์ต๋๋ค.
ํ๋์ ๋ ธ๋๋ ๋ค์ํ ์ํฉ์์ ์ฌ๋ฌ ์ญํ ์ ๊ฒฐํฉํ ์ ์์ต๋๋ค.
์ฟผ๋ผ์ ๊ฐ๋
์ฐ๋ฆฌ๋ ๋ค์๊ณผ ๊ฐ์ ์์คํ ์ ๊ฐ์ง๊ณ ์๋ค๊ณ ๊ฐ์ ํฉ๋๋ค. N ๋ ธ๋ ๊ทธ๋ฆฌ๊ณ ๊ทธ ์ค ์ต๋ F ๋ ธ๋๊ฐ ์คํจํ ์ ์์ต๋๋ค. F ๋ ธ๋๊ฐ ์คํจํ๋ฉด ์ต์ํ 2F+1 ์๋ฝ์ ๋ ธ๋.
์ด๋ ์ต์ ์ ์ํฉ์์๋ ์ฌ๋ฐ๋ฅด๊ฒ ์๋ํ๋ "์ข์" ๋ ธ๋์ ๋๋ถ๋ถ์ ํญ์ ํ๋ณดํ๊ธฐ ์ํด ํ์ํฉ๋๋ค. ๊ทธ๊ฑด ์ฌ + 1 ๋์ํ "์ข์" ๋ ธ๋์ ์ต์ข ๊ฐ์ด ์๋ฝ๋ฉ๋๋ค. ๊ทธ๋ ์ง ์์ผ๋ฉด ์ฐ๋ฆฌ์ ์๋ก ๋ค๋ฅธ ์ง์ญ ๊ทธ๋ฃน์ด ์๋ก ๋ค๋ฅธ ์๋ฏธ๋ฅผ ๊ฐ์ง๋ฉฐ ์๋ก ๋์ํ์ง ๋ชปํ๋ ์ํฉ์ด ๋ฐ์ํ ์ ์์ต๋๋ค. ๋ฐ๋ผ์ ํฌํ์์ ์น๋ฆฌํ๋ ค๋ฉด ์ ๋ ๋ค์๊ฐ ํ์ํฉ๋๋ค.
Paxos ํฉ์ ์๊ณ ๋ฆฌ์ฆ์ ์๋ ๋ฐฉ์์ ๋ํ ์ผ๋ฐ์ ์ธ ์์ด๋์ด
Paxos ์๊ณ ๋ฆฌ์ฆ์๋ ๋ ๊ฐ์ ํฐ ๋จ๊ณ๊ฐ ํฌํจ๋๋ฉฐ, ์ด๋ ์ฐจ๋ก๋ก ๊ฐ๊ฐ ๋ ๋จ๊ณ๋ก ๋๋ฉ๋๋ค.
- 1a๋จ๊ณ: ์ค๋น. ์ค๋น ๋จ๊ณ์์ ๋ฆฌ๋(์ ์์)๋ ๋ชจ๋ ๋ ธ๋์ ๋ค์๊ณผ ๊ฐ์ด ์๋ฆฝ๋๋ค. โ์ฐ๋ฆฌ๋ ์๋ก์ด ํฌํ ๋จ๊ณ๋ฅผ ์์ํฉ๋๋ค. ์๋ก์ด ๋ผ์ด๋๊ฐ ์๊ฒผ์ต๋๋ค. ์ด๋ฒ ๋ผ์ด๋์ ์๋ n์ ๋๋ค. ์ด์ ํฌํ๋ฅผ ์์ํ๊ฒ ์ต๋๋ค." ํ์ฌ๋ก์๋ ์ ์ฃผ๊ธฐ์ ์์๋ง ๋ณด๊ณ ํ ๋ฟ ์ ๊ฐ์ ๋ณด๊ณ ํ์ง ์์ต๋๋ค. ์ด ๋จ๊ณ์ ์๋ฌด๋ ์๋ก์ด ๋ผ์ด๋๋ฅผ ์์ํ๊ณ ๋ชจ๋ ์ฌ๋์๊ฒ ๊ณ ์ ๋ฒํธ๋ฅผ ์๋ฆฌ๋ ๊ฒ์ ๋๋ค. ๋ผ์ด๋ ๋ฒํธ๊ฐ ์ค์ํฉ๋๋ค. ์ด๋ ๋ชจ๋ ์ด์ ๋ฆฌ๋์ ์ด์ ํฌํ ๋ฒํธ๋ณด๋ค ๋ ํฐ ๊ฐ์ด์ด์ผ ํฉ๋๋ค. ์์คํ ์ ๋ค๋ฅธ ๋ ธ๋๊ฐ ๋ฆฌ๋์ ๋ฐ์ดํฐ๊ฐ ์ผ๋ง๋ ์ต๊ทผ์ธ์ง ์ดํดํ ์ ์๋ ๊ฒ์ ๋ผ์ด๋ ์ ๋๋ถ์ด๊ธฐ ๋๋ฌธ์ ๋๋ค. ๋ค๋ฅธ ๋ ธ๋๋ ์ด๋ฏธ ํจ์ฌ ๋์ค ๋ผ์ด๋์ ํฌํ ๊ฒฐ๊ณผ๋ฅผ ๊ฐ๊ณ ์์ผ๋ฉฐ ๋จ์ํ ๋ฆฌ๋์๊ฒ ๊ทธ๊ฐ ์๋์ ๋ค์ฒ์ ธ ์๋ค๊ณ ๋งํ ๊ฒ์ ๋๋ค.
- 1b๋จ๊ณ: ์ฝ์. ์๋ฝ์ ๋
ธ๋๊ฐ ์๋ก์ด ํฌํ ๋จ๊ณ์ ๋ฒํธ๋ฅผ ๋ฐ์ผ๋ฉด ๋ ๊ฐ์ง ๊ฒฐ๊ณผ๊ฐ ๊ฐ๋ฅํฉ๋๋ค.
- ์ ํฌํ์ ์ n์ ์๋ฝ์๊ฐ ์ฐธ์ฌํ ์ด์ ํฌํ์ ์๋ณด๋ค ํฝ๋๋ค. ๊ทธ๋ฐ ๋ค์ Acceptor๋ n๋ณด๋ค ๋ฎ์ ์ซ์์ ํฌํ์ ๋ ์ด์ ์ฐธ์ฌํ์ง ์๊ฒ ๋ค๋ ์ฝ์์ ๋ฆฌ๋์๊ฒ ๋ณด๋ ๋๋ค. Acceptor๊ฐ ์ด๋ฏธ ๋ฌด์ธ๊ฐ์ ํฌํํ ๊ฒฝ์ฐ(์ฆ, ๋ ๋ฒ์งธ ๋จ๊ณ์์ ์ด๋ฏธ ์ผ๋ถ ๊ฐ์ ์๋ฝํ ๊ฒฝ์ฐ) ์๋ฝ๋ ๊ฐ๊ณผ ์ฐธ์ฌํ ํฌํ ์๋ฅผ ์ฝ์์ ์ฒจ๋ถํฉ๋๋ค.
- ๊ทธ๋ ์ง ์๊ณ Acceptor๊ฐ ์ด๋ฏธ ๋์ ์ซ์์ ํฌํ์ ๋ํด ์๊ณ ์๋ ๊ฒฝ์ฐ ์ค๋น ๋จ๊ณ๋ฅผ ๋ฌด์ํ๊ณ ๋ฆฌ๋์ ์๋ตํ์ง ์์ ์ ์์ต๋๋ค.
- 2a๋จ๊ณ: ์๋ฝ. ๋ฆฌ๋๋ ์ฟผ๋ผ(์์คํ
์ ๋๋ค์ ๋
ธ๋)์ ์๋ต์ ๊ธฐ๋ค๋ ค์ผ ํ๋ฉฐ, ํ์ํ ์์ ์๋ต์ด ์์ ๋๋ฉด ์ด๋ฒคํธ ๊ฐ๋ฐ์ ์ํ ๋ ๊ฐ์ง ์ต์
์ด ์์ต๋๋ค.
- Acceptor ์ค ์ผ๋ถ๋ ์ด๋ฏธ ํฌํํ ๊ฐ์ ๋ณด๋์ต๋๋ค. ์ด ๊ฒฝ์ฐ ๋ฆฌ๋๋ ํฌํ์์ ์ต๋ ๊ฐ์์ ๊ฐ์ ์ ํํฉ๋๋ค. ์ด ๊ฐ์ x๋ผ๊ณ ๋ถ๋ฅด๋ฉด "Accept (n, x)"์ ๊ฐ์ ๋ฉ์์ง๋ฅผ ๋ชจ๋ ๋ ธ๋์ ๋ณด๋ ๋๋ค. ์ฌ๊ธฐ์ ์ฒซ ๋ฒ์งธ ๊ฐ์ ์์ฒด ์ ์ ๋จ๊ณ์ ํฌํ ๋ฒํธ์ด๊ณ ๋ ๋ฒ์งธ ๊ฐ์ ๋ชจ๋๊ฐ ๋ชจ์ธ ๊ฒ์ ๋๋ค. ์ฆ. ์ฐ๋ฆฌ๊ฐ ์ค์ ๋ก ํฌํํ๋ ๊ฐ์น.
- Acceptor ์ค ์ด๋ ๋๊ตฌ๋ ๊ฐ์ ๋ณด๋ด์ง ์์์ง๋ง ๋จ์ํ ์ด๋ฒ ๋ผ์ด๋์์ ํฌํํ๊ฒ ๋ค๊ณ ์ฝ์ํ ๊ฒฝ์ฐ, ๋ฆฌ๋๋ ์์ ์ด ๋ฆฌ๋๊ฐ ๋ ๊ฐ์น์ ๋ํด ํฌํํ๋๋ก ๊ทธ๋ค์ ์ด๋ํ ์ ์์ต๋๋ค. ๊ทธ๊ฒ์ y๋ผ๊ณ ๋ถ๋ฅด์. ์ด์ ๊ฒฐ๊ณผ์ ์ ์ฌํ๊ฒ "Accept (n, y)"์ ๊ฐ์ ๋ฉ์์ง๋ฅผ ๋ชจ๋ ๋ ธ๋์ ๋ณด๋ ๋๋ค.
- 2b๋จ๊ณ: ์น์ธ๋จ. ๋ํ ์๋ฝ์ ๋
ธ๋๋ ๋ฆฌ๋๋ก๋ถํฐ "Accept(...)" ๋ฉ์์ง๋ฅผ ์์ ํ๋ฉด ์ผ๋ถ(๊ธฐํ)๋ฅผ ์ฝ์ํ์ง ์์ ๊ฒฝ์ฐ์๋ง ์ด์ ๋์ํฉ๋๋ค(๋ชจ๋ ๋
ธ๋์ ์ ๊ฐ์ ๋์ํ๋ค๋ ํ์ธ์ ๋ณด๋
๋๋ค). ๋ผ์ด๋ ๋ฒํธ๋ก ํฌํ์ ์ฐธ์ฌํ๋ ๋ฆฌ๋ ์' > ์๊ทธ๋ ์ง ์์ผ๋ฉด ํ์ธ ์์ฒญ์ ๋ฌด์ํฉ๋๋ค.
๋๋ค์์ ๋ ธ๋๊ฐ ๋ฆฌ๋์ ์๋ตํ๊ณ ๋ชจ๋๊ฐ ์ ๊ฐ์ ํ์ธํ ๊ฒฝ์ฐ ์ ๊ฐ์ด ์๋ฝ๋ ๊ฒ์ผ๋ก ๊ฐ์ฃผ๋ฉ๋๋ค. ๋ง์ธ! ๋ค์์ ๋๋ฌํ์ง ๋ชปํ๊ฑฐ๋ ์ ๊ฐ ์๋ฝ์ ๊ฑฐ๋ถํ๋ ๋ ธ๋๊ฐ ์๋ ๊ฒฝ์ฐ ๋ชจ๋ ๊ฒ์ด ๋ค์ ์์๋ฉ๋๋ค.
์ด๊ฒ์ด Paxos ์๊ณ ๋ฆฌ์ฆ์ด ์๋ํ๋ ๋ฐฉ์์ ๋๋ค. ์ด๋ฌํ ๊ฐ ๋จ๊ณ์๋ ๋ง์ ๋ฏธ๋ฌํจ์ด ์์ผ๋ฉฐ ์ค์ ๋ก ๋ค์ํ ์ ํ์ ์คํจ, ์ฌ๋ฌ ๋ฆฌ๋์ ๋ฌธ์ ๋ฑ์ ๊ณ ๋ คํ์ง ์์์ง๋ง ์ด ๊ธฐ์ฌ์ ๋ชฉ์ ์ ๋ ์์๊ฒ ๋์ ์์ค์ ๋ถ์ฐ ์ปดํจํ ์ธ๊ณ๋ฅผ ์๊ฐํ๋ ๊ฒ์ ๋๋ค.
๋ํ Paxos๊ฐ ์ด๋ฌํ ์ข
๋ฅ์ ์ ์ผํ ์๊ณ ๋ฆฌ์ฆ์ด ์๋๋ฉฐ ๋ค๋ฅธ ์๊ณ ๋ฆฌ์ฆ๋ ์๋ค๋ ์ ๋ ์ฃผ๋ชฉํ ๊ฐ์น๊ฐ ์์ต๋๋ค.
์ถ๊ฐ ์ฐ๊ตฌ๋ฅผ ์ํ ์๋ฃ ๋งํฌ
์ด๊ธ ์์ค:
๋ถ์ฐ ํฉ์๋ ์ด๋ป๊ฒ ์๋ํ๋์? , Preethi Kasireddy, Medium ๋ธ๋ก๊ทธ ๊ธฐ์ฌPaxos๊ฐ ๊ฐ๋จํด์ก์ต๋๋ค. ์ง์ง๋ก , Adi Kancherla, Medium ๋ธ๋ก๊ทธ ๊ธฐ์ฌ๋ถ์ฐ๋ ์๊ฐ , ์ํ์ด ์๋ธ๋ผํจ, ๋ธ๋ก๊ทธ๋๊ธฐํ, ๋น๋๊ธฐ ๋ฐ ๋ถ๋ถ ๋๊ธฐํ , Ittai Abraham, ๋ธ๋ก๊ทธ ๊ธฐ์ฌ
๋ ์ฌ๋ฆฌ ๋จํฌํธ ๋ ๋ฒจ:
ํ๋์ ์๋ชป๋ ํ๋ก์ธ์ค๋ก ๋ถ์ฐ๋ ํฉ์๊ฐ ๋ถ๊ฐ๋ฅํจ(FLP ๋ถ๊ฐ๋ฅ) , Fischer, Lynch ๋ฐ Paterson, ์ฐ๊ตฌ ๋ ผ๋ฌธ, 1985์๊ฐ์ ์ํ , ๋ ์ฌ๋ฆฌ ๋จํฌํธ(Leslie Lamport), ์ฐ๊ตฌ ๋ ผ๋ฌธ, 1998๊ฐ๋จํด์ง Paxos , ๋ ์ฌ๋ฆฌ ๋จํฌํธ(Leslie Lamport), ์ฐ๊ตฌ ๋ ผ๋ฌธ, 2001
์ถ์ฒ : habr.com