๊ฐœ๋ฐœ๊ณต๋ถ€/CS๐Ÿ’ป

CS ๊ฐ•์˜ 5. DB ๊ตฌ์กฐ์™€ ์œ ํ˜•

wannaDevelopIt 2023. 10. 25. 20:23
728x90

์ถœ์ฒ˜ : ๋‚ด์ผ๋ฐฐ์›€์บ ํ”„

 

0. ์ปดํ“จํ„ฐ์™€ ๋ฐ์ดํ„ฐ๋ฒ ์ด์Šค

์ปดํ“จํ„ฐ์˜ ์—ฌ๋Ÿฌ ๊ตฌ์กฐ ์ค‘, ๋ณด์กฐ ๊ธฐ์–ต์žฅ์น˜๋Š” ์˜๊ตฌ ์ €์žฅ์†Œ๋กœ์จ ํŒŒ์ผ๊ณผ ๋ฐ์ดํ„ฐ๋ฅผ ์ €์žฅํ•  ์ˆ˜ ์žˆ๋‹ค. ํŒŒ์ผ์€ ํŒŒ์ผ์‹œ์Šคํ…œ์—, ๋ฐ์ดํ„ฐ๋Š” ๋ฐ์ดํ„ฐ๋ฒ ์ด์Šค์— ์ €์žฅ๋œ๋‹ค

0 - 1. ํŒŒ์ผ์‹œ์Šคํ…œ vs ๋ฐ์ดํ„ฐ๋ฒ ์ด์Šค

ex) ์นด์นด์˜คํ†ก ์‹คํ–‰ ํŒŒ์ผ์€ ํŒŒ์ผ์‹œ์Šคํ…œ์— ์ €์žฅ๋˜์–ด ์žˆ๊ณ , ์นดํ†ก์˜ ๋ฉ”์„ธ์ง€ ๋ชฉ๋ก ๋“ฑ์˜ ๋ฐ์ดํ„ฐ๋Š” DB์— ์ €์žฅ๋œ๋‹ค

1) ํŒŒ์ผ์‹œ์Šคํ…œ

- ๊ฐœ๋ณ„ ํŒŒ์ผ์„ ๋ณด๊ด€ํ•˜๊ณ  ์ •๋ฆฌํ•˜๋Š” ์‹œ์Šคํ…œ์œผ๋กœ, ์—ฌ๋Ÿฌ ํด๋”์— ํŒŒ์ผ์ด ์ €์žฅ๋˜๊ณ  ์‚ฌ์šฉ์ž๋Š” ํŒŒ์ผ์„ ์ง์ ‘ ๊ด€๋ฆฌํ•ด์•ผ ํ•œ๋‹ค

~ ํŒŒ์ผ ์ •๋ฆฌ, ์ฒ˜๋ฆฌ ๋“ฑ์— ์‚ฌ์šฉ์ž์˜ ์ž์›์ด ๋งŽ์ด ์‚ฌ์šฉ๋œ๋‹ค

2) ๋ฐ์ดํ„ฐ๋ฒ ์ด์Šค

- ๋ฐ์ดํ„ฐ๋ฅผ ๊ตฌ์กฐํ™”ํ•˜๊ณ  ์—ฐ๊ฒฐํ•˜๋Š” ๊ธฐ๋Šฅ์„ ์ œ๊ณตํ•œ๋‹ค

- ํ…Œ์ด๋ธ”, ๋ ˆ์ฝ”๋“œ, ํ•„๋“œ ๋“ฑ์˜ ๊ฐœ๋…์„ ์‚ฌ์šฉํ•ด ๋ฐ์ดํ„ฐ๋ฅผ ๊ตฌ์„ฑํ•˜๊ณ , ๋ฐ์ดํ„ฐ๋ฅผ ํšจ์œจ์ ์œผ๋กœ ๊ด€๋ฆฌํ•˜๊ณ  ๊ฒ€์ƒ‰ํ•  ์ˆ˜ ์žˆ๋‹ค

- ๋ฐ์ดํ„ฐ์˜ ์ผ๊ด€์„ฑ, ๋ฌด๊ฒฐ์„ฑ, ์•ˆ์ „์„ฑ์„ ์œ ์ง€ํ•˜๋ฉฐ ๋ณต์žกํ•œ ๋ฐ์ดํ„ฐ ์กฐ์ž‘์„ ๊ฐ„ํŽธํ•˜๊ฒŒ ์ˆ˜ํ–‰ํ•  ์ˆ˜ ์žˆ๋‹ค

1. ๋ฐ์ดํ„ฐ๋ฒ ์ด์Šค

1 - 1. ๋ฐ์ดํ„ฐ๋ฒ ์ด์Šค ๊ฐœ์š”

์ •๋ณด vs ๋ฐ์ดํ„ฐ

์ •๋ณด : ์—ฌ๋Ÿฌ ์ข…๋ฅ˜์˜ ๋ฌธ์„œ๋กœ ํฉ์–ด์ ธ์žˆ์–ด ์กฐํ•ฉํ•˜๊ธฐ ์–ด๋ ค์šด ๋‹จ์œ„ ~ ํŒŒ์ผ์‹œ์Šคํ…œ : ์นด์นด์˜คํ†ก์„ ์‹คํ–‰ํ•  ์ˆ˜ ์žˆ๋Š” ์ •๋ณด

๋ฐ์ดํ„ฐ : ์ •๋ณด๋ฅผ ์ฒด๊ณ„์ ์œผ๋กœ ๋ถ„๋ฅ˜ํ•ด ์กฐํ•ฉํ•  ์ˆ˜ ์žˆ๋Š” ๋‹จ์œ„ ~ ๋ฐ์ดํ„ฐ๋ฒ ์ด์Šค : ์นด์นด์˜คํ†ก์˜ ๋ฉ”์„ธ์ง€๋ฅผ ์ฑ„ํŒ…๋ฐฉ์— ์ถœ๋ ฅํ•  ์ˆ˜ ์žˆ๋Š” ๋ฐ์ดํ„ฐ

 

๋ฐ์ดํ„ฐ๋ฒ ์ด์Šค : ์กฐ์ง์ฒด์˜ ์šด์˜ ๋ฐ์ดํ„ฐ๋“ค์ด ํ†ตํ•ฉ๋œ ๋ฐ์ดํ„ฐ๋ฒ ์ด์Šค์˜ ๊ตฌ์กฐ๋Š” ์–ด๋–ค ๋ฐ์ดํ„ฐ ๋ชจ๋ธ์„ ์‚ฌ์šฉํ•˜๋Š”์ง€์— ๋”ฐ๋ผ ๋‹ค๋ฅด๋‹ค

 

ํŠน์ง•

- ๋ฐ์ดํ„ฐ์˜ ๋Œ€๊ทœ๋ชจ ์ €์žฅ์†Œ๋กœ์„œ, ์—ฌ๋Ÿฌ ์‚ฌ์šฉ์ž์— ์˜ํ•ด ๋™์‹œ ์‚ฌ์šฉ

- ๋ชจ๋“  ๋ฐ์ดํ„ฐ๊ฐ€ ์ค‘๋ณต์„ ์ตœ์†Œํ™”ํ•˜๋ฉฐ ํ†ตํ•ฉ

- ๋ฐ์ดํ„ฐ๋ฒ ์ด์Šค๋Š” ์šด์˜ ๋ฐ์ดํ„ฐ๋ฟ ์•„๋‹ˆ๋ผ ๊ทธ ๋ฐ์ดํ„ฐ์— ๊ด€ํ•œ ์„ค๋ช…๊นŒ์ง€ ํฌํ•จ ~ ๋ฐ์ดํ„ฐ๋ฒ ์ด์Šค ์Šคํ‚ค๋งˆ ๋˜๋Š” ๋ฉ”ํƒ€๋ฐ์ดํ„ฐ

- ํ”„๋กœ๊ทธ๋žจ ๋ฉ”๋ชจ๋ฆฌ๊ฐ€ ์•„๋‹Œ ๊ฐœ๋ณ„ ์ €์žฅ๊ณต๊ฐ„์— ์ €์žฅ๋˜๊ธฐ ๋•Œ๋ฌธ์— ํ”„๋กœ๊ทธ๋žจ ๊ณผ ๋ฐ์ดํ„ฐ ๊ฐ„ ๋…๋ฆฝ์„ฑ ์ œ๊ณต

