๋ณธ๋ฌธ ๋ฐ”๋กœ๊ฐ€๊ธฐ
๐Ÿ“ŒCS/DB

[DB] ๋ฐ์ดํ„ฐ๋ฒ ์ด์Šค๋ฅผ ์‚ฌ์šฉํ•˜๋Š” ์ด์œ ์™€ ์„ฑ๋Šฅ

by dar0m! 2021. 8. 4.

DBMS ํƒ„์ƒ ๋ฐฐ๊ฒฝ

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

๊ฐœ๋ฐœ์ž๋“ค์€ ๋ฐ์ดํ„ฐ๋ฒ ์ด์Šค๊ฐ€ ์กด์žฌํ•˜๊ธฐ ์ด์ „์— ํŒŒ์ผ ์‹œ์Šคํ…œ์„ ์ด์šฉํ•˜์—ฌ ๋ฐ์ดํ„ฐ๋ฅผ ๊ด€๋ฆฌํ•˜์˜€๋‹ค. 

๋ฐ์ดํ„ฐ๋ฅผ ๊ฐ๊ฐ์˜ ํŒŒ์ผ ๋‹จ์œ„(๋ ˆ์ฝ”๋“œ)๋กœ ์ €์žฅํ•˜๋ฉฐ ์ด๋Ÿฌํ•œ ์ผ๋“ค์„ ์ฒ˜๋ฆฌํ•˜๊ธฐ ์œ„ํ•œ ๋…๋ฆฝ์ ์ธ ์• ํ”Œ๋ฆฌ์ผ€์ด์…˜๊ณผ ์ƒํ˜ธ ์—ฐ๋™์ด ๋˜์–ด์•ผ ํ•˜๋Š”๋ฐ,

ํŒŒ์ผ ์‹œ์Šคํ…œ์—์„œ๋Š” ํŒŒ์ผ์— ์ ‘๊ทผํ•˜๋Š” ๋ฐฉ์‹์ด ์‘์šฉ ํ”„๋กœ๊ทธ๋žจ ๋‚ด์— ํ‘œํ˜„๋˜๋ฏ€๋กœ ์‘์šฉ ํ”„๋กœ๊ทธ๋žจ๊ณผ ๋ฐ์ดํ„ฐ ๊ฐ„์˜ ์˜์กด๊ด€๊ณ„๊ฐ€ ์กด์žฌํ•˜๊ฒŒ ๋˜์–ด ๋ฐ์ดํ„ฐ์˜ ๊ตฌ์กฐ, ์ ‘๊ทผ ๋ฐฉ๋ฒ•์ด ๋ณ€๊ฒฝ๋˜๋ฉด ๊ธฐ์กด์˜ ํ”„๋กœ๊ทธ๋žจ๊ณผ ๋ฐ์ดํ„ฐ๋ฅผ ํ•จ๊ป˜ ๋ณ€๊ฒฝํ•ด์•ผ ํ•œ๋‹ค.

  1. ์ฆ‰, ๋ฐ์ดํ„ฐ ์ •์˜๊ฐ€ ์‘์šฉ ํ”„๋กœ๊ทธ๋žจ์— ๋‚ดํฌ๋˜์–ด ์žˆ๊ณ 
  2. ํ”„๋กœ๊ทธ๋žจ์—์„œ ๋ฐ์ดํ„ฐ๋ฅผ ์ ‘๊ทผํ•˜๊ณ  ์กฐ์ž‘ํ•˜๋Š” ๊ฒƒ ์ด์™ธ์— ๋ณ„๋„์˜ ์ œ์–ด๊ฐ€ ์—†๋‹ค.

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

 

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

๋ฐ์ดํ„ฐ๋ฒ ์ด์Šค๋ž€ ์—ฌ๋Ÿฌ ์‚ฌ๋žŒ๋“ค์ด ๊ณต์œ ํ•˜๊ณ  ์‚ฌ์šฉํ•  ๋ชฉ์ ์œผ๋กœ ํ†ตํ•ฉ ๊ด€๋ฆฌ๋˜๋Š” ๋ฐ์ดํ„ฐ๋“ค์˜ ๋ชจ์ž„์ด๋‹ค.

