Docs Menu

๋ฒ”์œ„ ์ง€์ •๋œ ์ƒค๋”ฉ

๋ฒ”์œ„ ๊ธฐ๋ฐ˜ ์ƒค๋”ฉ์—๋Š” ์ƒค๋“œ ํ‚ค ๊ฐ’์— ๋”ฐ๋ผ ๊ฒฐ์ •๋˜๋Š” ์—ฐ์† ๋ฒ”์œ„๋กœ ๋ฐ์ดํ„ฐ๋ฅผ ๋‚˜๋ˆ„๋Š” ์ž‘์—…์ด ํฌํ•จ๋ฉ๋‹ˆ๋‹ค. ์ด ๋ชจ๋ธ์—์„œ 'close' ์ƒค๋“œ ํ‚ค ๊ฐ’์„ ๊ฐ€์ง„ ๋ฌธ์„œ๋Š” ๋™์ผํ•œ ์ฒญํฌ ๋˜๋Š” ์ƒค๋“œ์— ์žˆ์„ ๊ฐ€๋Šฅ์„ฑ์ด ๋†’์Šต๋‹ˆ๋‹ค. ์ด๋ฅผ ํ†ตํ•ด ์—ฐ์† ๋ฒ”์œ„ ๋‚ด์˜ ๋Œ€์ƒ ๋ฌธ์„œ๋ฅผ ์ฝ๋Š” ํšจ์œจ์ ์ธ ์ฟผ๋ฆฌ๊ฐ€ ๊ฐ€๋Šฅํ•ฉ๋‹ˆ๋‹ค. ๊ทธ๋Ÿฌ๋‚˜ ์ƒค๋“œ ํ‚ค ์„ ํƒ์ด ์ž˜๋ชป๋˜๋ฉด ์ฝ๊ธฐ ๋ฐ ์“ฐ๊ธฐ ์„ฑ๋Šฅ์ด ๋ชจ๋‘ ์ €ํ•˜๋  ์ˆ˜ ์žˆ์Šต๋‹ˆ๋‹ค. ์ƒค๋“œ ํ‚ค ์„ ํƒ์„ ์ฐธ์กฐํ•˜์„ธ์š”.

Diagram of the shard key value space segmented into smaller ranges or chunks.

๋ฒ”์œ„ ๊ธฐ๋ฐ˜ ์ƒค๋”ฉ์€ ํ•ด์‹œ ์ƒค๋”ฉ ๋˜๋Š” ๊ตฌ์—ญ์— ํ•„์š”ํ•œ ์˜ต์…˜๊ณผ ๊ฐ™์€ ๋‹ค๋ฅธ ์˜ต์…˜์ด ๊ตฌ์„ฑ๋˜์ง€ ์•Š์€ ๊ฒฝ์šฐ ๊ธฐ๋ณธ ์ƒค๋”ฉ ๋ฐฉ๋ฒ•์ž…๋‹ˆ๋‹ค.

๋ฒ”์œ„ ์ง€์ • ์ƒค๋”ฉ์€ ์ƒค๋“œ ํ‚ค๊ฐ€ ๋‹ค์Œ ํŠน์„ฑ์„ ํ‘œ์‹œํ•  ๋•Œ ๊ฐ€์žฅ ํšจ์œจ์ ์ž…๋‹ˆ๋‹ค.

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

Diagram of good shard key distribution
ํด๋ฆญํ•˜์—ฌ ํ™•๋Œ€

sh.shardCollection() ๋ฉ”์„œ๋“œ๋ฅผ ์‚ฌ์šฉํ•˜์—ฌ ์ปฌ๋ ‰์…˜์˜ ์ „์ฒด ๋„ค์ž„์ŠคํŽ˜์ด์Šค์™€ ์ƒค๋“œ ํ‚ค๋กœ ์‚ฌ์šฉํ•  ๋Œ€์ƒ ์ธ๋ฑ์Šค ๋˜๋Š” ๋ณตํ•ฉ ์ธ๋ฑ์Šค๋ฅผ ์ง€์ •ํ•ฉ๋‹ˆ๋‹ค.

sh.shardCollection( "database.collection", { <shard key> } )

์ค‘์š”

์ฑ„์›Œ์ง„ ์ปฌ๋ ‰์…˜์„ ์ƒค๋”ฉํ•˜๋ฉด ์ฒ˜์Œ์—๋Š” ํ•˜๋‚˜์˜ ์ฒญํฌ๋งŒ ์ƒ์„ฑ๋ฉ๋‹ˆ๋‹ค. ๊ทธ๋Ÿฐ ๋‹ค์Œ ๋ฐธ๋Ÿฐ์„œ๋Š” ํ•„์š”ํ•œ ๊ฒฝ์šฐ ๊ตฌ์„ฑ๋œ ๋ฒ”์œ„ ํฌ๊ธฐ์— ๋”ฐ๋ผ ํ•ด๋‹น ์ฒญํฌ์˜ ๋ฒ”์œ„๋ฅผ ๋งˆ์ด๊ทธ๋ ˆ์ด์…˜ํ•ฉ๋‹ˆ๋‹ค.

