Docs Menu

์ƒค๋”ฉ๋œ ํด๋Ÿฌ์Šคํ„ฐ ๊ตฌ์„ฑ ์š”์†Œ

์ด ํŽ˜์ด์ง€์˜ ๋‚ด์šฉ

MongoDB ์ƒค๋”ฉ๋œ ํด๋Ÿฌ์Šคํ„ฐ๋Š” ๋‹ค์Œ ์ปดํฌ๋„ŒํŠธ๋กœ ๊ตฌ์„ฑ๋ฉ๋‹ˆ๋‹ค.

  • ์ƒค๋“œ: ๊ฐ ์ƒค๋“œ์—๋Š” ์ƒค๋“œ ๋ฐ์ดํ„ฐ์˜ ํ•˜์œ„ ์ง‘ํ•ฉ์ด ํฌํ•จ๋ฉ๋‹ˆ๋‹ค. ๊ฐ ์ƒค๋“œ๋Š” ๋ณต์ œ๋ณธ ์„ธํŠธ๋กœ ๋ฐฐํฌ๋˜์–ด์•ผ ํ•ฉ๋‹ˆ๋‹ค.

  • mongos: mongos๋Š” ํด๋ผ์ด์–ธํŠธ ์• ํ”Œ๋ฆฌ์ผ€์ด์…˜๊ณผ ์ƒค๋”ฉ๋œ ํด๋Ÿฌ์Šคํ„ฐ ๊ฐ„์˜ ์ธํ„ฐํŽ˜์ด์Šค๋ฅผ ์ œ๊ณตํ•˜๋Š” ์ฟผ๋ฆฌ ๋ผ์šฐํ„ฐ ์—ญํ• ์„ ํ•ฉ๋‹ˆ๋‹ค.

  • config ์„œ๋ฒ„: config ์„œ๋ฒ„๋Š” ํด๋Ÿฌ์Šคํ„ฐ์— ๋Œ€ํ•œ ๋ฉ”ํƒ€๋ฐ์ดํ„ฐ์™€ ๊ตฌ์„ฑ ์„ค์ •์„ ์ €์žฅํ•ฉ๋‹ˆ๋‹ค. config ์„œ๋ฒ„๋Š” ๋ณต์ œ๋ณธ ์„ธํŠธ(CSRS)๋กœ ๋ฐฐํฌ๋˜์–ด์•ผ ํ•ฉ๋‹ˆ๋‹ค.

ํ”„๋กœ๋•์…˜ ํด๋Ÿฌ์Šคํ„ฐ์—์„œ๋Š” ๋ฐ์ดํ„ฐ๊ฐ€ ์ค‘๋ณต๋˜๊ณ  ์‹œ์Šคํ…œ์˜ ๊ฐ€์šฉ์„ฑ์ด ๋†’์€์ง€ ํ™•์ธํ•˜์‹ญ์‹œ์˜ค. ํ”„๋กœ๋•์…˜ ์ƒค๋”ฉ ํด๋Ÿฌ์Šคํ„ฐ ๋ฐฐํฌ์˜ ๊ฒฝ์šฐ ๋‹ค์Œ ์‚ฌํ•ญ์„ ๊ณ ๋ คํ•˜์„ธ์š”.

๊ฐ€๋Šฅํ•œ ๊ฒฝ์šฐ, ๊ฐ ๋ณต์ œ๋ณธ ์ง‘ํ•ฉ์˜ ํ•œ ๋ฉค๋ฒ„๋ฅผ ์žฌํ•ด ๋ณต๊ตฌ ์œ„์น˜์— ์ ํ•ฉํ•œ ์‚ฌ์ดํŠธ์— ๋ฐฐํฌํ•˜๋Š” ๊ฒƒ์ด ์ข‹์Šต๋‹ˆ๋‹ค.

์ฐธ๊ณ 