- ํšจ์œจ์ ์œผ๋กœ ์ ‘๊ทผ์ด ๊ฐ€๋Šฅํ•˜๊ณ  ์งˆ์˜(์ฟผ๋ฆฌ)๋ฅผ ํ•  ์ˆ˜ ์žˆ๋‹ค

- ๋ฐ์ดํ„ฐ๋ฒ ์ด์Šค ๊ด€๋ฆฌ ์‹œ์Šคํ…œ(DBMS) : ๋ฐ์ดํ„ฐ๋ฒ ์ด์Šค๋ฅผ ์ •์˜ํ•˜๊ณ , ์งˆ์˜์–ด๋ฅผ ์ง€์›ํ•˜๊ณ , ๋ฆฌํฌํŠธ๋ฅผ ์ƒ์„ฑํ•˜๋Š” ๋“ฑ ์ž‘์—…์„ ์ˆ˜ํ–‰ํ•˜๋Š” ์†Œํ”„ํŠธ์›จ์–ด

1 - 2. ๋ฐ์ดํ„ฐ๋ฒ ์ด์Šค ์‹œ์Šคํ…œ ๊ฐœ์š”

๋ฐ์ดํ„ฐ๋ฒ ์ด์Šค ์Šคํ‚ค๋งˆ

- ์ „์ฒด์ ์ธ ๋ฐ์ดํ„ฐ๋ฒ ์ด์Šค ๊ตฌ์กฐ๋ฅผ ๋œปํ•˜๋ฉฐ ์ž์ฃผ ๋ณ€๊ฒฝ๋˜์ง€ ์•Š์Œ

- ๋ฐ์ดํ„ฐ๋ฒ ์ด์Šค์˜ ๋ชจ๋“  ๊ฐ€๋Šฅํ•œ ์ƒํƒœ๋ฅผ ๋ฏธ๋ฆฌ ์ •์˜

ex) ์‚ฌ๋žŒ ๋ฐ์ดํ„ฐ๋Š” ์ด๋ฆ„, ํ‚ค, ๋ชธ๋ฌด๊ฒŒ, MBTI ํ•„๋“œ๋ฅผ ๊ฐ€์ง„๋‹ค

 

๋ฐ์ดํ„ฐ๋ฒ ์ด์Šค ์ƒํƒœ

- ํŠน์ • ์‹œ์ ์˜ ๋ฐ์ดํ„ฐ๋ฒ ์ด์Šค์˜ ๋‚ด์šฉ์„ ์˜๋ฏธํ•˜๋ฉฐ, ์‹œ๊ฐ„์ด ์ง€๋‚จ์— ๋”ฐ๋ผ ๊ณ„์†ํ•ด์„œ ๋ฐ”๋€œ

- ๋ฐ์ดํ„ฐ๋ฒ ์ด์Šค์— ์ˆ˜์ •์ด ์ผ์–ด๋‚  ๋•Œ๋งˆ๋‹ค ์ƒํƒœ๋Š” ๋ฐ”๋€๋‹ˆ๋‹ค

 

๋ฐ์ดํ„ฐ๋ฒ ์ด์Šค ์‹œ์Šคํ…œ(DBS) : DB, DBMS, USER๋ฅผ ํฌํ•จํ•œ ๊ฐ€์žฅ ํฐ ๋ฒ”์œ„

 

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

- ์กฐ์ง์ฒด์˜ ์‘์šฉ ์‹œ์Šคํ…œ๋“ค์ด ๊ณต์œ ํ•ด ์‚ฌ์šฉํ•˜๋Š” ์šด์˜ ๋ฐ์ดํ„ฐ๋“ค์ด ๊ตฌ์กฐ์ ์œผ๋กœ ํ†ตํ•ฉ๋œ ๋ชจ์ž„

์‹œ์Šคํ…œ ์นดํƒˆ๋กœ๊ทธ( ๋˜๋Š” ๋ฐ์ดํ„ฐ ์‚ฌ์ „, Data Directory)์™€ ์ €์žฅ๋œ ๋ฐ์ดํ„ฐ๋ฒ ์ด์Šค๋กœ ๊ตฌ๋ถ„ํ•  ์ˆ˜ ์žˆ์Œ

- ์‹œ์Šคํ…œ ์นดํƒˆ๋กœ๊ทธ(system catalog)๋Š” ์ €์žฅ๋œ ๋ฐ์ดํ„ฐ๋ฒ ์ด์Šค์˜ ์Šคํ‚ค๋งˆ ์ •๋ณด๋ฅผ ์œ ์ง€

DBMS์˜ ๊ธฐ๋Šฅ

- ์‚ฌ์šฉ์ž๊ฐ€ ์ƒˆ๋กœ์šด ๋ฐ์ดํ„ฐ๋ฒ ์ด์Šค๋ฅผ ์ƒ์„ฑ

- ๋ฐ์ดํ„ฐ๋ฒ ์ด์Šค์˜ ๊ตฌ์กฐ๋ฅผ ๋ช…์‹œ

- ์‚ฌ์šฉ์ž๊ฐ€ ๋ฐ์ดํ„ฐ๋ฅผ ํšจ์œจ์ ์œผ๋กœ ์งˆ์˜ํ•˜๊ณ  ์ˆ˜์ •ํ•  ์ˆ˜ ์žˆ๋„๋ก ํ•จ

- ์‹œ์Šคํ…œ์˜ ๊ณ ์žฅ์ด๋‚˜ ๊ถŒํ•œ์ด ์—†๋Š” ์‚ฌ์šฉ์ž๋กœ๋ถ€ํ„ฐ ๋ฐ์ดํ„ฐ๋ฅผ ์•ˆ์ „ํ•˜๊ฒŒ ๋ณดํ˜ธ

- ๋™์‹œ์— ์—ฌ๋Ÿฌ ์‚ฌ์šฉ์ž๊ฐ€ ๋ฐ์ดํ„ฐ๋ฒ ์ด์Šค๋ฅผ ์ ‘๊ทผํ•˜๋Š” ๊ฒƒ์„ ์ œ์–ด

 

๋ฐ์ดํ„ฐ๋ฒ ์ด์Šค ์–ธ์–ด๋ผ๊ณ  ๋ถ€๋ฅด๋Š” ํŠน๋ณ„ํ•œ ํ”„๋กœ๊ทธ๋ž˜๋ฐ ์–ธ์–ด๋ฅผ ํ•œ ๊ฐœ ์ด์ƒ ์ œ๊ณต

 

SQL์€ ์—ฌ๋Ÿฌ DBMS์—์„œ ์ œ๊ณต๋˜๋Š” ์‚ฌ์‹ค์ƒ์˜ ํ‘œ์ค€ ๋ฐ์ดํ„ฐ๋ฒ ์ด์Šค ์–ธ์–ด

 

ํ•˜๋“œ์›จ์–ด

- ๋ฐ์ดํ„ฐ๋ฒ ์ด์Šค๋Š” ๋””์Šคํฌ์™€ ๊ฐ™์€ ๋ณด์กฐ ๊ธฐ์–ต ์žฅ์น˜์— ์ €์žฅ๋˜๋ฉฐ, DBMS์—์„œ ์›ํ•˜๋Š” ์ •๋ณด๋ฅผ ์ฐพ๊ธฐ ์œ„ํ•ด

๋””์Šคํฌ ๋ธ”๋ก๋“ค์„ ์ฃผ๊ธฐ์–ต์žฅ์น˜๋กœ ์ฝ์–ด๋“ค์–ด์•ผ ํ•ฉ๋‹ˆ๋‹ค

- ๊ณ„์‚ฐ์ด๋‚˜ ์กฐํ•ฉ ๋ฐ ๋น„๊ต ์—ฐ์‚ฐ๋“ค์„ ์ˆ˜ํ–‰ํ•˜๊ธฐ ์œ„ํ•ด ์ค‘์•™์ฒ˜๋ฆฌ ์žฅ์น˜๊ฐ€ ์‚ฌ์šฉ

