NoSQL, MongoDB

์˜ค๋Š˜๋„ ์‚ฝ์งˆ์ค‘ยท2021๋…„ 11์›” 19์ผ
0

[๋ฐ์ดํ„ฐ๋ฒ ์ด์Šค]

๋ชฉ๋ก ๋ณด๊ธฐ
4/6

๐Ÿ‘Š NoSQL Database

NoSQL(์›๋ž˜ ์˜๋ฏธ: non SQL ๋˜๋Š” non relational) ๋ฐ์ดํ„ฐ๋ฒ ์ด์Šค๋Š” ์ „ํ†ต์ ์ธ ๊ด€๊ณ„ํ˜• ๋ฐ์ดํ„ฐ๋ฒ ์ด์Šค๋ณด๋‹ค ๋œ ์ œํ•œ์ ์ธ ์ผ๊ด€์„ฑ ๋ชจ๋ธ์„ ์ด์šฉํ•˜๋Š” ๋ฐ์ดํ„ฐ์˜ ์ €์žฅ ๋ฐ ๊ฒ€์ƒ‰์„ ์œ„ํ•œ ๋งค์ปค๋‹ˆ์ฆ˜์„ ์ œ๊ณตํ•œ๋‹ค.
(๋ฐ์ดํ„ฐ๋ฒ ์ด์Šค์—์„œ๋Š” ๋ฐ์ดํ„ฐ๋ฅผ ํ–‰๊ณผ ์—ด์ด ์•„๋‹Œ , ์ข€ ๋” ๋„“์€ ์˜๋ฏธ์˜ ์ฒด๊ณ„์ ์ธ ๋ฐฉ์‹์œผ๋กœ ์ €์žฅ์„ ํ•œ๋‹ค.)
NoSQL ๋ฐ์ดํ„ฐ๋ฒ ์ด์Šค๋Š” ๋น…๋ฐ์ดํ„ฐ์™€ ์‹ค์‹œ๊ฐ„ ์›น ์• ํ”Œ๋ฆฌ์ผ€์ด์…˜์˜ ์ƒ์—…์  ์ด์šฉ์— ๋„๋ฆฌ ์“ฐ์ด๊ธฐ๋„ ํ•œ๋‹ค.

๐Ÿ‘Š MongoDB

MongoDB๋Š” ๋Œ€ํ‘œ์ ์ธ NoSQL ๋„ํ๋จผํŠธ ๋ฐ์ดํ„ฐ๋ฒ ์ด์Šค์ด๋‹ค. ๋„ํ๋จผํŠธ ๋ฐ์ดํ„ฐ๋ฒ ์ด์Šค๋Š” ๋ฐ์ดํ„ฐ ํ…Œ์ด๋ธ”์ด ์•„๋‹Œ ๋ฌธ์„œ์ฒ˜๋Ÿผ ์ €์žฅํ•˜๋Š” ๋ฐ์ดํ„ฐ๋ฒ ์ด์Šค๋ฅผ ์˜๋ฏธํ•œ๋‹ค. ์ผ๋ฐ˜์ ์œผ๋กœ ๋„ํ๋จผํŠธ ๋ฐ์ดํ„ฐ๋ฒ ์ด์Šค์—์„œ JSON ์œ ์‚ฌ ํ˜•์‹์œผ๋กœ ๋ฐ์ดํ„ฐ๋ฅผ ๋ฌธ์„œํ™” ํ•œ๋‹ค. ๊ฐ๊ฐ์˜ ๋„ํ๋จผํŠธ๋Š” ๋ฐ์ดํ„ฐ๋ฅผ ํ•„๋“œ-๊ฐ’์˜ ํ˜•ํƒœ๋กœ ๊ฐ€์ง€๊ณ ์žˆ๊ณ , ์ปฌ๋ ‰์…˜์ด๋ผ๊ณ  ํ•˜๋Š” ๊ทธ๋ฃน์œผ๋กœ ๋ฌถ์–ด์„œ ๊ด€๋ฆฌ๋ฅผ ํ•œ๋‹ค.
MongoDB๋ฐ์ดํ„ฐ๋ฒ ์ด์Šค๋Š” NoSQL๋„ํ๋จผํŠธ ๋ฐ์ดํ„ฐ๋ฒ ์ด์Šค์ด๋‹ค.