๋ฐ์ดํ„ฐ๋ฒ ์ด์Šค ๊ด€๋ฆฌ ์‹œ์Šคํ…œ (DBMS, DataBaseManagementSystem)

๋ฐ์ดํ„ฐ๋ฒ ์ด์Šค ๊ด€๋ฆฌ ์‹œ์Šคํ…œ์ด๋ž€ ๋‹ค์ˆ˜์˜ ์‚ฌ์šฉ์ž๋“ค์ด ๋ฐ์ดํ„ฐ๋ฒ ์ด์Šค ๋‚ด์˜ ๋ฐ์ดํ„ฐ๋ฅผ ์ ‘๊ทผํ•  ์ˆ˜ ์žˆ๋„๋ก ํ•ด์ฃผ๋Š” ์†Œํ”„ํŠธ์›จ์–ด๋ฅผ ์˜๋ฏธํ•œ๋‹ค.

 

DBMS ํŠน์ง•

๋ฐ์ดํ„ฐ๋ฒ ์ด์Šค ๊ด€๋ฆฌ ์‹œ์Šคํ…œ์€ ํŒŒ์ผ ์‹œ์Šคํ…œ์˜ ๋ฌธ์ œ์ ์„ ํ•ด๊ฒฐํ•˜๊ธฐ ์œ„ํ•ด ๋งŒ๋“ค์–ด์กŒ๊ธฐ ๋•Œ๋ฌธ์— 
๋ฐ์ดํ„ฐ๋ฒ ์ด์Šค ๊ด€๋ฆฌ ์‹œ์Šคํ…œ์˜ ํŠน์ง•์€ ๊ณง ํŒŒ์ผ ์‹œ์Šคํ…œ์˜ ๋‹จ์ ์„ ์˜๋ฏธํ•œ๋‹ค.
  1. ๋ฐ์ดํ„ฐ์˜ ๋…๋ฆฝ์„ฑ
    • ๋ฌผ๋ฆฌ์  ๋…๋ฆฝ์„ฑ : ๋ฐ์ดํ„ฐ๋ฒ ์ด์Šค ์‚ฌ์ด์ฆˆ๋ฅผ ๋Š˜๋ฆฌ๊ฑฐ๋‚˜ ์„ฑ๋Šฅ ํ–ฅ์ƒ์„ ์œ„ํ•ด ๋ฐ์ดํ„ฐ ํŒŒ์ผ์„ ๋Š˜๋ฆฌ๊ฑฐ๋‚˜ ์ƒˆ๋กญ๊ฒŒ ์ถ”๊ฐ€ํ•˜๋”๋ผ๋„ ๊ด€๋ จ๋œ ์‘์šฉ ํ”„๋กœ๊ทธ๋žจ์„ ์ˆ˜์ •ํ•  ํ•„์š”๊ฐ€ ์—†๋‹ค.
    • ๋…ผ๋ฆฌ์  ๋…๋ฆฝ์„ฑ : ๋ฐ์ดํ„ฐ๋ฒ ์ด์Šค๋Š” ๋…ผ๋ฆฌ์ ์ธ ๊ตฌ์กฐ๋กœ ๋‹ค์–‘ํ•œ ์‘์šฉ ํ”„๋กœ๊ทธ๋žจ์˜ ๋…ผ๋ฆฌ์  ์š”๊ตฌ๋ฅผ ๋งŒ์กฑ์‹œํ‚ฌ ์ˆ˜ ์žˆ๋‹ค.
  2. ๋ฐ์ดํ„ฐ์˜ ๋ฌด๊ฒฐ์„ฑ
    • ์—ฌ๋Ÿฌ ๊ฒฝ๋กœ๋ฅผ ํ†ตํ•ด ์ž˜๋ชป๋œ ๋ฐ์ดํ„ฐ๊ฐ€ ๋ฐœ์ƒํ•˜๋Š” ๊ฒฝ์šฐ์˜ ์ˆ˜๋ฅผ ๋ฐฉ์ง€ํ•˜๋Š” ๊ธฐ๋Šฅ์œผ๋กœ ๋ฐ์ดํ„ฐ์˜ ์œ ํšจ์„ฑ ๊ฒ€์‚ฌ๋ฅผ ํ†ตํ•ด ๋ฐ์ดํ„ฐ์˜ ๋ฌด๊ฒฐ์„ฑ์„ ๊ตฌํ˜„ํ•˜๊ฒŒ ๋œ๋‹ค.
  3. ๋ฐ์ดํ„ฐ์˜ ๋ณด์•ˆ์„ฑ
    • ์ธ๊ฐ€๋œ ์‚ฌ์šฉ์ž๋“ค๋งŒ ๋ฐ์ดํ„ฐ๋ฒ ์ด์Šค๋‚˜ ๋ฐ์ดํ„ฐ๋ฒ ์ด์Šค ๋‚ด์˜ ์ž์›์— ์ ‘๊ทผํ•  ์ˆ˜ ์žˆ๋„๋ก ๊ณ„์ • ๊ด€๋ฆฌ ๋˜๋Š” ์ ‘๊ทผ ๊ถŒํ•œ์„ ์„ค์ •ํ•จ์œผ๋กœ์จ ๋ชจ๋“  ๋ฐ์ดํ„ฐ์— ๋ณด์•ˆ์„ ๊ตฌํ˜„ํ•  ์ˆ˜ ์žˆ๋‹ค.
  4. ๋ฐ์ดํ„ฐ์˜ ์ผ๊ด€์„ฑ
    • ์—ฐ๊ด€๋œ ์ •๋ณด๋ฅผ ๋…ผ๋ฆฌ์ ์ธ ๊ตฌ์กฐ๋กœ ๊ด€๋ฆฌํ•จ์œผ๋กœ์จ ์–ด๋–ค ํ•˜๋‚˜์˜ ๋ฐ์ดํ„ฐ๋งŒ ๋ณ€๊ฒฝํ–ˆ์„ ๊ฒฝ์šฐ ๋ฐœ์ƒํ•  ์ˆ˜ ์žˆ๋Š” ๋ฐ์ดํ„ฐ์˜ ๋ถˆ์ผ์น˜์„ฑ์„ ๋ฐฐ์ œํ•  ์ˆ˜ ์žˆ๋‹ค.
    • ๋˜ํ•œ ์ž‘์—… ์ค‘ ์ผ๋ถ€ ๋ฐ์ดํ„ฐ๋งŒ ๋ณ€๊ฒฝ๋˜์–ด ๋‚˜๋จธ์ง€ ๋ฐ์ดํ„ฐ์™€ ์ผ์น˜ํ•˜์ง€ ์•Š๋Š” ๊ฒฝ์šฐ์˜ ์ˆ˜๋ฅผ ๋ฐฐ์ œํ•  ์ˆ˜ ์žˆ๋‹ค.
  5. ๋ฐ์ดํ„ฐ ์ค‘๋ณต ์ตœ์†Œํ™”
    • ๋ฐ์ดํ„ฐ๋ฒ ์ด์Šค๋Š” ๋ฐ์ดํ„ฐ๋ฅผ ํ†ตํ•ฉํ•ด์„œ ๊ด€๋ฆฌํ•จ์œผ๋กœ์จ ํŒŒ์ผ ์‹œ์Šคํ…œ์˜ ๋‹จ์  ์ค‘ ํ•˜๋‚˜์ธ ์ž๋ฃŒ์˜ ์ค‘๋ณต๊ณผ ๋ฐ์ดํ„ฐ์˜ ์ค‘๋ณต์„ฑ ๋ฌธ์ œ๋ฅผ ํ•ด๊ฒฐํ•  ์ˆ˜ ์žˆ๋‹ค.

 