๋นˆ ์ปฌ๋ ‰์…˜์„ ์ƒค๋”ฉํ•˜๋Š” ๊ฒฝ์šฐ:

  • ๋น„์–ด ์žˆ๊ฑฐ๋‚˜ ์กด์žฌํ•˜์ง€ ์•Š๋Š” ์ปฌ๋ ‰์…˜์— ๋Œ€ํ•ด ์ง€์ •๋œ ์˜์—ญ ๋ฐ ์˜์—ญ ๋ฒ”์œ„๊ฐ€ ์—†๋Š” ๊ฒฝ์šฐ:

    • ์ƒค๋”ฉ ์ž‘์—…์€ ์ƒค๋“œ ํ‚ค ๊ฐ’์˜ ์ „์ฒด ๋ฒ”์œ„๋ฅผ ํฌ๊ด„ํ•˜๋Š” ๋นˆ ๋‹จ์ผ ์ฒญํฌ๋ฅผ ์ƒ์„ฑํ•ฉ๋‹ˆ๋‹ค.

    • ์ดˆ๊ธฐ ์ฒญํฌ ์ƒ์„ฑ ํ›„, ๋ฐธ๋Ÿฐ์„œ๋Š” ์ดˆ๊ธฐ ์ฒญํฌ๋ฅผ ์ƒค๋“œ ๊ฐ„์— ์ ์ ˆํžˆ ๋งˆ์ด๊ทธ๋ ˆ์ด์…˜ํ•˜๊ณ  ํ–ฅํ›„ ์ฒญํฌ ๋ถ„์‚ฐ์„ ๊ด€๋ฆฌํ•ฉ๋‹ˆ๋‹ค.

  • ๋น„์–ด ์žˆ๊ฑฐ๋‚˜ ์กด์žฌํ•˜์ง€ ์•Š๋Š” ์ปฌ๋ ‰์…˜์— ๋Œ€ํ•ด ๊ตฌ์—ญ ๋ฐ ๊ตฌ์—ญ ๋ฒ”์œ„๊ฐ€ ์ง€์ •๋œ ๊ฒฝ์šฐ:

    • ์ƒค๋”ฉ ์ž‘์—…์€ ์ •์˜๋œ ์˜์—ญ ๋ฒ”์œ„์— ๋Œ€ํ•ด ๋นˆ ์ฒญํฌ๋ฅผ ์ƒ์„ฑํ•˜๊ณ  ์ƒค๋“œ ํ‚ค ๊ฐ’์˜ ์ „์ฒด ๋ฒ”์œ„๋ฅผ ํฌํ•จํ•˜๋Š” ์ถ”๊ฐ€ ์ฒญํฌ๋ฅผ ์ƒ์„ฑํ•˜๊ณ , ์˜์—ญ ๋ฒ”์œ„์— ๊ธฐ๋ฐ˜ํ•˜์—ฌ ์ดˆ๊ธฐ ์ฒญํฌ ๋ถ„๋ฐฐ๋ฅผ ์ˆ˜ํ–‰ํ•ฉ๋‹ˆ๋‹ค. ์ด๋Ÿฌํ•œ ์ฒญํฌ์˜ ์ดˆ๊ธฐ ์ƒ์„ฑ ๋ฐ ๋ฐฐํฌ๋Š” ์˜์—ญ๋ณ„ ์ƒค๋”ฉ์˜ ๋น ๋ฅธ ์„ค์ •์„ ๊ฐ€๋Šฅํ•˜๊ฒŒ ํ•ฉ๋‹ˆ๋‹ค.

    • ์ดˆ๊ธฐ ๋ถ„๋ฐฐ ์ดํ›„์—๋Š” ๋ฐธ๋Ÿฐ์„œ๊ฐ€ ์•ž์œผ๋กœ์˜ ์ฒญํฌ ๋ถ„๋ฐฐ๋ฅผ ๊ด€๋ฆฌํ•ฉ๋‹ˆ๋‹ค.

ํŒ

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

์ƒค๋”ฉ๋œ ํด๋Ÿฌ์Šคํ„ฐ ๋ฅผ ๋ฐฐํฌ ํ•˜๊ณ  ๋ฒ”์œ„ ์ง€์ • ์ง€์ • ์ƒค๋”ฉ ์„ ๊ตฌํ˜„ ํ•˜๋Š” ๋ฐฉ๋ฒ•์„ ํ•™์Šต ๋ณด๋ ค๋ฉด ์ž์ฒด ๊ด€๋ฆฌํ˜• ์ƒค๋“œ ํด๋Ÿฌ์Šคํ„ฐ ๋ฐฐํฌ๋ฅผ ์ฐธ์กฐํ•˜์„ธ์š”.