- DBMS ์ž์ฒด๋„ ์ฃผ๊ธฐ์–ต์žฅ์น˜์— ์ ์žฌ๋˜์–ด ์‹คํ–‰๋˜์–ด์•ผ ํ•จ

 

๋ฐ์ดํ„ฐ๋ฒ ์ด์Šค ์‹œ์Šคํ…œ์˜ ์š”๊ตฌ์‚ฌํ•ญ

  • ๋ฐ์ดํ„ฐ ๋…๋ฆฝ์„ฑ
  • ํšจ์œจ์ ์ธ ๋ฐ์ดํ„ฐ ์ ‘๊ทผ
  • ๋ฐ์ดํ„ฐ์— ๋Œ€ํ•œ ๋™์‹œ ์ ‘๊ทผ
  • ๋ฐฑ์—…๊ณผ ํšŒ๋ณต
  • ์ค‘๋ณต์„ ์ค„์ด๊ฑฐ๋‚˜ ์ œ์–ดํ•˜๋ฉฐ ์ผ๊ด€์„ฑ ์œ ์ง€
  • ๋ฐ์ดํ„ฐ ๋ฌด๊ฒฐ์„ฑ
  • ๋ฐ์ดํ„ฐ ๋ณด์™„
  • ์‰ฌ์šด ์งˆ์˜์–ด
  • ๋‹ค์–‘ํ•œ ์‚ฌ์šฉ์ž ์ธํ„ฐํŽ˜์ด์Šค

1 - 3. ํŒŒ์ผ์‹œ์Šคํ…œ vs DBMS

ํŒŒ์ผ์‹œ์Šคํ…œ์„ ์‚ฌ์šฉํ•œ ๊ธฐ์กด์˜ ๋ฐ์ดํ„ฐ ๊ด€๋ฆฌ

- ํŒŒ์ผ์‹œ์Šคํ…œ์€ DBMS ์ด์ „๋ถ€ํ„ฐ ์‚ฌ์šฉ๋˜์—ˆ๋‹ค

- ํŒŒ์ผ ์ ‘๊ทผ๋ฐฉ์‹์ด ํ”„๋กœ๊ทธ๋žจ์— ์ž์„ธํ•˜๊ฒŒ ํ‘œํ˜„๋˜๋ฏ€๋กœ ๋ฐ์ดํ„ฐ์— ๋Œ€ํ•œ ์‘์šฉ ํ”„๋กœ๊ทธ๋žจ์˜ ์˜์กด๋„๊ฐ€ ๋†’๋‹ค

๋‹จ์ 

- ๋ฐ์ดํ„ฐ๊ฐ€ ์„œ๋กœ ๋‹ค๋ฅธ ๋‹ค์ˆ˜์˜ ํŒŒ์ผ์— ์ค‘๋ณตํ•ด์„œ ์ €์žฅ๋œ๋‹ค

- ๋‹ค์ˆ˜ ์‚ฌ์šฉ์ž๋ฅผ ์œ„ํ•œ ๋™์‹œ์„ฑ ์ œ์–ด๊ฐ€ ์ œ๊ณต๋˜์ง€ ์•Š๋Š”๋‹ค

- ๊ฒ€์ƒ‰ ๋ฐ์ดํ„ฐ๋ฅผ ๊ฐ„ํŽธํ•˜๊ฒŒ ํ•ด์ฃผ๋Š” ์ฟผ๋ฆฌ๊ฐ€ ์ œ๊ณต๋˜์ง€ ์•Š๋Š”๋‹ค

- ๋ณด์•ˆ ์กฐ์น˜๊ฐ€ ๋ฏธํกํ•˜๋‹ค

- ํšŒ๋ณต ๊ธฐ๋Šฅ์ด ์—†๋‹ค

- ํ”„๋กœ๊ทธ๋žจ, ๋ฐ์ดํ„ฐ ๋…๋ฆฝ์„ฑ์ด ์—†์œผ๋ฏ€๋กœ ์œ ์ง€๋ณด์ˆ˜ ๋น„์šฉ์ด ๋งŽ์ด ์†Œ์š”๋œ๋‹ค

- ํŒŒ์ผ์„ ๊ฒ€์ƒ‰ํ•˜๊ฑฐ๋‚˜ ๊ฐฑ์‹ ํ•˜๋Š” ์ ˆ์ฐจ๊ฐ€ ์ƒ๋Œ€์ ์œผ๋กœ ๋ณต์žกํ•ด ์ƒ์‚ฐ์„ฑ์„ ๋–จ์–ด๋œจ๋ฆฐ๋‹ค

 

DBMS์˜ ์žฅ์ 

1. ์Šคํ‚ค๋งˆ ์ •์˜๋ฅผ ํ†ตํ•ด

- ๋ฐ์ดํ„ฐ์˜ ์ค‘๋ณต๊ณผ ๋ถˆ์ผ์น˜ ๊ฐ์†Œ

- ํ‘œ์ค€ํ™” ์šฉ์ด

- ์กฐ์ง์ฒด์˜ ์š”๊ตฌ์‚ฌํ•ญ ์‹๋ณ„ ๊ฐ€๋Šฅ

2. ๊ด€๋ฆฌ๋„๊ตฌ๋ฅผ ํ†ตํ•ด

- ๊ฐœ๋ฐœ ๋ฐ ์œ ์ง€๋ณด์ˆ˜ ๋น„์šฉ ๊ฐ์†Œ

- ๋ณด์•ˆ, ๋ฌด๊ฒฐ์„ฑ ํ–ฅ์ƒ

- ๋‹ค์–‘ํ•œ ์œ ํ˜•์˜ ์žฅ์• ๋กœ๋ถ€ํ„ฐ DB ๋ณต๊ตฌ ๊ฐ€๋Šฅ

- ๋ฐ์ดํ„ฐ๋ฒ ์ด์Šค์˜ ๊ณต์œ ์™€ ๋™์‹œ์— ์ ‘๊ทผ์ด ๊ฐ€๋Šฅ

๋‹จ์ 

- DBMS ๋ฐ ํ•˜๋“œ์›จ์–ด ์ถ”๊ฐ€ ๊ตฌ์ž…๋น„์šฉ ๋ฐœ์ƒ, ๊ต์œก๋น„์šฉ ๋ฐœ์ƒ

- ํ”„๋ผ์ด๋ฒ„์‹œ ๋…ธ์ถœ ์œ„ํ—˜ ์ฆ๊ฐ€

 

+ DBMS ์ ์šฉํ•˜๋ฉด ์•ˆ๋˜๋Š” ๊ฒฝ์šฐ

- ์ดˆ๊ธฐ ํˆฌ์ž๋น„์šฉ์ด ๋„ˆ๋ฌด ํด ๋•Œ

- ์˜ค๋ฒ„ํ—ค๋“œ๊ฐ€ ๋„ˆ๋ฌด ํด ๋•Œ

- ์‘์šฉ์ด ๋‹จ์ˆœํ•˜๊ณ  ์ž˜ ์ •์˜๋˜์—ˆ์œผ๋ฉฐ ๋ณ€๊ฒฝ๋˜์ง€ ์•Š์„ ๊ฒƒ์œผ๋กœ ์˜ˆ์ƒ๋  ๋•Œ

- ์—„๊ฒฉํ•œ ์‹ค์‹œ๊ฐ„ ์ฒ˜๋ฆฌ ์š”๊ตฌ์‚ฌํ•ญ์ด ์žˆ์„ ๋•Œ

- ๋ฐ์ดํ„ฐ์— ๋Œ€ํ•œ ๋‹ค์ˆ˜ ์‚ฌ์šฉ์ž์˜ ์ ‘๊ทผ์ด ํ•„์š”ํ•˜์ง€ ์•Š์„ ๋•Œ

1 - 3. DBMS ๋ฐœ์ „ ๊ณผ์ •

1) ๊ณ„์ธต DBMS

- 1960๋…„๋Œ€ ํ›„๋ฐ˜ ๋“ฑ์žฅ, ํŠธ๋ฆฌ ๊ตฌ์กฐ๋ฅผ ๊ธฐ๋ฐ˜์œผ๋กœ ํ•œ ๊ณ„์ธต ๋ฐ์ดํ„ฐ ๋ชจ๋ธ์„ ์‚ฌ์šฉํ•œ DBMS, ๊ณ„์ธต ๋ฐ์ดํ„ฐ ๋ชจ๋ธ

 

