NOTE

  • ์˜๋„ : ๋ฐ์ดํ„ฐ๋ฒ ์ด์Šค ์นดํ…Œ๊ณ ๋ฆฌ๋Š” ๋ฐ์ดํ„ฐ๋ฒ ์ด์Šค ์„ค๊ณ„ ๋ฐ ๊ด€๋ฆฌ ๋Šฅ๋ ฅ์„ ํ‰๊ฐ€ํ•ฉ๋‹ˆ๋‹ค. RDBMS์™€ NoSQL์˜ ์ฐจ์ด๋ฅผ ์ดํ•ดํ•˜๊ณ , ๋ฐ์ดํ„ฐ๋ฒ ์ด์Šค ๋‚ด์—์„œ ๋ฐ์ดํ„ฐ๋ฅผ ์–ด๋–ป๊ฒŒ ์ €์žฅํ•˜๊ณ  ์กฐํšŒํ• ์ง€์— ๋Œ€ํ•œ ๊ธฐ๋ณธ์ ์ธ ์ดํ•ด๋ฅผ ํ™•์ธํ•˜๋ ค๋Š” ์˜๋„์ž…๋‹ˆ๋‹ค. ์ •๊ทœํ™”, ์ธ๋ฑ์Šค, ํŠธ๋žœ์žญ์…˜ ๋“ฑ์˜ ๊ฐœ๋…์„ ์•Œ๊ณ  ์žˆ๋Š”์ง€๋Š” ์‹ค๋ฌด์—์„œ ์ค‘์š”ํ•œ ๋ฐ์ดํ„ฐ ์ฒ˜๋ฆฌ ์„ฑ๋Šฅ๊ณผ ๋ฌด๊ฒฐ์„ฑ์„ ๋ณด์žฅํ•˜๋Š” ๋Šฅ๋ ฅ์œผ๋กœ ์ด์–ด์ง‘๋‹ˆ๋‹ค.

  • ๋‹ต๋ณ€์— ํฌํ•จํ•ด์•ผ ํ•  ํ‚ค์›Œ๋“œ

    • RDB vs NoSQL: ๊ด€๊ณ„ํ˜• ๋ฐ์ดํ„ฐ๋ฒ ์ด์Šค์™€ ๋น„๊ด€๊ณ„ํ˜• ๋ฐ์ดํ„ฐ๋ฒ ์ด์Šค์˜ ์ฐจ์ด
    • ์ •๊ทœํ™”(Normalization): ๋ฐ์ดํ„ฐ ์ค‘๋ณต์„ ์ตœ์†Œํ™”ํ•˜์—ฌ ๋ฐ์ดํ„ฐ ๊ตฌ์กฐ๋ฅผ ์ตœ์ ํ™”ํ•˜๋Š” ๊ณผ์ •
    • ์ธ๋ฑ์Šค(Index): ๋ฐ์ดํ„ฐ๋ฅผ ๋น ๋ฅด๊ฒŒ ๊ฒ€์ƒ‰ํ•˜๊ธฐ ์œ„ํ•œ ๊ตฌ์กฐ
    • ํŠธ๋žœ์žญ์…˜(Transaction): ์ผ๋ จ์˜ ๋ฐ์ดํ„ฐ๋ฒ ์ด์Šค ์ž‘์—…์˜ ์ผ๊ด€์„ฑ์„ ๋ณด์žฅํ•˜๋Š” ๋ฐฉ๋ฒ•
    • ACID ํŠน์„ฑ: ๋ฐ์ดํ„ฐ๋ฒ ์ด์Šค ํŠธ๋žœ์žญ์…˜์˜ ์‹ ๋ขฐ์„ฑ์„ ๋ณด์žฅํ•˜๋Š” ํŠน์„ฑ (์›์ž์„ฑ, ์ผ๊ด€์„ฑ, ๊ณ ๋ฆฝ์„ฑ, ์ง€์†์„ฑ)
  1. ๊ฐœ์ธ/ํŒ€ ํ”„๋กœ์ ํŠธ์— ์ ์šฉํ•ด ๋ณด์•˜๊ฑฐ๋‚˜ ์‚ฌ์šฉํ•  ์ค„ ์•„๋Š” RDB์— ๋Œ€ํ•ด ์ด์•ผ๊ธฐํ•ด์ฃผ์„ธ์š”.
  2. RDB์™€ NoSQL DB์˜ ์ฐจ์ด์ ์„ ์„ค๋ช…ํ•ด์ฃผ์„ธ์š”.
  3. ๋ฐ์ดํ„ฐ๋ฒ ์ด์Šค์—์„œ ์ธ๋ฑ์Šค๋ฅผ ์‚ฌ์šฉํ•˜๋Š” ์ด์œ ์™€ ์ธ๋ฑ์Šค๊ฐ€ ์„ฑ๋Šฅ์— ๋ฏธ์น˜๋Š” ์˜ํ–ฅ์„ ์„ค๋ช…ํ•ด์ฃผ์„ธ์š”.
  4. ๋ฐ์ดํ„ฐ๋ฒ ์ด์Šค ์ •๊ทœํ™”(Normalization)์™€ ์—ญ์ •๊ทœํ™”(Denormalization)์˜ ์ฐจ์ด์ ์— ๋Œ€ํ•ด ์„ค๋ช…ํ•ด ์ฃผ์„ธ์š”.
  5. ํŠธ๋žœ์žญ์…˜(Transaction)์ด ๋ฌด์—‡์ด๋ฉฐ, ACID ํŠน์„ฑ์„ ์„ค๋ช…ํ•ด ์ฃผ์„ธ์š”.

1. RDB

๊ฐœ์ธ/ํŒ€ ํ”„๋กœ์ ํŠธ์— ์ ์šฉํ•ด ๋ณด์•˜๊ฑฐ๋‚˜ ์‚ฌ์šฉํ•  ์ค„ ์•„๋Š” RDB์— ๋Œ€ํ•ด ์ด์•ผ๊ธฐํ•ด์ฃผ์„ธ์š”.

RDB (Relational Database)

  • ๊ด€๊ณ„ํ˜• ๋ฐ์ดํ„ฐ๋ฒ ์ด์Šค
  • ๋ฐ์ดํ„ฐ๋ฅผ ๊ตฌ์กฐ์ ์œผ๋กœ ์ €์žฅํ•˜๊ณ  ๊ด€๋ฆฌํ•˜๊ธฐ ์œ„ํ•ด ํ…Œ์ด๋ธ” ํ˜•์‹์„ ์‚ฌ์šฉํ•˜๋Š” ๋ฐ์ดํ„ฐ๋ฒ ์ด์Šค
  • ํ…Œ์ด๋ธ”๊ฐ„์˜ ๊ด€๊ณ„๋ฅผ ์„ค์ •ํ•˜์—ฌ ๋ฐ์ดํ„ฐ๋ฅผ ํšจ์œจ์ ์œผ๋กœ ๊ด€๋ฆฌ