๋‘ ๊ฐœ์˜ ๋ฐ์ดํ„ฐ ์„ผํ„ฐ์— ๋ณต์ œ๋ณธ ์„ธํŠธ ๊ตฌ์„ฑ์›์„ ๋ถ„์‚ฐํ•˜๋ฉด ๋‹จ์ผ ๋ฐ์ดํ„ฐ ์„ผํ„ฐ์— ๋น„ํ•ด ์ด์ ์ด ์žˆ์Šต๋‹ˆ๋‹ค. ๋‘ ๊ฐœ์˜ ๋ฐ์ดํ„ฐ ์„ผํ„ฐ๋กœ ๋ถ„์‚ฐ๋œ ๊ฒฝ์šฐ,

  • ๋ฐ์ดํ„ฐ ์„ผํ„ฐ ์ค‘ ํ•˜๋‚˜๊ฐ€ ๋‹ค์šด๋˜๋”๋ผ๋„ ๋‹จ์ผ ๋ฐ์ดํ„ฐ ์„ผํ„ฐ ๋ฐฐํฌํŒ๊ณผ ๋‹ฌ๋ฆฌ ๋ฐ์ดํ„ฐ๋ฅผ ์ฝ์„ ์ˆ˜ ์žˆ์Šต๋‹ˆ๋‹ค.

  • ์†Œ์ˆ˜์˜ ๊ตฌ์„ฑ์›์ด ์žˆ๋Š” ๋ฐ์ดํ„ฐ ์„ผํ„ฐ๊ฐ€ ๋‹ค์šด๋˜๋”๋ผ๋„ ๋ณต์ œ๋ณธ ์„ธํŠธ๋Š” ์ฝ๊ธฐ ์ž‘์—…๋ฟ๋งŒ ์•„๋‹ˆ๋ผ ์“ฐ๊ธฐ ์ž‘์—…๋„ ๊ณ„์† ์ˆ˜ํ–‰ํ•  ์ˆ˜ ์žˆ์Šต๋‹ˆ๋‹ค.

  • ๊ทธ๋Ÿฌ๋‚˜ ๋Œ€๋‹ค์ˆ˜์˜ ๊ตฌ์„ฑ์›์ด ์žˆ๋Š” ๋ฐ์ดํ„ฐ ์„ผํ„ฐ๊ฐ€ ๋‹ค์šด๋˜๋ฉด ๋ณต์ œ๋ณธ ์„ธํŠธ๋Š” ์ฝ๊ธฐ ์ „์šฉ์ด ๋ฉ๋‹ˆ๋‹ค.

๊ฐ€๋Šฅํ•˜๋‹ค๋ฉด ์ตœ์†Œ 3๊ฐœ ์ด์ƒ์˜ ๋ฐ์ดํ„ฐ ์„ผํ„ฐ์— ๊ตฌ์„ฑ์›์„ ๋ฐฐํฌํ•˜์„ธ์š”. ๊ตฌ์„ฑ ์„œ๋ฒ„ ๋ณต์ œ๋ณธ ์„ธํŠธ(CSRS)์˜ ๊ฒฝ์šฐ ๊ฐ€์žฅ ์ข‹์€ ๋ฐฉ๋ฒ•์€ 3๊ฐœ(๋˜๋Š” ๊ตฌ์„ฑ์› ์ˆ˜์— ๋”ฐ๋ผ ๊ทธ ์ด์ƒ) ์„ผํ„ฐ์— ๋ฐฐํฌํ•˜๋Š” ๊ฒƒ์ž…๋‹ˆ๋‹ค. ์„ธ ๋ฒˆ์งธ ๋ฐ์ดํ„ฐ ์„ผํ„ฐ์˜ ๋น„์šฉ์ด ๋ถ€๋‹ด์Šค๋Ÿฌ์šด ๊ฒฝ์šฐ, ํšŒ์‚ฌ ์ •์ฑ…์ด ํ—ˆ์šฉํ•˜๋Š” ๊ฒฝ์šฐ ๋ฐ์ดํ„ฐ ๋ณด์œ  ๋ฉค๋ฒ„๋ฅผ ๋‘ ๋ฐ์ดํ„ฐ ์„ผํ„ฐ์— ๊ท ๋“ฑํ•˜๊ฒŒ ๋ถ„์‚ฐํ•˜๊ณ  ๋‚˜๋จธ์ง€ ๋ฉค๋ฒ„๋Š” ํด๋ผ์šฐ๋“œ์— ์ €์žฅํ•˜๋Š” ๊ฒƒ๋„ ํ•œ ๊ฐ€์ง€ ๋ฐฉ๋ฒ•์ž…๋‹ˆ๋‹ค.