์žฅ์  : ํŠน์ • ์œ ํ˜•์˜ ์‘์šฉ์— ๋Œ€ํ•ด ๋น ๋ฅธ ์†๋„์™€ ๋†’์€ ํšจ์œจ ์ œ๊ณต

๋‹จ์ 

- ์–ด๋–ป๊ฒŒ ๋ฐ์ดํ„ฐ๋ฅผ ์ ‘๊ทผํ•˜๋Š” ์ง€ ๋ฏธ๋ฆฌ ์‘์šฉํ”„๋กœ๊ทธ๋žจ์— ์ •์˜ํ•ด์•ผ ํ•œ๋‹ค

- ๋ฐ์ดํ„ฐ๋ฒ ์ด์Šค๊ฐ€ ์ƒ์„ฑ๋  ๋•Œ ๊ฐ๊ฐ์˜ ๊ด€๊ณ„๋ฅผ ๋ช…์‹œ์ ์œผ๋กœ ์ •์˜ํ•ด์•ผ ํ•œ๋‹ค

- ๋ ˆ์ฝ”๋“œ๋“ค์ด ๋งํฌ๋กœ ์—ฐ๊ฒฐ๋˜์–ด ์žˆ์œผ๋ฏ€๋กœ ๋ ˆ์ฝ”๋“œ ๊ตฌ์กฐ๋ฅผ ๋ณ€๊ฒฝํ•˜๊ธฐ ์–ด๋ ต๋‹ค

 

2) ๋„คํŠธ์›Œํฌ DBMS ๊ตฌ์กฐ

- ๋ ˆ์ฝ”๋“œ๋“ค์ด ๋…ธ๋“œ๋กœ, ๋ ˆ์ฝ”๋“œ๋“ค ์‚ฌ์ด์˜ ๊ด€๊ณ„๊ฐ€ ๊ฐ„์„ ์œผ๋กœ ํ‘œํ˜„๋˜๋Š” ๊ทธ๋ž˜ํ”„๋ฅผ ๊ธฐ๋ฐ˜์œผ๋กœ ํ•˜๋Š” ๋„คํŠธ์›Œํฌ ๋ฐ์ดํ„ฐ ๋ชจ๋ธ์„ ์‚ฌ์šฉ

- ๋„คํŠธ์›Œํฌ DBMS์—์„œ๋„ ๋ ˆ์ฝ”๋“œ๋“ค์ด ๋งํฌ๋กœ ์—ฐ๊ฒฐ๋˜์–ด ์žˆ์œผ๋ฏ€๋กœ ๋ ˆ์ฝ”๋“œ ๊ตฌ์กฐ๋ฅผ ๋ณ€๊ฒฝํ•˜๊ธฐ ์–ด๋ ต๋‹ค

 

3) ๊ด€๊ณ„ DBMS(RDBMS) ~ MY SQL Server, Oracle, MySQL

์žฅ์ 

- ๋ชจ๋ธ์ด ๊ฐ„๋‹จํ•ด ์ดํ•ดํ•˜๊ธฐ ์‰ฝ๋‹ค

- ์‚ฌ์šฉ์ž๋Š” ์ž์‹ ์ด ์›ํ•˜๋Š” ๊ฒƒ๋งŒ ๋ช…์‹œํ•˜๊ณ  ๋ฐ์ดํ„ฐ์˜ ์œ„์น˜์™€ ์ ‘๊ทผ ๋ฐฉ๋ฒ•์€ DBMS๊ฐ€ ๊ฒฐ์ •ํ•œ๋‹ค

 

4) ๊ฐ์ฒด ์ง€ํ–ฅ DBMS

- ๊ฐ์ฒด ์ง€ํ–ฅ ํ”„๋กœ๊ทธ๋ž˜๋ฐ ํŒจ๋Ÿฌ๋‹ค์ž„์„ ๊ธฐ๋ฐ˜์œผ๋กœ ํ•˜๋Š” ๋ฐ์ดํ„ฐ ๋ชจ๋ธ

 

์žฅ์  : ๋ฐ์ดํ„ฐ์™€ ํ”„๋กœ๊ทธ๋žจ์„ ๊ทธ๋ฃนํ™”ํ•˜๊ณ , ๋ณต์žกํ•œ ๊ฐ์ฒด๋“ค์„ ์ดํ•ดํ•˜๊ธฐ ์‰ฌ์šฐ๋ฉฐ, ์œ ์ง€์™€ ๋ณ€๊ฒฝ์ด ์šฉ์ดํ•˜๋‹ค

ex) ONTOS, OpenODB, GemStone, ObjectStore, O2๋“ฑ

 

5) ๊ฐ์ฒด ๊ด€๊ณ„ DBMS

- DBMS์— ๊ฐ์ฒด ์ง€ํ–ฅ ๋Œ€๋…์„ ํ†ตํ•ฉํ•œ ๊ฐ์ฒด ๊ด€๊ณ„ ๋ฐ์ดํ„ฐ ๋ชจ๋ธ์ด ์ œ์•ˆ๋จ

ex) ์˜ค๋ผํด, infomix, Universal Server๋“ฑ

1 - 4. DBMS ์–ธ์–ด

1) ๋ฐ์ดํ„ฐ ์ •์˜์–ด (DDL)

- ์‚ฌ์šฉ์ž๋Š” ๋ฐ์ดํ„ฐ ์ •์˜์–ด๋ฅผ ์‚ฌ์šฉํ•ด ๋ฐ์ดํ„ฐ๋ฒ ์ด์Šค ์Šคํ‚ค๋งˆ๋ฅผ ์ •์˜

- ๋ฐ์ดํ„ฐ ์ •์˜์–ด๋กœ ๋ช…์‹œ๋œ ๋ฌธ์žฅ์ด ์ž…๋ ฅ๋˜๋ฉด DBMS๋Š” ์‚ฌ์šฉ์ž๊ฐ€ ์ •์˜ํ•œ ์Šคํ‚ค๋งˆ์— ๋Œ€ํ•œ ๋ช…์„ธ๋ฅผ ์‹œ์Šคํ…œ ์นดํƒˆ๋กœ๊ทธ ๋˜๋Š” ๋ฐ์ดํ„ฐ ์‚ฌ์ „์— ์ €์žฅ

 

๋ฐ์ดํ„ฐ ์ •์˜์–ด์˜ ๊ธฐ๋ณธ์  ๊ธฐ๋Šฅ

- ๋ฐ์ดํ„ฐ ๋ชจ๋ธ์—์„œ ์ง€์›ํ•˜๋Š” ๋ฐ์ดํ„ฐ ๊ตฌ์กฐ๋ฅผ ์ƒ์„ฑ

- ๋ฐ์ดํ„ฐ ๊ตฌ์กฐ์˜ ๋ณ€๊ฒฝ

- ๋ฐ์ดํ„ฐ ๊ตฌ์กฐ์˜ ์‚ญ์ œ

- ๋ฐ์ดํ„ฐ ์ ‘๊ทผ์„ ์œ„ํ•ด ํŠน์ • ์–ดํŠธ๋ฆฌ๋ทฐํŠธ ์œ„์— ์ธ๋ฑ์Šค๋ฅผ ์ •์˜

 

2) ๋ฐ์ดํ„ฐ ์กฐ์ž‘์–ด(DML)

- ์‚ฌ์šฉ์ž๋Š” ๋ฐ์ดํ„ฐ ์กฐ์ž‘์–ด๋ฅผ ์‚ฌ์šฉํ•ด ๋ฐ์ดํ„ฐ๋ฒ ์ด์Šค ๋‚ด ์›ํ•˜๋Š” ๋ฐ์ดํ„ฐ๋ฅผ ๊ฒ€์ƒ‰, ์ˆ˜์ •, ์‚ฝ์ž…, ์‚ญ์ œ

- ์ ˆ์ฐจ์  ์–ธ์–ด์™€ ๋น„์ ˆ์ฐจ์  ์–ธ์–ด

cf)