์ฃผ์š” ํŠน์ง•

  • ํ…Œ์ด๋ธ” ๊ธฐ๋ฐ˜ ๊ตฌ์กฐ : ํ–‰(row)๊ณผ ์—ด(column)๋กœ ๊ตฌ์„ฑ๋œ ํ‘œ ํ˜•์‹
  • ์ •๊ทœํ™” : ๋ฐ์ดํ„ฐ์˜ ์ค‘๋ณต์„ ์ตœ์†Œํ™”ํ•˜๊ณ , ๋ฐ์ดํ„ฐ ๋ฌด๊ฒฐ์„ฑ ์œ ์ง€๋ฅผ ์œ„ํ•ด ํ…Œ์ด๋ธ” ๋ถ„๋ฆฌ ๋ฐ ๊ด€๊ณ„ ์„ค์ •
  • SQL
  • ๊ด€๊ณ„ : ํ…Œ์ด๋ธ” ๊ฐ„ ๊ด€๊ณ„๋ฅผ ์„ค์ •ํ•˜์—ฌ ๋ฐ์ดํ„ฐ ์—ฐ๊ฒฐ ๊ฐ€๋Šฅ
  • ACID ํŠน์„ฑ

์žฅ์ 

  • ๋ฐ์ดํ„ฐ ๋ฌด๊ฒฐ์„ฑ ์œ ์ง€
  • ํšจ์œจ์ ์ธ ๋ฐ์ดํ„ฐ ๊ด€๋ฆฌ
  • ์ค‘๋ณต ์ตœ์†Œํ™”(์ •๊ทœํ™”)

RDBMS

  • RDB๋ฅผ ๊ด€๋ฆฌํ•˜๋Š” ์†Œํ”„ํŠธ์›จ์–ด
  • MySQL, PostgreSQL

MySQL

  • ์†๋„์™€ ๋‹จ์ˆœ์„ฑ์„ ์ค‘์‹œํ•˜๋Š” ๋ฐ์ดํ„ฐ๋ฒ ์ด์Šค
  • ์‚ฌ์šฉ์ด ๊ฐ„๋‹จํ•จ
  • ๋น ๋ฅด๊ณ  ๊ฐ„๋‹จํ•œ ์ฝ๊ธฐ ์ค‘์‹ฌ์˜ ์›น ์• ํ”Œ๋ฆฌ์ผ€์ด์…˜์— ์ ํ•ฉ

์ด์ปค๋จธ์Šค ํ”Œ๋žซํผ ๊ฐœ๋ฐœ์—์„œ MySQL์„ ์‚ฌ์šฉํ•œ ์ด์œ 

  • ํŒ€์› ๋Œ€๋ถ€๋ถ„์ด MySQL์— ์ต์ˆ™ํ•˜์—ฌ ๋น ๋ฅด๊ฒŒ ์‹œ์ž‘ํ•  ์ˆ˜ ์žˆ์—ˆ๊ณ  ์กฐํšŒ ๊ธฐ๋Šฅ์ด ๋งŽ์ด ์‚ฌ์šฉ๋˜๋Š” ์ด์ปค๋จธ์Šค ํ”Œ๋žซํผ ํŠน์„ฑ์ƒ ๋‹จ์ˆœ ์กฐํšŒ ์„ฑ๋Šฅ์ด ๋น ๋ฅธ MySQL์„ ์„ ํƒ

PostgreSQL

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

๋ฌผ๋ฅ˜ ๊ด€๋ฆฌ ์‹œ์Šคํ…œ์—์„œ PostgreSQL์„ ์‚ฌ์šฉํ•œ ์ด์œ 

  • MSA๋กœ ๊ฐœ๋ฐœ์„ ์ง„ํ–‰ํ•˜๋‹ค ๋ณด๋‹ˆ ๊ฐ ๋ชจ๋“ˆ ๊ฐ„ ๋ฐ์ดํ„ฐ ํ†ต์‹ ์˜ ์•ˆ์ „์„ฑ๊ณผ ๋ฌด๊ฒฐ์„ฑ์ด ์ค‘์š”ํ•˜์—ฌ ๋ณต์žกํ•œ ํŠธ๋žœ์žญ์…˜์„ ์ฒ˜๋ฆฌํ•  ์ˆ˜ ์žˆ๋Š” PostgreSQL ์„ ํƒ

2. RDB์™€ NoSQL DB

RDB์™€ NoSQL DB์˜ ์ฐจ์ด์ ์„ ์„ค๋ช…ํ•ด์ฃผ์„ธ์š”.

RDB

  • ๋ฐ์ดํ„ฐ๋ฅผ ํ…Œ์ด๋ธ”์˜ ํ˜•ํƒœ๋กœ ์ €์žฅ
  • ๊ฐ ํ…Œ์ด๋ธ”์€ ๋ช…ํ™•ํ•œ ์Šคํ‚ค๋งˆ๋ฅผ ๊ฐ€์ง
  • ACID๋ฅผ ์™„๋ฒฝํžˆ ์ง€์›ํ•ด ํŠธ๋žœ์žญ์…˜์ด ์ค‘์š”ํ•˜๊ณ  ๋ฐ์ดํ„ฐ์˜ ๋ฌด๊ฒฐ์„ฑ์ด ํ•„์ˆ˜์ธ ๊ฒฝ์šฐ ์ ํ•ฉ
  • Scale-up(๋” ๊ฐ•๋ ฅํ•œ ์„œ๋ฒ„๋กœ ์—…๊ทธ๋ ˆ์ด๋“œ)์— ์ ํ•ฉ
  • ๋ณต์žกํ•œ ์กฐ์ธ๊ณผ ์ฟผ๋ฆฌ ์ฒ˜๋ฆฌ ๊ฐ€๋Šฅ, ์ •ํ˜• ๋ฐ์ดํ„ฐ ์ฒ˜๋ฆฌ์— ์ ํ•ฉ
  • ํŠธ๋žœ์žญ์…˜๊ณผ ๋ฐ์ดํ„ฐ ๋ฌด๊ฒฐ์„ฑ์ด ์ค‘์š”ํ•œ ์‹œ์Šคํ…œ(๊ธˆ์œต, ์€ํ–‰, ERP ๋“ฑ)