๐Ÿ‘Š NoSQL ๊ธฐ๋ฐ˜์˜ ๋น„๊ด€๊ณ„ํ˜• ๋ฐ์ดํ„ฐ๋ฒ ์ด์Šค๋ฅผ ์‚ฌ์šฉํ•˜๋Š” ๊ฒฝ์šฐ

  1. ๋น„๊ตฌ์กฐ์ ์ธ ๋Œ€์šฉ๋Ÿ‰์˜ ๋ฐ์ดํ„ฐ๋ฅผ ์ €์žฅํ•˜๋Š” ๊ฒฝ์šฐ (SQL๋ฐ์ดํ„ฐ๋ฒ ์ด์Šค๋ณด๋‹ค ์ž์œ ๋กœ์šด ํ˜•ํƒœ๋กœ ๋ฐ์ดํ„ฐ๋ฅผ ์ €์žฅํ•  ์ˆ˜ ์žˆ๊ธฐ๋•Œ๋ฌธ์— ํ•„์š”์— ๋”ฐ๋ผ์„œ ์ƒˆ๋กœ์šด ๋ฐ์ดํ„ฐ ์œ ํ˜•์„ ์ถ”๊ฐ€ํ•  ์ˆ˜ ์žˆ๋‹ค., ์ •ํ˜•ํ™”๋˜์ง€ ์•Š์€ ๋งŽ์€ ์–‘์˜ ๋ฐ์ดํ„ฐ๊ฐ€ ํ•„์š”ํ•œ ๊ฒฝ์šฐ NoSQL์ด ํšจ์œจ์ ์ผ ์ˆ˜ ์žˆ๋‹ค.)
  2. ํด๋ผ์šฐ๋“œ ์ปดํ“จํŒ… ๋ฐ ์ €์žฅ ๊ณต๊ฐ„์„ ์ตœ๋Œ€ํ•œ ํ™œ์šฉํ•˜๋Š” ๊ฒฝ์šฐ(์ˆ˜ํ‰์  ํ™•์žฅ,์ด๋ก ์ƒ ๋ฌดํ•œ๋Œ€๋กœ ์„œ๋ฒ„๋ฅผ ๊ณ„์† ๋ถ„์‚ฐ์‹œ์ผœ DB๋ฅผ ์ฆ์„ค ์‹œํ‚ฌ ์ˆ˜ ์žˆ๋‹ค. <-> sql-์ˆ˜์ง์  ํ™•์žฅ)
    NoSQL
  3. ๋น ๋ฅด๊ฒŒ ์„œ๋น„์Šค๋ฅผ ๊ตฌ์ถ•ํ•˜๊ณ  ๋ฐ์ดํ„ฐ ๊ตฌ์กฐ๋ฅผ ์ž์ฃผ ์—…๋ฐ์ดํŠธ ํ•˜๋Š” ๊ฒฝ์šฐ
    (์Šคํ‚ค๋งˆ๊ฐ€ ํ•„์š”ํ•œ SQL๊ณผ ๋‹ฌ๋ฆฌ NoSQL์€ ์Šคํ‚ค๋งˆ๋ฅผ ๋ฏธ๋ฆฌ ์ค€๋น„ํ•  ํ•„์š” x)

๐Ÿ‘Š Atlas Cloud (์•„ํ‹€๋ผ์Šค ํด๋ผ์šฐ๋“œ)