์ ˆ์ฐจ์  ์–ธ์–ด : ํ”„๋กœ๊ทธ๋žจ์„ ์ˆœ์ฐจ์ ์œผ๋กœ ์‹คํ–‰ํ•˜๋Š” ๋ฐฉ์‹์œผ๋กœ ๋™์ž‘, ๋ช…๋ น์–ด์™€ ํ•จ์ˆ˜์˜ ์—ฐ์†์œผ๋กœ ์ด๋ฃจ์–ด์ง„ ํ”„๋กœ์‹œ์ €๋ฅผ ์‚ฌ์šฉํ•ด ์ž‘์—…์„ ์ˆ˜ํ–‰ํ•œ๋‹ค. C, Pascal, Fortan ๋“ฑ์ด ์žˆ๋‹ค

- ๊ด€๊ณ„ DBMS์—์„œ ์‚ฌ์šฉ๋˜๋Š” SQL์€ ๋Œ€ํ‘œ์ ์ธ ๋น„์ ˆ์ฐจ์  ์–ธ์–ด

- ๋Œ€๋ถ€๋ถ„ ๋ฐ์ดํ„ฐ ์กฐ์ž‘์–ด๋Š” SUM, COUNT, AVG์™€ ๊ฐ™์€ ๋‚ด์žฅ ํ•จ์ˆ˜๋ฅผ ๋‹ด๊ณ  ์žˆ๋‹ค

- ๋ฐ์ดํ„ฐ ์กฐ์ž‘์–ด๋Š” ์ž…์ถœ๋ ฅ์„ ํ†ตํ•ด ์ˆ˜ํ–‰๋˜๊ฑฐ๋‚˜ C, ์ฝ”๋ณผ ๋“ฑ์˜ ๊ณ ๊ธ‰ ํ”„๋กœ๊ทธ๋ž˜๋ฐ ์–ธ์–ด๋กœ ์ž‘์„ฑ๋œ ํ”„๋กœ๊ทธ๋žจ์— ๋‚ดํฌ๋˜์–ด ์‚ฌ์šฉ๋œ๋‹ค

 

๋ฐ์ดํ„ฐ ์กฐ์ž‘์–ด์˜ ๊ธฐ๋ณธ ๊ธฐ๋Šฅ

- ๋ฐ์ดํ„ฐ์˜ ์‚ฝ์ž…

- ๋ฐ์ดํ„ฐ์˜ ๊ฒ€์ƒ‰

- ๋ฐ์ดํ„ฐ์˜ ์ˆ˜์ •

- ๋ฐ์ดํ„ฐ์˜ ์‚ญ์ œ

 

3) ๋ฐ์ดํ„ฐ ์ œ์–ด์–ด(DCL) : ์‚ฌ์šฉ์ž๋Š” ๋ฐ์ดํ„ฐ ์ œ์–ด์–ด๋ฅผ ์‚ฌ์šฉํ•ด ๋ฐ์ดํ„ฐ๋ฒ ์ด์Šค ํŠธ๋žœ์ ์…˜์„ ๋ช…์‹œํ•˜๊ณ  ๊ถŒํ•œ์„ ๋ถ€์—ฌํ•˜๊ฑฐ๋‚˜ ์ทจ์†Œ

1 - 5. DBMS ์‚ฌ์šฉ์ž

1) ์‘์šฉ ํ”„๋กœ๊ทธ๋ž˜๋จธ

- DB์—์„œ ํŠน์ • ์‘์šฉ์„ ๊ตฌํ˜„ํ•˜๋Š” ์—ญํ• 

- ํ”„๋กœ๊ทธ๋ž˜๋ฐ ์–ธ์–ด๋กœ ์‘์šฉ ํ”„๋กœ๊ทธ๋žจ์„ ๊ฐœ๋ฐœํ•˜๋ฉฐ DB์— ์ ‘๊ทผํ•  ๋•Œ๋Š” ์ œ๊ณต๋œ ๋ฐ์ดํ„ฐ ์กฐ์ž‘์–ด๋ฅผ ์‚ฌ์šฉํ•œ๋‹ค

- ํ”„๋กœ๊ทธ๋ž˜๋จธ๊ฐ€ ์ž‘์„ฑํ•œ ํ”„๋กœ๊ทธ๋žจ์— ๋”ฐ๋ผ ๋ฐ์ดํ„ฐ๋ฒ ์ด์Šค์— ์ตœ์ข… ์‚ฌ์šฉ์ž๋“ค์ด ๋ฐ˜๋ณต์ ์œผ๋กœ ์ ‘๊ทผ ๋ฐ ํ”„๋กœ๊ทธ๋žจ์ด ์ˆ˜ํ–‰๋˜๋ฏ€๋กœ ํ”„์ž‘์„ฑ ํŠธ๋žœ์ ์…˜ ๋˜๋Š” ํ”„๋กœ๊ทธ๋žจ์ด๋ผ๊ณ  ํ•œ๋‹ค

 

2) DBA

- ๋ฐ์ดํ„ฐ๋ฒ ์ด์Šค ๊ด€๋ฆฌ์ž๋Š” ์กฐ์ง ์—ฌ๋Ÿฌ ๋ถ€๋ถ„์˜ ์ƒ์ดํ•œ ์š”๊ตฌ๋ฅผ ๋งŒ์กฑ์‹œํ‚ค๊ธฐ ์œ„ํ•ด ์ผ๊ด€์„ฑ์žˆ๋Š” ๋ฐ์ดํ„ฐ๋ฒ ์ด์Šค ์Šคํ‚ค๋งˆ๋ฅผ ์ƒ์„ฑํ•˜๊ณ  ์œ ์ง€ํ•˜๋Š” ์‚ฌ๋žŒ(ํŒ€)

- ๋ฌผ๋ฆฌ DB์˜ ๋ณ€๊ฒฝ์„ ์ˆ˜ํ–‰

- ๋ฐ์ดํ„ฐ๋ฒ ์ด์Šค ์Šคํ‚ค๋งˆ์˜ ์ƒ์„ฑ๊ณผ ๋ณ€๊ฒฝ

~ ๋ฌด๊ฒฐ์„ฑ ์ œ์•ฝ์กฐ๊ฑด ๋ช…์‹œ

~ ์‚ฌ์šฉ์ž ๊ถŒํ•œ์„ ํ—ˆ์šฉํ•˜๊ฑฐ๋‚˜ ์ทจ์†Œ, ์‚ฌ์šฉ์ž ์—ญํ•  ๊ด€๋ฆฌ

~ ์ €์žฅ ๊ตฌ์กฐ์™€ ์ ‘๊ทผ ๋ฐฉ๋ฒ•(๋ฌผ๋ฆฌ์  ์Šคํ‚ค๋งˆ) ์ •์˜

~ ๋ฐฑ์—…๊ณผ ํšŒ๋ณต

~ ํ‘œ์ค€ํ™” ์‹œํ–‰

 

3) ์˜คํผ๋ ˆ์ดํ„ฐ(์ธํ”„๋ผํŒ€)

- DBMS๊ฐ€ ์šด์˜๋˜๊ณ  ์žˆ๋Š” ์ปดํ“จํ„ฐ ์‹œ์Šคํ…œ๊ณผ ์ „์‚ฐ์‹ค์„ ๊ด€๋ฆฌํ•˜๋Š” ์‚ฌ๋žŒ

 

4) ์ตœ์ข… ์‚ฌ์šฉ์ž

- ์งˆ์˜ํ•˜๊ฑฐ๋‚˜ ๊ฐฑ์‹ ํ•˜๊ฑฐ๋‚˜ ๋ณด๊ณ ์„œ๋ฅผ ์ƒ์„ฑํ•˜๊ธฐ ์œ„ํ•ด ๋ฐ์ดํ„ฐ๋ฒ ์ด์Šค๋ฅผ ์‚ฌ์šฉํ•˜๋Š” ์‚ฌ๋žŒ

- ์ตœ์ข… ์‚ฌ์šฉ์ž๋Š” ๋‹ค์‹œ ๋ฐ์ดํ„ฐ๋ฒ ์ด์Šค ์ฟผ๋ฆฌ๋ฌธ์„ ์‚ฌ์šฉํ•ด ๋งค๋ฒˆ ๋‹ค๋ฅธ ์ •๋ณด๋ฅผ ์ฐพ๋Š” ์บ์ฃผ์–ผ ์‚ฌ์šฉ์ž์™€ ๊ธฐ์ž‘์„ฑ ํŠธ๋žœ์ ์…˜์„ ์ฃผ๋กœ ๋ฐ˜๋ณตํ•ด ์‚ฌ์šฉํ•˜๋Š” ์ดˆ๋ณด ์‚ฌ์šฉ์ž๋กœ ๊ตฌ๋ถ„๋œ๋‹ค