NoSQL DB

  • ๋ฐ์ดํ„ฐ๋ฅผ ๋น„์ •ํ˜• ๋ฐฉ์‹์œผ๋กœ ์ €์žฅ
  • ํ‚ค-๊ฐ’, ๋ฌธ์„œ, ์—ด ๋“ฑ ์—ฌ๋Ÿฌ ์œ ํ˜•์˜ ๋ฐ์ดํ„ฐ ๋ชจ๋ธ ์ง€์›
  • ์Šคํ‚ค๋งˆ๊ฐ€ ์œ ์—ฐํ•˜๊ฑฐ๋‚˜ ์—†์–ด ๋ฐ์ดํ„ฐ๊ตฌ์กฐ๊ฐ€ ๋ณ€๋™๋˜๋Š” ์• ํ”Œ๋ฆฌ์ผ€์ด์…˜์— ์ ํ•ฉ
  • ์ผ๊ด€์„ฑ์ด ์ฆ‰๊ฐ์ ์œผ๋กœ ๋ณด์žฅ๋˜์ง€ ์•Š์œผ๋ฉฐ ์„ฑ๋Šฅ๊ณผ ํ™•์žฅ์„ฑ์„ ์œ„ํ•ด ์ผ๊ด€์„ฑ ๋Œ€์‹  ๊ฐ€์šฉ์„ฑ์„ ์šฐ์„ ์‹œ
  • Scale-out(๋…ธ๋“œ๋ฅผ ์ถ”๊ฐ€ํ•ด ํ™•์žฅ)์— ์ ํ•ฉ
  • ๋Œ€๋Ÿ‰์˜ ๋ฐ์ดํ„ฐ๋ฅผ ์ฒ˜๋ฆฌํ•˜๊ฑฐ๋‚˜ ๊ณ ๊ฐ€์šฉ์„ฑ์ด ํ•„์š”ํ•œ ์‹œ์Šคํ…œ์— ์ ํ•ฉ
  • ๋น„์ •ํ˜• ๋ฐ์ดํ„ฐ๋‚˜ ๋ฐ˜์ •ํ˜• ๋ฐ์ดํ„ฐ ์ฒ˜๋ฆฌ์— ์ ํ•ฉ
  • ์กฐ์ธ ๋Œ€์‹  ๋ฐ์ดํ„ฐ ์ค‘๋ณต์„ ํ—ˆ์šฉํ•ด ์„ฑ๋Šฅ ๊ฐœ์„ 
  • ๋Œ€๊ทœ๋ชจ ์ฒ˜๋ฆฌ์™€ ์œ ์—ฐ์„ฑ์ด ์ค‘์š”ํ•œ ์‹œ์Šคํ…œ(์†Œ์…œ ๋„คํŠธ์›Œํฌ, ์บ์‹ฑ ๋“ฑ)

RDBMS์™€ NoSQL์˜ ์žฅ๋‹จ์ ์€ ๋ฌด์—‡์ธ๊ฐ€์š”?

RDBMS๋Š” ์ •ํ˜•ํ™”๋œ ์Šคํ‚ค๋งˆ๋กœ ์ผ๊ด€์„ฑ๊ณผ ๋ฐ์ดํ„ฐ ๋ฌด๊ฒฐ์„ฑ์ด ์œ ์ง€๋˜๋ฉฐ ์•ˆ์ „ํ•œ ํŠธ๋žœ์žญ์…˜์„ ๋ณด์žฅํ•ฉ๋‹ˆ๋‹ค. ํ•˜์ง€๋งŒ ํ™•์žฅ์ด ์–ด๋ ต๊ณ  ์Šคํ‚ค๋งˆ ๋ณ€๊ฒฝ์ด ๋ณต์žกํ•˜๋‹ค๋Š” ๋‹จ์ ์ด ์žˆ์Šต๋‹ˆ๋‹ค. NoSQL์€ ๋Œ€๊ทœ๋ชจ ๋ฐ์ดํ„ฐ๋ฅผ ํšจ์œจ์ ์œผ๋กœ ์ฒ˜๋ฆฌํ•  ์ˆ˜ ์žˆ์ง€๋งŒ ํŠธ๋žœ์žญ์…˜ ๋ณด์žฅ์ด ์•ฝํ•œ ๋‹จ์ ์ด ์žˆ์Šต๋‹ˆ๋‹ค.

RDB์™€ NoSQL DB์˜ ์ฐจ์ด์ ์„ ์„ค๋ช…ํ•ด์ฃผ์„ธ์š”.

RDB์™€ NoSQL์€ ๋ฐ์ดํ„ฐ ์ €์žฅ ๋ฐฉ์‹์—์„œ ํฐ ์ฐจ์ด๊ฐ€ ์žˆ์Šต๋‹ˆ๋‹ค. RDB๋Š” ๋ฐ์ดํ„ฐ๋ฅผ ํ…Œ์ด๋ธ” ํ˜•ํƒœ๋กœ ์ €์žฅํ•˜๋ฉฐ ๊ฐ ํ…Œ์ด๋ธ”์€ ์ •ํ˜•ํ™”๋œ ๋ฐ์ดํ„ฐ๋กœ ๊ตฌ์„ฑ๋ฉ๋‹ˆ๋‹ค. ๋ฐ์ดํ„ฐ๋ฅผ ์ €์žฅํ•˜๊ธฐ ์ „์— ์Šคํ‚ค๋งˆ๋ฅผ ์ •์˜ํ•˜๊ณ  ๋ฐ์ดํ„ฐ ๊ฐ„์˜ ๊ด€๊ณ„๋ฅผ ๋ช…ํ™•ํžˆ ์„ค์ •ํ•ฉ๋‹ˆ๋‹ค. ๋˜ํ•œ ACID ์›์น™์„ ์—„๊ฒฉํ•˜๊ฒŒ ๋”ฐ๋ฅด๊ธฐ ๋•Œ๋ฌธ์— ๋ฐ์ดํ„ฐ์˜ ์ผ๊ด€์„ฑ๊ณผ ๋ฌด๊ฒฐ์„ฑ์„ ๋ณด์žฅํ•˜๋ฉฐ ํŠธ๋žœ์žญ์…˜ ์ฒ˜๋ฆฌ๊ฐ€ ์ค‘์š”ํ•œ ์‹œ์Šคํ…œ์— ์ ํ•ฉํ•ฉ๋‹ˆ๋‹ค. NoSQL DB๋Š” ๋ฐ์ดํ„ฐ๋ฅผ ํ‚ค-๊ฐ’ ํ˜•ํƒœ๋‚˜ json๋“ฑ ๋‹ค์–‘ํ•œ ํ˜•ํƒœ๋กœ ์ €์žฅํ•  ์ˆ˜ ์žˆ์Šต๋‹ˆ๋‹ค. NoSQL์€ ์œ ์—ฐํ•œ ์Šคํ‚ค๋งˆ๋ฅผ ์ œ๊ณตํ•˜๊ธฐ ๋•Œ๋ฌธ์— ๋ฐ์ดํ„ฐ ๊ตฌ์กฐ๊ฐ€ ์ž์ฃผ ๋ณ€๊ฒฝ๋  ๊ฒฝ์šฐ์— ์ ํ•ฉํ•ฉ๋‹ˆ๋‹ค. ์ผ๊ด€์„ฑ๋ณด๋‹ค ๊ฐ€์šฉ์„ฑ๊ณผ ํ™•์žฅ์„ฑ์„ ์ค‘์š”์‹œํ•ด ๋Œ€๊ทœ๋ชจ ๋ฐ์ดํ„ฐ ์ฒ˜๋ฆฌ์™€ ์œ ์—ฐ์„ฑ์ด ์ค‘์š”ํ•œ ์‹œ์Šคํ…œ์— ์ฃผ๋กœ ์‚ฌ์šฉ๋ฉ๋‹ˆ๋‹ค.