์ƒค๋”ฉ์€ ์ƒค๋”ฉ๋œ ๋ฐ์ดํ„ฐ๋ฅผ ๋ฐฐํฌํ•˜๊ธฐ ์œ„ํ•ด ์ตœ์†Œ 2๊ฐœ์˜ ์ƒค๋“œ๊ฐ€ ํ•„์š”ํ•ฉ๋‹ˆ๋‹ค. ๊ฐ€๊นŒ์šด ๋ฏธ๋ž˜์— ์ƒค๋”ฉ์„ ํ™œ์„ฑํ™”ํ•  ๊ณ„ํš์ด์ง€๋งŒ ๋ฐฐํฌ ์‹œ์—๋Š” ํ•„์š”ํ•˜์ง€ ์•Š์€ ๊ฒฝ์šฐ ๋‹จ์ผ ์ƒค๋“œ๋กœ ์ƒค๋”ฉ๋œ ํด๋Ÿฌ์Šคํ„ฐ๊ฐ€ ์œ ์šฉํ•  ์ˆ˜ ์žˆ์Šต๋‹ˆ๋‹ค.

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

  • mongos ์ธ์Šคํ„ด์Šค๊ฐ€ ์ด๋ฏธ ์‹คํ–‰ ์ค‘์ธ ๋™์ผํ•œ ํ•˜๋“œ์›จ์–ด์— mongos ์ธ์Šคํ„ด์Šค๋ฅผ ์ถ”๊ฐ€.

  • ์• ํ”Œ๋ฆฌ์ผ€์ด์…˜ ์ˆ˜์ค€์—์„œ mongos ๋ผ์šฐํ„ฐ๋ฅผ ํฌํ•จ.

mongos ๋ผ์šฐํ„ฐ๋Š” ๊ตฌ์„ฑ ์„œ๋ฒ„์™€ ์ž์ฃผ ํ†ต์‹ ํ•ฉ๋‹ˆ๋‹ค. ๋ผ์šฐํ„ฐ ์ˆ˜๋ฅผ ๋Š˜๋ฆฌ๋ฉด ์„ฑ๋Šฅ์ด ์ €ํ•˜๋  ์ˆ˜ ์žˆ์Šต๋‹ˆ๋‹ค. ์„ฑ๋Šฅ์ด ์ €ํ•˜๋˜๋ฉด ๋ผ์šฐํ„ฐ ์ˆ˜๋ฅผ ์ค„์ด์„ธ์š”. ๋ฐฐํฌ์—๋Š” 30๊ฐœ ์ด์ƒ์˜ mongos ๋ผ์šฐํ„ฐ๊ฐ€ ์žˆ์–ด์„œ๋Š” ์•ˆ๋ฉ๋‹ˆ๋‹ค.

๋‹ค์Œ ๋‹ค์ด์–ด๊ทธ๋žจ์€ ํ”„๋กœ๋•์…˜์—์„œ ์‚ฌ์šฉ๋˜๋Š” ์ผ๋ฐ˜์ ์ธ ์ƒค๋”ฉ๋œ ํด๋Ÿฌ์Šคํ„ฐ ์•„ํ‚คํ…์ฒ˜๋ฅผ ๋ณด์—ฌ์ค๋‹ˆ๋‹ค.

Diagram that shows a production-level sharded cluster
containing multiple shards and mongos routers.

ํ…Œ์ŠคํŠธ ๋ฐ ๊ฐœ๋ฐœ์„ ์œ„ํ•ด ์ตœ์†Œํ•œ์˜ ๊ตฌ์„ฑ ์š”์†Œ๋กœ ์ƒค๋”ฉ๋œ ํด๋Ÿฌ์Šคํ„ฐ๋ฅผ ๋ฐฐํฌํ•  ์ˆ˜ ์žˆ์Šต๋‹ˆ๋‹ค. ์ด๋Ÿฌํ•œ ๋น„ํ”„๋กœ๋•์…˜ ํด๋Ÿฌ์Šคํ„ฐ์—๋Š” ๋‹ค์Œ๊ณผ ๊ฐ™์€ ๊ตฌ์„ฑ ์š”์†Œ๊ฐ€ ์žˆ์Šต๋‹ˆ๋‹ค.

๋‹ค์Œ ๋‹ค์ด์–ด๊ทธ๋žจ์€ ๊ฐœ๋ฐœ์šฉ์œผ๋กœ๋งŒ ์‚ฌ์šฉ๋˜๋Š” ์ƒค๋”ฉ๋œ ํด๋Ÿฌ์Šคํ„ฐ ์•„ํ‚คํ…์ณ๋ฅผ ๋ณด์—ฌ์ค๋‹ˆ๋‹ค.

Diagram that shows a development sharded cluster
containing a single shard and mongos router.

๊ฒฝ๊ณ 

ํ…Œ์ŠคํŠธ ๋ฐ ๊ฐœ๋ฐœ์šฉ์œผ๋กœ๋งŒ ํ…Œ์ŠคํŠธ ํด๋Ÿฌ์Šคํ„ฐ ์•„ํ‚คํ…์ฒ˜๋ฅผ ์‚ฌ์šฉํ•˜์‹ญ์‹œ์˜ค.

๋‹ค์Œ๋„ ์ฐธ์กฐํ•˜์„ธ์š”.

์ด ํŽ˜์ด์ง€์˜ ๋‚ด์šฉ