2. ๋ฐ์ดํ„ฐ๋ฒ ์ด์Šค

2 - 1. ๊ด€๊ณ„ํ˜• ๋ฐ์ดํ„ฐ๋ฒ ์ด์Šค(SQL)

- ๋™์ผํ•œ ๊ตฌ์กฐ(๋ฆด๋ ˆ์ด์…˜)์˜ ๊ด€์ ์—์„œ ๋ชจ๋“  ๋ฐ์ดํ„ฐ๋ฅผ ๋…ผ๋ฆฌ์ ์œผ๋กœ ๊ตฌ์„ฑ

- ์„ ์–ธ์  ์งˆ์˜์–ด๋ฅผ ํ†ตํ•ด ๋ฐ์ดํ„ฐ ์ ‘๊ทผ์„ ์ œ๊ณต

- ์‘์šฉ ํ”„๋กœ๊ทธ๋žจ๋“ค์€ ๋ฐ์ดํ„ฐ๋ฒ ์ด์Šค ๋‚ด ๋ ˆ์ฝ”๋“œ๋“ค์˜ ์–ด๋–ค ์ˆœ์„œ์™€๋„ ๋ฌด๊ด€ํ•˜๊ฒŒ ์ž‘์„ฑ๋จ

- ์‚ฌ์šฉ์ž๋Š” ์›ํ•˜๋Š” ๋ฐ์ดํ„ฐ๋งŒ ๋ช…์‹œํ•˜๊ณ , ์–ด๋–ป๊ฒŒ ๋ฐ์ดํ„ฐ๋ฅผ ์ฐพ์„์ง€ ๋ช…์‹œํ•  ํ•„์š” ์—†๋‹ค

- ๊ฐ€์žฅ ๋‹จ์ˆœํ•œ ๊ฐœ๋…์˜ ๋ฐ์ดํ„ฐ ๋ชจ๋ธ

 

ํŠน์ง•

- ๋ฐ”ํƒ•์ด ๋˜๋Š” ๋ฐ์ดํ„ฐ ๊ตฌ์กฐ๋กœ ๊ฐ„๋‹จํ•œ ํ…Œ์ด๋ธ”์„ ์‚ฌ์šฉ

- ์ค‘์ฒฉ๋œ ๋ณต์žกํ•œ ๊ตฌ์กฐ๊ฐ€ ์—†๋‹ค

- ์ง‘ํ•ฉ ์œ„์ฃผ๋กœ ๋ฐ์ดํ„ฐ๋ฅผ ์ฒ˜๋ฆฌ

- ์ˆ™๋ จ๋˜์ง€ ์•Š์€ ์‚ฌ์šฉ์ž๋„ ์‰ฝ๊ฒŒ ์ดํ•ดํ•  ์ˆ˜ ์žˆ๋‹ค

- ํ‘œ์ค€ ๋ฐ์ดํ„ฐ๋ฒ ์ด์Šค ์‘์šฉ์— ๋Œ€ํ•œ ์ข‹์€ ์„ฑ๋Šฅ์„ ๋ณด์ธ๋‹ค

 

๋ฆด๋ ˆ์ด์…˜ : 2์ฐจ์›์˜ ํ…Œ์ด๋ธ”(์Šคํ”„๋ ˆ๋“œ ์‹œํŠธ์™€ ์œ ์‚ฌ)

๋ ˆ์ฝ”๋“œ : ๋ฆด๋ ˆ์ด์…˜์˜ ๊ฐ ํ–‰

ํŠœํ”Œ : ๋ ˆ์ฝ”๋“œ์˜ ๊ณต์‹ ์šฉ์–ด = ๋กœ์šฐ(ROW)

์†์„ฑ : ๋ฆด๋ ˆ์ด์…˜์—์„œ ์ด๋ฆ„์„ ๊ฐ€์ง„ ํ•˜๋‚˜์˜ ์—ด = ์ปฌ๋Ÿผ(COLUMN)

 

* ํŒŒ์ผ ์‹œ์Šคํ…œ์€ ๋ ˆ์ฝ”๋“œ๋งŒ ์žˆ๋Š” ํŒŒ์ผ ํ˜•ํƒœ๋กœ ๋ฐ์ดํ„ฐ๊ฐ€ ์กด์žฌํ•˜์ง€๋งŒ, ๊ด€๊ณ„ํ˜• ๋ฐ์ดํ„ฐ๋ฒ ์ด์Šค๋Š” ์†์„ฑ, ํŠœํ”Œ์„ ๊ฐ€์ง„ ๋ฆด๋ ˆ์ด์…˜(ํ…Œ์ด๋ธ”) ํ˜•ํƒœ๋กœ ์กด์žฌํ•œ๋‹ค

 

๋„๋ฉ”์ธ

- ํ•œ ์†์„ฑ์— ๋‚˜ํƒ€๋‚  ์ˆ˜ ์žˆ๋Š” ๊ฐ’๋“ค์˜ ์ง‘ํ•ฉ

- ๊ฐ ์†์„ฑ์˜ ๋„๋ฉ”์ธ์€ ์›์ž๊ฐ’

- ํ”„๋กœ๊ทธ๋ž˜๋ฐ ์–ธ์–ด์˜ ๋ฐ์ดํ„ฐ ํƒ€์ž…๊ณผ ์œ ์‚ฌํ•˜๋‹ค

- ๋™์ผํ•œ ๋„๋ฉ”์ธ์ด ์—ฌ๋Ÿฌ ์†์„ฑ์—์„œ ์‚ฌ์šฉ๋  ์ˆ˜ ์žˆ๋‹ค

- ๋ณต์žก ์†์„ฑ์ด๋‚˜ ๋‹ค์น˜ ์• ํŠธ๋ฆฌ๋ทฐํŠธ(์• ํŠธ๋ฆฌ๋ทฐํŠธ ํ•˜๋‚˜์— ์—ฌ๋Ÿฌ ๊ฐ’์ด ๋“ค์–ด๊ฐˆ ์ˆ˜ ์žˆ๋Š” ๊ฒƒ ex) ํ•™๊ณผ ์‚ฌ๋ฌด์‹ค ์ „ํ™”๋ฒˆํ˜ธ)

 

์ฐจ์ˆ˜์™€ ์นด๋””๋„๋ฆฌํ‹ฐ

- ์ฐจ์ˆ˜ : ํ•œ ๋ฆด๋ ˆ์ด์…˜์— ๋“ค์–ด์žˆ๋Š” ์†์„ฑ์˜ ์ˆ˜(ํ•„๋“œ ์ˆ˜)

~ ์œ ํšจ ๋ฆด๋ ˆ์ด์…˜์˜ ์ตœ์†Œ ์ˆ˜๋Š” 1 : ์†์„ฑ์ด 1๊ฐœ ์ด์ƒ ์žˆ์–ด์•ผ ๋ฆด๋ ˆ์ด์…˜์ด ๋œ๋‹ค

~ ๋ฆด๋ ˆ์ด์…˜์˜ ์ฐจ์ˆ˜๋Š” ์ž์ฃผ ๋ฐ”๋€Œ์ง€ ์•Š๋Š”๋‹ค : ํ…Œ์ด๋ธ” ์Šคํ‚ค๋งˆ๋ฅผ ๋ณ€๊ฒฝํ•  ๊ฒฝ์šฐ ์ „์ฒด ๋กœ์šฐ์— ๋ฐ˜์˜๋˜์–ด์•ผ ํ•˜๊ธฐ ๋•Œ๋ฌธ์— ์ฒ˜๋ฆฌ๊ฐ€ ์ค‘๋‹จ๋œ๋‹ค

- ์นด๋””๋„๋ฆฌํ‹ฐ : ๋ฆด๋ ˆ์ด์…˜์˜ ํŠœํ”Œ(๋กœ์šฐ ์ˆ˜)