3. ๋ฐ์ดํ„ฐ ๋ฒ ์ด์Šค ์ธ๋ฑ์Šค

๋ฐ์ดํ„ฐ๋ฒ ์ด์Šค์—์„œ ์ธ๋ฑ์Šค๋ฅผ ์‚ฌ์šฉํ•˜๋Š” ์ด์œ ์™€ ์ธ๋ฑ์Šค๊ฐ€ ์„ฑ๋Šฅ์— ๋ฏธ์น˜๋Š” ์˜ํ–ฅ์„ ์„ค๋ช…ํ•ด์ฃผ์„ธ์š”.

์ธ๋ฑ์Šค๋ฅผ ์‚ฌ์šฉํ•˜๋Š” ์ด์œ 

  • ๊ฒ€์ƒ‰ ์†๋„ ํ–ฅ์ƒ
    • ๋น ๋ฅธ ๊ฒ€์ƒ‰ ์ง€์›์„ ์œ„ํ•ด ๋ฐ์ดํ„ฐ๋ฅผ ์ •๋ ฌํ•˜๊ฑฐ๋‚˜ ํŠธ๋ฆฌ ๊ตฌ์กฐ๋กœ ์ €์žฅํ•˜์—ฌ ์ „์ฒด ํ…Œ์ด๋ธ”์„ ์Šค์บ”ํ•˜์ง€ ์•Š๊ณ ๋„ ๋น ๋ฅด๊ฒŒ ๊ฒ€์ƒ‰ํ•  ์ˆ˜ ์žˆ์Œ
  • ์ •๋ ฌ ๋ฐ ๊ทธ๋ฃนํ™” ์„ฑ๋Šฅ ํ–ฅ์ƒ
    • ์ •๋ ฌ์ด๋‚˜ ๊ทธ๋ฃนํ™” ์—ฐ์‚ฐ์„ ๋น ๋ฅด๊ฒŒ ์ˆ˜ํ–‰ํ•  ์ˆ˜ ์žˆ๋„๋ก ๋„์™€์คŒ
  • JOIN ์„ฑ๋Šฅ ํ–ฅ์ƒ
    • JOIN์—ฐ์‚ฐ์„ ์ˆ˜ํ–‰ํ•  ๋•Œ ์ธ๋ฑ์Šค๋ฅผ ์‚ฌ์šฉํ•˜๋ฉด ๋‘ ํ…Œ์ด๋ธ”์„ ๊ฒฐํ•ฉํ•  ๋•Œ ํ•„์š”ํ•œ ๋ฐ์ดํ„ฐ๋ฅผ ๋” ๋นจ๋ฆฌ ์ฐพ์„ ์ˆ˜ ์žˆ์–ด ์„ฑ๋Šฅ์ด ํ–ฅ์ƒ๋จ

์ธ๋ฑ์Šค๊ฐ€ ์„ฑ๋Šฅ์— ๋ฏธ์น˜๋Š” ์˜ํ–ฅ

  1. ์ฝ๊ธฐ ์„ฑ๋Šฅ ํ–ฅ์ƒ
    • ๋ฐ์ดํ„ฐ๋ฅผ ์กฐํšŒํ•˜๊ฑฐ๋‚˜ ๊ฒ€์ƒ‰ํ•  ๋•Œ ์ธ๋ฑ์Šค๋ฅผ ํ™œ์šฉํ•˜๋ฉด ํ…Œ์ด๋ธ” ์ „์ฒด๋ฅผ ์Šค์บ”ํ•˜๋Š” ๊ฒƒ๋ณด๋‹ค ๋น ๋ฅด๊ฒŒ ์›ํ•˜๋Š” ๋ฐ์ดํ„ฐ๋ฅผ ์ฐพ์„ ์ˆ˜ ์žˆ์Œ
  2. ์“ฐ๊ธฐ ์„ฑ๋Šฅ ์ €ํ•˜
    • ๋ฐ์ดํ„ฐ๋ฒ ์ด์Šค์— ๋ฐ์ดํ„ฐ๋ฅผ ์‚ฝ์ž…, ๊ฐฑ์‹ , ์‚ญ์ œํ•  ๋•Œ ์ธ๋ฑ์Šค๋ฅผ ์—…๋ฐ์ดํŠธํ•ด์•ผํ•˜๊ธฐ ๋•Œ๋ฌธ์— ์“ฐ๊ธฐ ์—ฐ์‚ฐ์ด ๋А๋ ค์งˆ ์ˆ˜ ์žˆ์Œ
  3. ๋””์Šคํฌ ๊ณต๊ฐ„ ์ฆ๊ฐ€
    • ์ธ๋ฑ์Šค๋ฅผ ์‚ฌ์šฉํ•˜๋ฉด ์ถ”๊ฐ€ ๋””์Šคํฌ ๊ณต๊ฐ„์ด ํ•„์š”ํ•ด์ง. ํŠนํžˆ ๋ณตํ•ฉ ์ธ๋ฑ์Šค๋‚˜ ํฐ ํ…Œ์ด๋ธ”์—์„œ ์ธ๋ฑ์Šค๊ฐ€ ์ฐจ์ง€ํ•˜๋Š” ๊ณต๊ฐ„์ด ๋งŽ์•„์งˆ ์ˆ˜ ์žˆ์Œ.

์ธ๋ฑ์Šค๋Š” ์ฝ๊ธฐ ์„ฑ๋Šฅ์„ ํฌ๊ฒŒ ํ–ฅ์ƒ์‹œํ‚ค์ง€๋งŒ ์“ฐ๊ธฐ ์„ฑ๋Šฅ์—๋Š” ๋ถ€์ •์ ์ธ ์˜ํ–ฅ์„ ๋ฏธ์น  ์ˆ˜ ์žˆ์Œ

์ธ๋ฑ์Šค๋ฅผ ์‚ญ์ œํ•˜๊ฑฐ๋‚˜ ๋ณ€๊ฒฝํ•˜๋Š” ๊ฒฝ์šฐ, ์„ฑ๋Šฅ์— ์–ด๋–ค ์˜ํ–ฅ์„ ๋ฏธ์น ๊นŒ์š”?