์„ฑ๋Šฅ

๋ฐ์ดํ„ฐ๋ฒ ์ด์Šค์˜ ์„ฑ๋Šฅ ์ด์Šˆ๋Š” ๋””์Šคํฌ I/O ๋ฅผ ์–ด๋–ป๊ฒŒ ์ค„์ด๋Š๋ƒ์—์„œ ์‹œ์ž‘๋œ๋‹ค.
  • ๋””์Šคํฌ I/O ๋ž€ ๋””์Šคํฌ ๋“œ๋ผ์ด๋ธŒ์˜ ํ”Œ๋ž˜ํ„ฐ(์›ํŒ)์„ ๋Œ๋ ค์„œ ์ฝ์–ด์•ผ ํ•  ๋ฐ์ดํ„ฐ๊ฐ€ ์ €์žฅ๋œ ์œ„์น˜๋กœ ๋””์Šคํฌ ํ—ค๋”๋ฅผ ์ด๋™์‹œํ‚จ ๋‹ค์Œ ๋ฐ์ดํ„ฐ๋ฅผ ์ฝ๋Š” ๊ฒƒ์„ ์˜๋ฏธํ•œ๋‹ค.

์ด ๋•Œ ๋ฐ์ดํ„ฐ๋ฅผ ์ฝ๋Š”๋ฐ ๊ฑธ๋ฆฌ๋Š” ์‹œ๊ฐ„์€ ๋””์Šคํฌ ํ—ค๋”๋ฅผ ์›€์ง์—ฌ์„œ ์ฝ๊ณ  ์“ธ ์œ„์น˜๋กœ ์˜ฎ๊ธฐ๋Š” ๋‹จ๊ณ„์—์„œ ๊ฒฐ์ •๋˜๋Š”๋ฐ,