~ ์œ ํšจํ•œ ๋ฆด๋ ˆ์ด์…˜์€ ์นด๋””๋„๋ฆฌํŠธ 0์„ ๊ฐ€์งˆ ์ˆ˜ ์žˆ๋‹ค

~ ๋ฆด๋ ˆ์ด์…˜์˜ ์นด๋””๋„๋ฆฌํ‹ฐ๋Š” ์‹œ๊ฐ„์ด ์ง€๋‚จ์— ๋”ฐ๋ผ ๊ณ„์† ๋ณ€ํ•œ๋‹ค

2 - 2. ๋น„๊ด€๊ณ„ํ˜• ๋ฐ์ดํ„ฐ๋ฒ ์ด์Šค(NoSQL)

- ๊ด€๊ณ„ํ˜• ๋ฐ์ดํ„ฐ๋ฒ ์ด์Šค๋ณด๋‹ค ๋” ์œตํ†ต์„ฑ ์žˆ๋Š” ๋ฐ์ดํ„ฐ ๋ชจ๋ธ์„ ์‚ฌ์šฉํ•˜๋ฉฐ ๋ฐ์ดํ„ฐ ์ €์žฅ ๋ฐ ๊ฒ€์ƒ‰์— ํŠนํ™”๋œ ๋งค์ปค๋‹ˆ์ฆ˜์„ ์ œ๊ณตํ•œ๋‹ค

- NoSQL์€ ๋ถ„์‚ฐ ํ™˜๊ฒฝ์—์„œ์˜ ๋ฐ์ดํ„ฐ ์ฒ˜๋ฆฌ๋ฅผ ๋”์šฑ ๋น ๋ฅด๊ฒŒ ํ•˜๊ธฐ ์œ„ํ•ด ๊ฐœ๋ฐœ๋˜์—ˆ๋‹ค

 

ํŠน์ง•

- ๊ฑฐ๋Œ€ํ•œ Map์œผ๋กœ Key-Value ํ˜•์‹์„ ์ง€์›

- ์ปฌ๋Ÿผ๊ฐ„ ๊ด€๊ณ„๋ฅผ ์ •์˜ํ•˜์ง€ ์•Š๋Š”๋‹ค(PK ๋“ฑ)

- ์Šคํ‚ค๋งˆ์— ๋Œ€ํ•œ ์ •์˜๊ฐ€ ์—†๋‹ค

 

์ข…๋ฅ˜

1) ๋ฌธ์„œํ˜• ๋ฐ์ดํ„ฐ๋ฒ ์ด์Šค

- ๋ฐ์ดํ„ฐ๋ฅผ ํ…Œ์ด๋ธ”์ด ์•„๋‹Œ ๋ฌธ์„œ์ฒ˜๋Ÿผ ์ €์žฅํ•˜๋Š” ๋ฐ์ดํ„ฐ๋ฒ ์ด์Šค

- JSON๊ณผ ์œ ์‚ฌํ•œ ํ˜•์‹์œผ๋กœ ๋ฐ์ดํ„ฐ ๋ฌธ์„œํ™”, ์ €์žฅ

- ๊ฐ ๋ฌธ์„œ๋Š” ํ•˜๋‚˜์˜ ์†์„ฑ์— ๋Œ€ํ•œ ๋ฐ์ดํ„ฐ๋ฅผ ๊ฐ–๊ณ  ์žˆ๊ณ , ์ปฌ๋ ‰์…˜์ด๋ผ๋Š” ๊ทธ๋ฃน์œผ๋กœ ๋ฌถ์–ด ๊ด€๋ฆฌ ~ MongoDB

2) Key - Value ํƒ€์ž…

- ์†์„ฑ์„ Key - Value์˜ ์Œ์œผ๋กœ ๋‚˜ํƒ€๋‚ด๋Š” ๋ฐ์ดํ„ฐ๋ฅผ ๋ฐฐ์—ด์˜ ํ˜•ํƒœ๋กœ ์ €์žฅ

- Key : ์†์„ฑ Value : ์†์„ฑ์— ์—ฐ๊ฒฐ๋œ ๋ฐ์ดํ„ฐ ๊ฐ’

- Redis, Dynamo ๋“ฑ

3) Wide - Column Store ๋ฐ์ดํ„ฐ๋ฒ ์ด์Šค

- ๋ฐ์ดํ„ฐ๋ฒ ์ด์Šค์˜ ์—ด์— ๋Œ€ํ•œ ๋ฐ์ดํ„ฐ๋ฅผ ์ง‘์ค‘์ ์œผ๋กœ ๊ด€๋ฆฌํ•˜๋Š” ๋ฐ์ดํ„ฐ๋ฒ ์ด์Šค

- ๊ฐ ์—ด์—๋Š” Key - Value ํ˜•์‹์œผ๋กœ ๋ฐ์ดํ„ฐ๊ฐ€ ์ €์žฅ๋˜๊ณ , ์ปฌ๋Ÿผ ํŒจ๋ฐ€๋ฆฌ๋ผ๊ณ  ํ•˜๋Š” ์—ด์˜ ์ง‘ํ•ฉ์ฒด ๋‹จ์œ„๋กœ ๋ฐ์ดํ„ฐ๋ฅผ ์ฒ˜๋ฆฌํ•  ์ˆ˜ ์žˆ๋‹ค

- ํ•˜๋‚˜์˜ ํ–‰์— ๋‹ค์ˆ˜์˜ ์—ด์„ ํฌํ•จํ•  ์ˆ˜ ์žˆ์–ด ์œ ์—ฐ์„ฑ์ด ๋†’๋‹ค

- ๋ฐ์ดํ„ฐ ์ฒ˜๋ฆฌ์— ํ•„์š”ํ•œ ์—ด์„ ์œ ์—ฐํ•˜๊ฒŒ ์„ ํƒํ•  ์ˆ˜ ์žˆ์–ด ๊ทœ๋ชจ๊ฐ€ ํฐ ๋ฐ์ดํ„ฐ ๋ถ„์„์— ์ฃผ๋กœ ์‚ฌ์šฉ๋œ๋‹ค

- Cassandra, HBase ๋“ฑ

4) ๊ทธ๋ž˜ํ”„ ๋ฐ์ดํ„ฐ๋ฒ ์ด์Šค

- ์ž๋ฃŒ๊ตฌ์กฐ์˜ ๊ทธ๋ž˜ํ”„์™€ ๋น„์Šทํ•œ ํ˜•์‹์œผ๋กœ ๋ฐ์ดํ„ฐ ๊ฐ„ ๊ด€๊ณ„๋ฅผ ๊ตฌ์„ฑํ•˜๋Š” ๋ฐ์ดํ„ฐ๋ฒ ์ด์Šค

- ๋…ธ๋“œ์— ์†์„ฑ๋ณ„ ๋ฐ์ดํ„ฐ ์ €์žฅ, ๊ฐ ๋…ธ๋“œ๊ฐ„ ๊ด€๊ณ„๋Š” ์„ ์œผ๋กœ ํ‘œํ˜„ํ•œ๋‹ค. Neo4J, InfiniteGraph ๋“ฑ

- ์žฅ์  : ๋Œ€์šฉ๋Ÿ‰ ๋ฐ์ดํ„ฐ ์ฒ˜๋ฆฌ ์ ํ•ฉ, ์ฝ๊ธฐ๋ณด๋‹ค ์“ฐ๊ธฐ๊ฐ€ ๋น ๋ฅด๊ณ  RDB๋ณด๋‹ค ์ฝ๊ธฐ ์“ฐ๊ธฐ๊ฐ€ ๋ชจ๋‘ ๋น ๋ฆ„, ๋ฐ์ดํ„ฐ ๋ชจ๋ธ๋ง์ด ์œ ์—ฐ, ํ™•์žฅ์„ฑ์ด ์ข‹์•„ ๊ฒ€์ƒ‰์— ์œ ๋ฆฌ, ์ตœ์ ํ™”๋œ ํ‚ค ์ €์žฅ ๊ธฐ๋ฒ•์„ ์‚ฌ์šฉํ•ด ์‘๋‹ต์†๋„๋‚˜ ์ฒ˜๋ฆฌํšจ์œจ ๋“ฑ์—์„œ ์„ฑ๋Šฅ์ด ๋›ฐ์–ด๋‚˜๋‹ค