๋‹จ๊ธฐ์ ์ธ ์„ฑ๋Šฅ ๊ฐœ์„ ์ด๋‚˜ ๋””์Šคํฌ ๊ณต๊ฐ„ ์ ˆ์•ฝ์„ ๊ฐ€์ ธ์˜ฌ ์ˆ˜ ์žˆ์ง€๋งŒ ์ฝ๊ธฐ ์„ฑ๋Šฅ ์ €ํ•˜๋‚˜ ์“ฐ๊ธฐ ์„ฑ๋Šฅ์˜ ์ผ์‹œ์ ์ธ ์ €ํ•˜๋ฅผ ์ดˆ๋ž˜ํ•  ์ˆ˜ ์žˆ์Šต๋‹ˆ๋‹ค. ์ธ๋ฑ์Šค๋ฅผ ์‚ญ์ œํ•˜๋Š” ๊ฒฝ์šฐ ์‚ฝ์ž…, ์‚ญ์ œ, ๊ฐฑ์‹  ์‹œ ์ธ๋ฑ์Šค๋ฅผ ์—…๋ฐ์ดํŠธ ํ•  ํ•„์š”๊ฐ€ ์—†์œผ๋ฏ€๋กœ ์“ฐ๊ธฐ ์„ฑ๋Šฅ์ด ํ–ฅ์ƒ๋˜๋ฉฐ ์ธ๋ฑ์Šค๊ฐ€ ์ฐจ์ง€ํ–ˆ๋˜ ๋””์Šคํฌ๊ณต๊ฐ„์„ ํ™•๋ณดํ•  ์ˆ˜ ์žˆ์Šต๋‹ˆ๋‹ค. ํ•˜์ง€๋งŒ ํ•ด๋‹น ์ธ๋ฑ์Šค๋ฅผ ์‚ฌ์šฉํ•œ ๊ฒ€์ƒ‰ ์ฟผ๋ฆฌ์˜ ์กฐํšŒ ์„ฑ๋Šฅ์ด ๋–จ์–ด์ง€๊ฒŒ ๋ฉ๋‹ˆ๋‹ค. ๋˜ํ•œ ์ธ๋ฑ์Šค๋ฅผ ๋ณ€๊ฒฝํ•˜์—ฌ ์ฟผ๋ฆฌ๋ฅผ ์ตœ์ ํ™”ํ•˜๊ฑฐ๋‚˜ ์ž์ฃผ ์‚ฌ์šฉํ•˜์ง€ ์•Š๋Š” ์ธ๋ฑ์Šค๋ฅผ ์ œ๊ฑฐํ•˜๊ฑฐ๋‚˜ ๋ณ€๊ฒฝํ•˜์—ฌ ๋ถˆํ•„์š”ํ•œ ๋””์Šคํฌ ๊ณต๊ฐ„์„ ์ ˆ์•ฝํ•  ์ˆ˜ ์žˆ์ง€๋งŒ, ์ธ๋ฑ์Šค๋ฅผ ๋ณ€๊ฒฝํ•˜๋Š” ๊ณผ์ •์—์„œ ํ…Œ์ด๋ธ” ์ž ๊ธˆ์ด ์ผ์–ด๋‚˜ ์„ฑ๋Šฅ ์ €ํ•˜๊ฐ€ ๋ฐœ์ƒํ•  ์ˆ˜ ์žˆ๊ณ  ์ธ๋ฑ์Šค ๋ณ€๊ฒฝ ํ›„ ํ•ด๋‹น ์ธ๋ฑ์Šค๋ฅผ ๋‹ค์‹œ ์—…๋ฐ์ดํŠธํ•˜๊ฑฐ๋‚˜ ์ •๋ ฌํ•˜๋Š” ๋ฐ ์‹œ๊ฐ„์ด ์†Œ์š”๋ฉ๋‹ˆ๋‹ค.

4. ๋ฐ์ดํ„ฐ๋ฒ ์ด์Šค ์ •๊ทœํ™”(Normalization)์™€ ์—ญ์ •๊ทœํ™”(Denormalization)

๋ฐ์ดํ„ฐ๋ฒ ์ด์Šค ์ •๊ทœํ™”(Normalization)์™€ ์—ญ์ •๊ทœํ™”(Denormalization)์˜ ์ฐจ์ด์ ์— ๋Œ€ํ•ด ์„ค๋ช…ํ•ด ์ฃผ์„ธ์š”.

๋ฐ์ดํ„ฐ๋ฒ ์ด์Šค ์ •๊ทœํ™”

  • ์ค‘๋ณต์„ ์ตœ์†Œํ™”ํ•˜๊ณ  ๋ฐ์ดํ„ฐ์˜ ๋ฌด๊ฒฐ์„ฑ์„ ์œ ์ง€ํ•˜๊ธฐ ์œ„ํ•ด ๋ฐ์ดํ„ฐ๋ฅผ ์—ฌ๋Ÿฌ ํ…Œ์ด๋ธ”๋กœ ๋‚˜๋ˆ„๋Š” ๊ณผ์ •
  • ์œ ์ง€๋ณด์ˆ˜์— ์šฉ์ดํ•˜์ง€๋งŒ ํ…Œ์ด๋ธ” ๋ถ„๋ฆฌ๋กœ ์ธํ•ด JOIN ์—ฐ์‚ฐ์ด ๋งŽ์•„์ง€๊ณ  ์กฐํšŒ ์„ฑ๋Šฅ์ด ๋–จ์–ด์งˆ ์ˆ˜ ์žˆ์Œ

๋ฐ์ดํ„ฐ๋ฒ ์ด์Šค ์—ญ์ •๊ทœํ™”

  • ์ •๊ทœํ™”๋œ ๋ฐ์ดํ„ฐ๋ฒ ์ด์Šค ๊ตฌ์กฐ๋ฅผ ๋‹ค์‹œ ์ค‘๋ณต ๋ฐ์ดํ„ฐ๋ฅผ ํฌํ•จํ•˜๋„๋ก ๊ฒฐํ•ฉํ•˜๋Š” ๊ณผ์ •
  • ์ž์ฃผ ์กฐํšŒ๋˜๋Š” ๋ฐ์ดํ„ฐ๋ฅผ ํ•œ ํ…Œ์ด๋ธ”์— ๋ชจ์•„์„œ ์ฟผ๋ฆฌ ์†๋„๋ฅผ ๋น ๋ฅด๊ฒŒ ๋งŒ๋“ฆ
  • ๋ฐ์ดํ„ฐ๋ฅผ ์—ฌ๋Ÿฌ ํ…Œ์ด๋ธ”์—์„œ ํ•˜๋‚˜์˜ ํ…Œ์ด๋ธ”๋กœ ํ•ฉ์น˜๊ฑฐ๋‚˜, ์ค‘๋ณต๋ฐ์ดํ„ฐ๋ฅผ ์ผ๋ถ€๋กœ ์ €์žฅํ•˜์—ฌ ์กฐ์ธ ์—ฐ์‚ฐ์„ ์ค„์ด๋„๋ก ์„ค๊ณ„
  • ์ฟผ๋ฆฌ ์„ฑ๋Šฅ์ด ํ–ฅ์ƒ๋˜์ง€๋งŒ ์ค‘๋ณต ๋ฐ์ดํ„ฐ๊ฐ€ ๋ฐœ์ƒํ•ด ์ €์žฅ ๊ณต๊ฐ„์ด ์ฆ๊ฐ€ํ•˜๊ณ  ํ•œ ๊ณณ์—์„œ ๋ฐ์ดํ„ฐ๊ฐ€ ์ˆ˜์ •๋  ๋•Œ ๋‹ค๋ฅธ ํ…Œ์ด๋ธ”์˜ ๋ฐ์ดํ„ฐ๋ฅผ ์ผ๊ด€์„ฑ์žˆ๊ฒŒ ๊ฐฑ์‹ ํ•ด์•ผ ํ•จ