๋””์Šคํฌ์˜ ์„ฑ๋Šฅ์€ ๋””์Šคํฌ ํ—ค๋”์˜ ์œ„์น˜ ์ด๋™ ์—†์ด ์–ผ๋งˆ๋‚˜ ๋งŽ์€ ๋ฐ์ดํ„ฐ๋ฅผ ํ•œ ๋ฒˆ์— ๊ธฐ๋กํ•˜๋Š๋ƒ์— ๋”ฐ๋ผ ๊ฒฐ์ •๋œ๋‹ค๊ณ  ๋ณผ ์ˆ˜ ์žˆ๋‹ค.

๊ทธ๋ ‡๊ธฐ ๋•Œ๋ฌธ์— ์ˆœ์ฐจ I/O ๊ฐ€ ๋žœ๋ค I/O ๋ณด๋‹ค ๋น ๋ฅผ ์ˆ˜ ๋ฐ–์— ์—†๋‹ค. ํ•˜์ง€๋งŒ ํ˜„์‹ค์—์„œ๋Š” ๋Œ€๋ถ€๋ถ„์˜ I/O ์ž‘์—…์ด ๋žœ๋ค I/O ์ด๋‹ค.

๋žœ๋ค I/O ๋ฅผ ์ˆœ์ฐจ I/O ๋กœ ๋ฐ”๊ฟ”์„œ ์‹คํ–‰ํ•  ์ˆ˜๋Š” ์—†์„๊นŒ? ์ด๋Ÿฌํ•œ ์ƒ๊ฐ์—์„œ๋ถ€ํ„ฐ ์‹œ์ž‘๋˜๋Š” ๋ฐ์ดํ„ฐ๋ฒ ์ด์Šค ์ฟผ๋ฆฌ ํŠœ๋‹์€ ๋žœ๋ค I/O ์ž์ฒด๋ฅผ ์ค„์—ฌ์ฃผ๋Š” ๊ฒƒ์ด ๋ชฉ์ ์ด๋ผ๊ณ  ํ•  ์ˆ˜ ์žˆ๋‹ค.

 

์ฐธ๊ณ 

'๐Ÿ“ŒCS > DB' ์นดํ…Œ๊ณ ๋ฆฌ์˜ ๋‹ค๋ฅธ ๊ธ€

[DB] SQL Injection  (0) 2021.10.13
[DB] NoSQL  (0) 2021.09.09
[DB] ํŠธ๋žœ์žญ์…˜ ์ „ํŒŒ ์„ค์ •  (0) 2021.05.02
[DB] ํŠธ๋žœ์žญ์…˜ ๊ฒฉ๋ฆฌ ์ˆ˜์ค€(Transaction Isolation Level)  (2) 2021.04.23
[DB] ํŠธ๋žœ์žญ์…˜(Transaction)  (0) 2021.04.23

๋Œ“๊ธ€