- ๋‹จ์  : ์ฟผ๋ฆฌ ์ฒ˜๋ฆฌ์‹œ ๋ฐ์ดํ„ฐ๋ฅผ ํŒŒ์‹ฑ ํ›„ ์—ฐ์‚ฐ์„ ํ•ด์•ผํ•˜๋ฏ€๋กœ ํฐ ํฌ๊ธฐ์˜ document๋ฅผ ๋‹ค๋ฃฐ ๋•Œ ์„ฑ๋Šฅ์ด ์ €ํ•˜๋จ

2 - 3. SQL vs NoSQL

1) SQL ์‚ฌ์šฉ์ด ์ ํ•ฉํ•œ ๊ฒฝ์šฐ

1. ๋ฐ์ดํ„ฐ๋ฒ ์ด์Šค์˜ ACID ์„ฑ์งˆ์„ ์ค€์ˆ˜ํ•ด์•ผ ํ•˜๋Š” ๊ฒฝ์šฐ

- SQL์„ ์‚ฌ์šฉํ•  ๋•Œ DB์™€ ์ƒํ˜ธ์ž‘์šฉ ๋ฐฉ์‹์„ ์ •ํ™•ํ•˜๊ฒŒ ๊ทœ์ •ํ•  ์ˆ˜ ์žˆ์–ด, DB์—์„œ ๋ฐ์ดํ„ฐ๋ฅผ ์ฒ˜๋ฆฌํ•  ๋•Œ ๋ฐœ์ƒํ•  ์ˆ˜ ์žˆ๋Š” ์˜ˆ์™ธ ์ƒํ™ฉ์„ ์ค„์ด๊ณ  ๋ฐ์ดํ„ฐ๋ฒ ์ด์Šค์˜ ๋ฌด๊ฒฐ์„ฑ์„ ๋ณดํ˜ธํ•  ์ˆ˜ ์žˆ๋‹ค

- ์ „์ž ์ƒ๊ฑฐ๋ž˜๋ฅผ ํฌํ•จ, ๋ชจ๋“  ๊ธˆ์œต ์„œ๋น„์Šค ๋ชฉ์ ์˜ SW ๊ฐœ๋ฐœ์€ ๋ฐ˜๋“œ์‹œ ACID๊ฐ€ ์ค€์ˆ˜๋˜์–ด์•ผ ํ•˜๋ฏ€๋กœ SQL์„ ์‚ฌ์šฉํ•œ๋‹ค

 

2. ์†Œํ”„ํŠธ์›จ์–ด์— ์‚ฌ์šฉ๋˜๋Š” ๋ฐ์ดํ„ฐ๊ฐ€ ๊ตฌ์กฐ์ ์ด๊ณ  ์ผ๊ด€์ ์ธ ๊ฒฝ์šฐ

- ์†Œํ”„ํŠธ์›จ์–ด(ํ”„๋กœ์ ํŠธ)์˜ ๊ทœ๋ชจ๊ฐ€ ๋งŽ์€ ์„œ๋ฒ„๋ฅผ ํ•„์š”๋กœ ํ•˜์ง€ ์•Š๊ณ  ์ผ๊ด€๋œ ๋ฐ์ดํ„ฐ๋ฅผ ์‚ฌ์šฉํ•˜๋Š” ๊ฒฝ์šฐ RDB๋ฅผ ์‚ฌ์šฉ

- NoSQL์€ ๋‹ค์–‘ํ•œ ๋ฐ์ดํ„ฐ ํƒ€์ž…๊ณผ ๋†’์€ ํŠธ๋ž˜ํ”ฝ๋„ ์ง€์›ํ•˜๋„๋ก ์„ค๊ณ„๋˜์–ด ์žˆ์–ด ๊ตณ์ด ์‚ฌ์šฉํ•  ํ•„์š”๊ฐ€ ์—†๋‹ค

 

2) NoSQL ์‚ฌ์šฉ์ด ์ ํ•ฉํ•œ ๊ฒฝ์šฐ

1. ๋ฐ์ดํ„ฐ์˜ ๊ตฌ์กฐ๊ฐ€ ๊ฑฐ์˜ ๋˜๋Š” ์ „ํ˜€ ์—†๋Š” ๋Œ€์šฉ๋Ÿ‰ ๋ฐ์ดํ„ฐ๋ฅผ ์ €์žฅํ•˜๋Š” ๊ฒฝ์šฐ

- ๋Œ€๋ถ€๋ถ„์˜ NoSQL DB๋Š” ์ €์žฅ ๋ฐ์ดํ„ฐ ์œ ํ˜•์˜ ์ œํ•œ์ด ์—†๋‹ค

- SW ๊ฐœ๋ฐœ์— ์ •ํ˜•ํ™”๋˜์ง€ ์•Š์€ ๋Œ€๋Ÿ‰์˜ ๋ฐ์ดํ„ฐ๊ฐ€ ํ•„์š”ํ•œ ๊ฒฝ์šฐ NoSQL ์ ์šฉ์ด ๋ณด๋‹ค ํšจ์œจ์ 

 

2. ํด๋ผ์šฐ๋“œ ์ปดํ“จํŒ… ๋ฐ ์ €์žฅ๊ณต๊ฐ„์„ ์ตœ๋Œ€ํ•œ ํ™œ์šฉํ•˜๋Š” ๊ฒฝ์šฐ

- ํด๋ผ์šฐ๋“œ ๊ธฐ๋ฐ˜์œผ๋กœ ๋ฐ์ดํ„ฐ๋ฒ ์ด์Šค ์ €์žฅ์†Œ๋ฅผ ๊ตฌ์ถ•ํ•˜๋ฉด, ์ €๋ ดํ•œ ๋น„์šฉ์˜ ์†”๋ฃจ์…˜์„ ์ œ๊ณต๋ฐ›์„ ์ˆ˜ ์žˆ์Šต๋‹ˆ๋‹ค

- ์†Œํ”„ํŠธ์›จ์–ด ๋ฐ์ดํ„ฐ๋ฒ ์ด์Šค์˜ ํ™•์žฅ์„ฑ์ด ์ค‘์š”ํ•˜๋‹ค๋ฉด, ๋ฒˆ๊ฑฐ๋กญ์ง€ ์•Š๊ฒŒ ํ™•์žฅํ•  ์ˆ˜ ์žˆ๋Š” NoSQL์ด ์ ํ•ฉํ•  ์ˆ˜ ์žˆ๋‹ค

 

3. ๋น ๋ฅด๊ฒŒ ์„œ๋น„์Šค๋ฅผ ๊ตฌ์ถ•ํ•˜๋Š” ๊ณผ์ •์—์„œ ๋ฐ์ดํ„ฐ ๊ตฌ์กฐ๋ฅผ ์ž์ฃผ ์—…๋ฐ์ดํŠธํ•˜๋Š” ๊ฒฝ์šฐ

- ์Šคํ‚ค๋งˆ๋ฅผ ๋ฏธ๋ฆฌ ์ค€๋น„ํ•  ํ•„์š”๊ฐ€ ์—†์–ด ๊ฐœ๋ฐœ ์†๋„๊ฐ€ ๋นจ๋ผ์ง„๋‹ค

- ๋‹ค์šดํƒ€์ž„(DB ์„œ๋ฒ„๋ฅผ ๋‚ด๋ฆฌ๊ณ  ์˜คํ”„๋ผ์ธ์—์„œ ๋ฐ์ดํ„ฐ ์ฒ˜๋ฆฌ ์ง„ํ–‰ํ•˜๋Š” ์‹œ๊ฐ„)์—†์ด ๋ฐ์ดํ„ฐ ๊ตฌ์กฐ๋ฅผ ์ž์ฃผ ์—…๋ฐ์ดํŠธํ•ด์•ผ ํ•˜๋Š” ๊ฒฝ์šฐ, ์Šคํ‚ค๋งˆ๋ฅผ ๋งค๋ฒˆ ์ˆ˜์ •ํ•ด์•ผ ํ•˜๋Š” RDB๋ณด๋‹ค NoSQL DB๊ฐ€ ๋” ์ ํ•ฉํ•˜๋‹ค

 

 

728x90