์ •๊ทœํ™”์™€ ์—ญ์ •๊ทœํ™”์˜ ์ฐจ์ด์ ์— ๋Œ€ํ•ด ์„ค๋ช…ํ•ด์ฃผ์„ธ์š”

์ •๊ทœํ™”๋Š” ๋ฐ์ดํ„ฐ๋ฒ ์ด์Šค์—์„œ ์ค‘๋ณต์„ ์ตœ์†Œํ™”ํ•˜๊ณ  ๋ฐ์ดํ„ฐ ๋ฌด๊ฒฐ์„ฑ์„ ๋ณด์žฅํ•˜๋Š” ๋ฐฉ์‹์œผ๋กœ ๋ฐ์ดํ„ฐ๋ฅผ ์—ฌ๋Ÿฌ ํ…Œ์ด๋ธ”์— ๋ถ„๋ฆฌํ•˜์—ฌ ์ €์žฅํ•ฉ๋‹ˆ๋‹ค. ์ด๋ฅผ ํ†ตํ•ด ๋ฐ์ดํ„ฐ ์ค‘๋ณต์„ ๋ฐฉ์ง€ํ•˜๊ณ , ์ผ๊ด€์„ฑ์„ ์œ ์ง€ํ•  ์ˆ˜ ์žˆ์Šต๋‹ˆ๋‹ค. ๋ฐ˜๋ฉด ์—ญ์ •๊ทœํ™”๋Š” ์„ฑ๋Šฅ์„ ๊ฐœ์„ ํ•˜๊ธฐ ์œ„ํ•ด ์ •๊ทœํ™”๋กœ ๋ถ„๋ฆฌ๋œ ํ…Œ์ด๋ธ”์„ ๋‹ค์‹œ ํ•ฉ์น˜๊ฑฐ๋‚˜ ๋ฐ์ดํ„ฐ๋ฅผ ์ค‘๋ณต์‹œ์ผœ ์ €์žฅํ•˜๋Š” ๋ฐฉ์‹์ž…๋‹ˆ๋‹ค. ์กฐ์ธ ์—ฐ์‚ฐ์„ ์ค„์ผ ์ˆ˜ ์žˆ์–ด ์ฝ๊ธฐ ์„ฑ๋Šฅ์„ ๋†’์ผ ์ˆ˜ ์žˆ์Šต๋‹ˆ๋‹ค.

์ •๊ทœํ™”๋œ ๋ฐ์ดํ„ฐ๋ฒ ์ด์Šค์—์„œ ๋ฐœ์ƒํ•  ์ˆ˜ ์žˆ๋Š” ์„ฑ๋Šฅ ๋ฌธ์ œ๋Š” ๋ฌด์—‡์ธ๊ฐ€์š”?

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

์ •๊ทœํ™” ์ง„ํ–‰ ํ›„ ์„ฑ๋Šฅ ๋ฌธ์ œ๊ฐ€ ๋ฐœ์ƒํ•˜๋ฉด ์–ด๋–ป๊ฒŒ ๋Œ€์‘ํ•˜์‹œ๊ฒ ์Šต๋‹ˆ๊นŒ?

๋งŒ์•ฝ ์ •๊ทœํ™” ์ง„ํ–‰ ํ›„ ์„ฑ๋Šฅ ๋ฌธ์ œ๊ฐ€ ๋ฐœ์ƒํ•œ๋‹ค๋ฉด ์—ญ์ •๊ทœํ™”๋ฅผํ†ตํ•ด ์ฝ๊ธฐ ์„ฑ๋Šฅ์„ ๊ฐœ์„ ํ•˜๊ฑฐ๋‚˜ ์ž์ฃผ ์กฐํšŒ๋˜๋Š” ์ปฌ๋Ÿผ์— ์ธ๋ฑ์Šค๋ฅผ ์ถ”๊ฐ€ํ•˜์—ฌ ์กฐํšŒ ์„ฑ๋Šฅ์„ ๊ฐœ์„ ํ•  ์ˆ˜ ์žˆ์Šต๋‹ˆ๋‹ค. ๋˜ํ•œ ๋ถˆํ•„์š”ํ•œ ์กฐ์ธ์ด๋‚˜ ์„œ๋ธŒ์ฟผ๋ฆฌ๋ฅผ ์ œ๊ฑฐํ•˜๊ฑฐ๋‚˜ ์ž์ฃผ ์กฐํšŒ๋˜๋Š” ๋ฐ์ดํ„ฐ๋Š” ์บ์‹ฑ์„ ์ด์šฉํ•ด ๋ฐ์ดํ„ฐ ๋ฒ ์ด์Šค ์กฐํšŒ๋ฅผ ์ตœ์†Œํ™” ํ•  ์ˆ˜ ์žˆ์Šต๋‹ˆ๋‹ค.

์ •๊ทœํ™”๋œ ํ…Œ์ด๋ธ”์—์„œ ๋ฐ์ดํ„ฐ ์‚ฝ์ž… ์„ฑ๋Šฅ์„ ์ตœ์ ํ™”ํ•˜๋ ค๋ฉด ์–ด๋–ป๊ฒŒ ํ•ด์•ผํ• ๊นŒ์š”?

์—ฌ๋Ÿฌ ๊ฐœ์˜ ์‚ฝ์ž… ์ž‘์—…์„ ํ•˜๋‚˜์˜ ํŠธ๋žœ์žญ์…˜์œผ๋กœ ๋ฌถ์–ด ์ฒ˜๋ฆฌํ•˜๊ฑฐ๋‚˜ ๋‹ค์ˆ˜์˜ ๋ฐ์ดํ„ฐ๋ฅผ ํ•œ๋ฒˆ์— ์‚ฝ์ž…ํ•˜๋Š” ๋ฐฐ์น˜ ์ž‘์—…์„ ์‚ฌ์šฉํ•˜์—ฌ ์„ฑ๋Šฅ์„ ๊ฐœ์„ ํ•  ์ˆ˜ ์žˆ์Šต๋‹ˆ๋‹ค. ํ•„์š”ํ•œ ๊ฒฝ์šฐ ์ •๊ทœํ™” ์ˆ˜์ค€์„ ์กฐ์ •ํ•˜์—ฌ ์ผ๋ถ€ ํ…Œ์ด๋ธ”์„ ํ•ฉ์ณ ์„ฑ๋Šฅ์„ ๊ฐœ์„ ํ•  ์ˆ˜ ์žˆ์Šต๋‹ˆ๋‹ค.

๋ฐ์ดํ„ฐ๋ฒ ์ด์Šค์—์„œ ์ค‘๋ณต๋œ ๋ฐ์ดํ„ฐ๋ฅผ ํ”ผํ•˜๊ธฐ ์œ„ํ•ด ์‚ฌ์šฉํ•˜๋Š” ๊ธฐ๋ฒ•์€ ๋ฌด์—‡์ด ์žˆ๋‚˜์š”?