MongoDB์—์„œ๋Š” ์•„ํ‹€๋ผ์Šค(Atlas)๋กœ ํด๋ผ์šฐ๋“œ์— ๋ฐ์ดํ„ฐ๋ฒ ์ด์Šค๋ฅผ ์„ค์ •ํ•œ๋‹ค.
์•„ํ‹€๋ผ์Šค๋Š” GUI์™€ CLI๋กœ ๋ฐ์ดํ„ฐ๋ฅผ ์‹œ๊ฐํ™”, ๋ถ„์„, ๋‚ด๋ณด๋‚ด๊ธฐ, ๊ทธ๋ฆฌ๊ณ  ๋นŒ๋“œํ•˜๋Š”๋ฐ์— ์‚ฌ์šฉ ํ•  ์ˆ˜ ์žˆ๋‹ค. ์•„ํ‹€๋ผ์Šค ์‚ฌ์šฉ์ž๋Š” ํด๋Ÿฌ์Šคํ„ฐ์— ๋ฐฐํฌ ํ•  ์ˆ˜ ์žˆ์œผ๋ฉฐ, ํด๋Ÿฌ์Šคํ„ฐ๋Š” ๊ทธ๋ฃนํ™”๋œ ์„œ๋ฒ„์— ๋ฐ์ดํ„ฐ๋ฅผ ์ €์žฅํ•œ๋‹ค.

๐ŸŽŸ ํด๋Ÿฌ์Šคํ„ฐ(Clusters) : ์ธ์Šคํ„ด์Šค๋“ค์˜ ๋ชจ์ž„์„ ๋œปํ•˜๊ณ  ํ•˜๋‚˜์˜ ์‹œ์Šคํ…œ์ฒ˜๋Ÿผ ์ž‘๋™ํ•œ๋‹ค.

๐ŸŽŸ ๋ ˆํ”Œ๋ฆฌ์นด ์„ธํŠธ(Replica set) : ๋ ˆํ”Œ๋ฆฌ์นด ์„ธํŠธ๋Š” ๋ฐ์ดํ„ฐ์˜ ์‚ฌ๋ณธ์„ ์ €์žฅํ•˜๋Š” ์ธ์Šคํ„ด์Šค์˜ ๋ชจ์Œ์ด๋‹ค. ์ธ์Šคํ„ด์Šค ์ค‘ ํ•˜๋‚˜์— ๋ฌธ์ œ๊ฐ€ ๋ฐœ์ƒํ•˜๋”๋ผ๋„, ๋ฐ์ดํ„ฐ๋Š” ๊ทธ๋Œ€๋กœ ์œ ์ง€๋˜๋ฉฐ, ๋‚˜๋จธ์ง€ ๋ ˆํ”Œ๋ฆฌ์นด ์„ธํŠธ์˜ ์ธ์Šคํ„ด์Šค์— ์ €์žฅ๋œ ๋ฐ์ดํ„ฐ๋กœ ์ž‘์—… ๊ฐ€๋Šฅํ•˜๋‹ค.

๐ŸŽŸ ๋‹จ์ผ ํด๋Ÿฌ์Šคํ„ฐ (Single cluster) : ํด๋Ÿฌ์Šคํ„ฐ๋ฅผ ์ด์šฉํ•˜์—ฌ ๋ฐฐํฌํ•  ๊ฒฝ์šฐ ์ž๋™์œผ๋กœ ๋ ˆํ”Œ๋ฆฌ์นด ์„ธํŠธ๋ฅผ ์ƒ์„ฑํ•œ๋‹ค.

๐ŸŽŸ ์ธ์Šคํ„ด์Šค : ๋กœ์ปฌ ๋˜๋Š” ํด๋ผ์šฐ๋“œ์—์„œ ํŠน์ • ์†Œํ”„ํŠธ์›จ์–ด๋ฅผ ์‹คํ–‰ํ•˜๋Š” ๋‹จ์ผ ๋จธ์‹ , MongoDB์—์„œ๋Š” ๋ฐ์ดํ„ฐ๋ฒ ์ด์Šค์ด๋‹ค.

์ฐธ๊ณ ๋ฌธํ—Œ
https://ko.wikipedia.org/wiki/NoSQL
์ฝ”๋“œ์Šคํ…Œ์ด์ธ 

profile
์˜๋ฏธ์—†๋Š” ์‚ฝ์งˆ์€ ์—†๋‹ค1

0๊ฐœ์˜ ๋Œ“๊ธ€