์ •๊ทœํ™”๋ฅผ ์‚ฌ์šฉํ•ด ๋ฐ์ดํ„ฐ๋ฅผ ์—ฌ๋Ÿฌ ํ…Œ์ด๋ธ”๋กœ ๋ถ„๋ฆฌํ•˜์—ฌ ์ค‘๋ณต๋œ ๋ฐ์ดํ„ฐ๋ฅผ ์ œ๊ฑฐํ•  ์ˆ˜ ์žˆ์Šต๋‹ˆ๋‹ค. ๋˜ํ•œ ํ…Œ์ด๋ธ” ์ปฌ๋Ÿผ์— Unique ์ œ์•ฝ์กฐ๊ฑด์„ ์„ค์ •ํ•˜๊ฑฐ๋‚˜ primary Key๋ฅผ ์„ค์ •ํ•˜์—ฌ ์ค‘๋ณต๋œ ๋ฐ์ดํ„ฐ๋ฅผ ๋ฐฉ์ง€ํ•  ์ˆ˜ ์žˆ์Šต๋‹ˆ๋‹ค.

์—ญ์ •๊ทœํ™”๋ฅผ ๊ณ ๋ คํ•  ๋•Œ, ์–ด๋–ค ์ ์„ ๊ฐ€์žฅ ์ค‘์š”ํ•˜๊ฒŒ ๊ณ ๋ คํ•˜๋‚˜์š”?

๋ฐ์ดํ„ฐ์˜ ์ผ๊ด€์„ฑ๊ณผ ์„ฑ๋Šฅ์˜ ๊ท ํ˜•์„ ๊ณ ๋ คํ•ด์•ผํ•ฉ๋‹ˆ๋‹ค. ์—ญ์ •๊ทœํ™”๋ฅผ ํ†ตํ•ด ๋ฐ์ดํ„ฐ๋ฅผ ์ค‘๋ณต์‹œํ‚ฌ ์ˆ˜ ์žˆ์ง€๋งŒ ๊ทธ๋กœ ์ธํ•œ ๋ฐ์ดํ„ฐ ์ผ๊ด€์„ฑ ๋ฌธ์ œ๋ฅผ ํ•ด๊ฒฐํ•ด์•ผ ํ•˜๋ฉฐ, ๋ฐ์ดํ„ฐ ์—…๋ฐ์ดํŠธ์‹œ ๋™๊ธฐํ™” ๋ฌธ์ œ๋ฅผ ๊ณ ๋ คํ•˜๊ณ  ์ฝ๊ธฐ ์„ฑ๋Šฅ์ด ๊ฐœ์„ ๋˜๋Š”์ง€ ํ™•์ธํ•ด์•ผ ํ•ฉ๋‹ˆ๋‹ค.

5. ํŠธ๋žœ์žญ์…˜, ACID

ํŠธ๋žœ์žญ์…˜(Transaction)์ด ๋ฌด์—‡์ด๋ฉฐ, ACID ํŠน์„ฑ์„ ์„ค๋ช…ํ•ด ์ฃผ์„ธ์š”.

ํŠธ๋žœ์žญ์…˜

  • ๋ฐ์ดํ„ฐ๋ฒ ์ด์Šค์—์„œ ์ผ๋ จ์˜ ์ž‘์—…๋“ค์ด ํ•˜๋‚˜์˜ ๋‹จ์œ„๋กœ ์ฒ˜๋ฆฌ๋˜๋„๋ก ๋ณด์žฅํ•˜๋Š” ์ž‘์—…์˜ ์ง‘ํ•ฉ
  • ๋ฐ์ดํ„ฐ์˜ ๋ฌด๊ฒฐ์„ฑ์„ ์œ ์ง€ํ•˜๊ณ  ์—ฌ๋Ÿฌ ์‚ฌ์šฉ์ž๊ฐ€ ๋™์‹œ์— ๋ฐ์ดํ„ฐ์— ์ ‘๊ทผํ•  ๋•Œ ๋ฐœ์ƒํ•  ์ˆ˜ ์žˆ๋Š” ๋ฌธ์ œ๋ฅผ ๋ฐฉ์ง€ํ•˜๋Š” ์—ญํ• 

์›์ž์„ฑ

  • ํŠธ๋žœ์žญ์…˜ ๋‚ด์˜ ๋ชจ๋“  ์ž‘์—…์ด ์™„์ „ํžˆ ์ˆ˜ํ–‰๋˜๊ฑฐ๋‚˜ ์ „ํ˜€ ์ˆ˜ํ–‰๋˜์ง€ ์•Š์•„์•ผ ํ•จ
  • ํŠธ๋žœ์žญ์…˜ ๋‚ด ์ผ๋ถ€ ์ž‘์—…์ด ์‹คํŒจํ•˜๋ฉด ๊ทธ ์ด์ „๊นŒ์ง€์˜ ์ž‘์—…๋„ ๋ชจ๋‘ ์ทจ์†Œ๋˜์–ด์•ผ ํ•˜๋ฉฐ ๋ฐ์ดํ„ฐ๋Š” ํŠธ๋žœ์žญ์…˜ ์‹œ์ž‘ ์ „ ์ƒํƒœ๋กœ ๋กค๋ฐฑ๋˜์–ด์•ผ ํ•จ

์ผ๊ด€์„ฑ

  • ํŠธ๋žœ์žญ์…˜์ด ์™„๋ฃŒ ํ›„์— ์ผ๊ด€๋œ ์ƒํƒœ๋ฅผ ์œ ์ง€ํ•ด์•ผํ•œ๋‹ค๋Š” ํŠน์„ฑ
  • ํŠธ๋žœ์žญ์…˜ ์‹คํ–‰ ์ „ํ›„๋กœ ๊ทœ์น™๊ณผ ์ œ์•ฝ์กฐ๊ฑด์ด ๋ชจ๋‘ ์ง€์ผœ์ ธ์•ผ ํ•จ

๊ฒฉ๋ฆฌ์„ฑ

  • ๋™์‹œ์— ์‹คํ–‰๋˜๋Š” ํŠธ๋žœ์žญ์…˜๋“ค์ด ์„œ๋กœ ์˜ํ–ฅ์„ ๋ฏธ์น˜์ง€ ์•Š๋„๋ก ๋ณด์žฅํ•˜๋Š” ํŠน์„ฑ
  • ํŠธ๋žœ์žญ์…˜๊ฐ„์˜ ์ถฉ๋Œ์„ ๋ฐฉ์ง€ํ•˜๊ณ  ์ผ๊ด€์„ฑ์žˆ๋Š” ๊ฒฐ๊ณผ๋ฅผ ๋ณด์žฅํ•จ

์ง€์†์„ฑ

  • ํŠธ๋žœ์žญ์…˜ ์„ฑ๊ณต ํ›„ ๊ทธ ๊ฒฐ๊ณผ๊ฐ€ ์˜๊ตฌ์ ์œผ๋กœ ๋ฐ์ดํ„ฐ๋ฒ ์ด์Šค์— ๋ฐ˜์˜๋˜์–ด์•ผ ํ•œ๋‹ค๋Š” ํŠน์ง•
  • ๋ณ€๊ฒฝ๋œ ๋ฐ์ดํ„ฐ๋Š” ์†์‹ค๋„์ง€ ์•Š๊ณ  ์ง€์†์ ์œผ๋กœ ์ €์žฅ

ํŠธ๋žœ์žญ์…˜์ด ์‹คํŒจํ–ˆ์„ ๋•Œ ์–ด๋–ค ๋ฐฉ์‹์œผ๋กœ ๋ฐ์ดํ„ฐ๋ฅผ ๋ณต๊ตฌํ•˜๋‚˜์š”?

๋ฐ์ดํ„ฐ๋ฒ ์ด์Šค๋Š” ACID์˜ ์›์ž์„ฑ์„ ๋ณด์žฅํ•˜๋ฉฐ ๋ฐ์ดํ„ฐ์˜ ๋ฌด๊ฒฐ์„ฑ์„ ์œ ์ง€ํ•ฉ๋‹ˆ๋‹ค. ํŠธ๋žœ์žญ์…˜ ์‹คํŒจ ์‹œ ๋ฐ์ดํ„ฐ๋ฒ ์ด์Šค๋Š” ์ด์ „ ์ƒํƒœ๋กœ ๋Œ์•„๊ฐ€๊ธฐ ์œ„ํ•ด ๋กค๋ฐฑ์„ ์ˆ˜ํ–‰ํ•ฉ๋‹ˆ๋‹ค. ๋กค๋ฐฑ์€ ํŠธ๋žœ์žญ์…˜์ด ์ˆ˜ํ–‰ํ•œ ๋ชจ๋“  ๋ณ€๊ฒฝ ์ž‘์—…์„ ์ทจ์†Œํ•˜๊ณ  ํŠธ๋žœ์žญ์…˜์ด ์‹œ์ž‘๋˜๊ธฐ ์ „ ์ƒํƒœ๋กœ ๋ฐ์ดํ„ฐ๋ฅผ ๋ณต์›ํ•ฉ๋‹ˆ๋‹ค.

ํŠธ๋žœ์žญ์…˜์ด ์ผ๊ด€์„ฑ์„ ์œ ์ง€ํ•˜๋Š” ๋ฐฉ๋ฒ•์— ๋Œ€ํ•ด ์„ค๋ช…ํ•ด์ฃผ์„ธ์š”

ํŠธ๋žœ์žญ์…˜์˜ ์ผ๊ด€์„ฑ์€ ACID์˜ ์ผ๊ด€์„ฑ์„ ๊ธฐ๋ฐ˜์œผ๋กœ ํ•ฉ๋‹ˆ๋‹ค. ๋ฐ์ดํ„ฐ๋ฒ ์ด์Šค๋Š” ํ‚ค๋ณธํ‚ค, ์™ธ๋ž˜ํ‚ค ๋“ฑ ๋ฌด๊ฒฐ์„ฑ ์ œ์•ฝ์กฐ๊ฑด์„ ์„ค์ •ํ•˜์—ฌ ๋ฐ์ดํ„ฐ๋ฅผ ์ผ๊ด€๋˜๊ฒŒ ์œ ์ง€ํ•ฉ๋‹ˆ๋‹ค. ๋งŒ์•ฝ ์ค‘๊ฐ„์— ์˜ค๋ฅ˜๊ฐ€ ๋ฐœ์ƒํ•˜๋ฉด ๋กค๋ฐฑํ•˜์—ฌ ์ผ๊ด€์„ฑ์„ ์œ ์ง€ํ•ฉ๋‹ˆ๋‹ค.

๋ฐ์ดํ„ฐ๋ฒ ์ด์Šค์—์„œ ํŠธ๋žœ์žญ์…˜์ด ์™„๋ฃŒ๋˜์ง€ ์•Š์€ ๊ฒฝ์šฐ์— ์–ด๋–ป๊ฒŒ ์ฒ˜๋ฆฌ๊ฐ€ ๋˜๋‚˜์š”?

์‹œ์Šคํ…œ ์žฅ์•  ๋“ฑ์œผ๋กœ ํŠธ๋žœ์žญ์…˜์ด ์™„๋ฃŒ๋˜์ง€ ์•Š์€ ๊ฒฝ์šฐ ํŠธ๋žœ์žญ์…˜ ๋กœ๊ทธ๋ฅผ ์‚ฌ์šฉํ•˜์—ฌ ๋ฐ์ดํ„ฐ์˜ ์ผ๊ด€์„ฑ์„ ๋ณด์žฅํ•ฉ๋‹ˆ๋‹ค. ์‹œ์Šคํ…œ์ด ๋ณต๊ตฌ๋  ๋•Œ ํŠธ๋žœ์žญ์…˜ ๋กœ๊ทธ๋ฅผ ์ด์šฉํ•ด ์™„๋ฃŒ๋˜์ง€ ์•Š์€ ํŠธ๋žœ์žญ์…˜์„ ์‹๋ณ„ํ•˜๊ณ  ์ด๋ฅผ ๋กค๋ฐฑํ•˜์—ฌ ๋ฐ์ดํ„ฐ๋ฒ ์ด์Šค๋ฅผ ์žฅ์•  ๋ฐœ์ƒ ์ „์œผ๋กœ ๋˜๋Œ๋ฆฝ๋‹ˆ๋‹ค.


Feedback

  • ์ข‹์•˜๋˜ ์  : ACID ํŠน์„ฑ, RDB์™€ NoSQL DB์˜ ์ฐจ์ด์ ์— ๋Œ€ํ•ด ์ž˜ ๋งํ–ˆ๋‹ค.
  • ๊ฐœ์„ ํ•  ์ 
    • ์ „์ฒด์ ์œผ๋กœ ๋‹ต๋ณ€์ด ๋‹จ์ˆœํ•˜๋‹ค โ†’ ๋‹ค์–‘ํ•œ ๋‹ต๋ณ€์ด ๋‚˜์˜ค์ง€ ์•Š๊ณ  ๋‹จ๋‹ตํ˜•์œผ๋กœ ๋งํ–ˆ๋‹ค. ์˜ˆ) ์ธ๋ฑ์Šค์˜ ์„ฑ๋Šฅ์ด ๋ฏธ์น˜๋Š” ์˜ํ–ฅ์„ ๋‹จ์ ์— ๋Œ€ํ•ด์„œ๋งŒ ๋งํ–ˆ๋‹ค.
    • ํŠธ๋žœ์žญ์…˜์˜ ๊ฐœ๋…์„ ์ž˜๋ชป ๋งํ–ˆ๋‹ค. ๊ฐœ๋…์ด ์ •์˜๊ฐ€ ์ •ํ™•ํ•˜์ง€ ์•Š์„ ๋•Œ๊ฐ€ ์žˆ๋‹ค.