RDBMS(Relational Database Management System)

๊ด€๊ณ„ํ˜• ๋ฐ์ดํ„ฐ๋ฒ ์ด์Šค(้—œไฟ‚ๅฝข Database, Relational Database, ๋ฌธํ™”์–ด: ๊ด€๊ณ„์ž๋ฃŒ๊ธฐ์ง€, ๊ด€๊ณ„ํ˜•์ž๋ฃŒ๊ธฐ์ง€, RDB)๋Š” ํ‚ค(key)์™€ ๊ฐ’(value)๋“ค์˜ ๊ฐ„๋‹จํ•œ ๊ด€๊ณ„๋ฅผ ํ…Œ์ด๋ธ”ํ™” ์‹œํ‚จ ๋งค์šฐ ๊ฐ„๋‹จํ•œ ์›์น™์˜ ์ „์‚ฐ์ •๋ณด ๋ฐ์ดํ„ฐ๋ฒ ์ด์Šค์ด๋‹ค.

๊ฑฐ์น ๊ฒŒ ํ‘œํ˜„ํ•˜์ž๋ฉด ํ•˜๋‚˜์˜ ์—ด์„ ์†์„ฑ์„ ์˜๋ฏธํ•˜๊ณ  ํ–‰์„ ํŠœํ”Œ๋กœ ๊ตฌ๋ถ„ํ•œ๋‹ค.

์ด๋Ÿฌํ•œ ํŠœํ”Œ์˜ ์ง‘ํ•ฉ(Table)์„ Relation Model์ด๋ผ๊ณ ๋„ ๋ถ€๋ฅธ๋‹ค.

3๊ฐ€์ง€ ๊ฐœ๋…

๊ด€๊ณ„ํ˜• ๋ชจ๋ธ์—์„œ ์“ฐ์ด๋Š” 3๊ฐœ์˜ ๊ฐœ๋…์„ ์ •ํ™•ํžˆ ์ดํ•ดํ•ด์•ผํ•œ๋‹ค.

  1. Relation

  2. Tuple

  3. Attribute

Attribute

์†์„ฑ์˜ ๊ฒฝ์šฐ ์—ด์ด๋ผ๊ณ  ์„ค๋ช…ํ•˜์˜€๋Š”๋ฐ ์—‘์…€๊ณผ ๊ฐ™์ด ํ•ด๋‹น ์—ด์˜ ์ด๋ฆ„๊ณผ ํƒ€์ž…์„ ์ •ํ•ด์ค€๋‹ค๊ณ  ๋ณผ ์ˆ˜ ์žˆ๋‹ค.

์˜ˆ๋ฅผ ๋“ค๋ฉด, ์ด๋ฆ„ / ๋ฌธ์ž์—ด ๋‚˜์ด / ์ •์ˆ˜ ์™€ ๊ฐ™์€๊ฒŒ ์†์„ฑ์ด๋‹ค.

Tuple

ํ•˜๋‚˜์˜ ํ–‰์„ ํŠœํ”Œ์ด๋ผ๊ณ  ํ•˜์˜€๋Š”๋ฐ, (์†์„ฑ,๊ฐ’)์˜ ์ง‘ํ•ฉ์ด๋‹ค.

์ข€ ๋” ์‰ฝ๊ฒŒ ์„ค๋ช…ํ•˜์ž๋ฉด, Attribute์—์„œ ์„ค๋ช…ํ•˜์˜€ ๋“ฏ.

[Attribute](์ด๋ฆ„/๋ฌธ์ž์—ด)/[Value](๊ฒฌ์šฐ) ์™€ ๊ฐ™๋‹ค.

์œ„ ์ฒ˜๋Ÿผ, Attribute์˜ ์ด๋ฆ„์ด key ๊ฐ’์ด ๋˜๋ฉฐ, RDBMS๋Š” Null๋„ ํ—ˆ์šฉํ•œ๋‹ค.

Relation

๊ฑฐ์น ๊ฒŒ ํ‘œํ˜„ํ•˜๋ฉด, ํ•˜๋‚˜์˜ Table ์ด๋ผ ํ‘œํ˜„ํ•  ์ˆ˜ ์žˆ๋‹ค.

๊ด€๊ณ„ ๋Œ€์ˆ˜

ํ•˜๋‚˜ ์ด์ƒ์˜ Relation์œผ๋กœ ์ƒˆ๋กœ์šด Relation์„ ๋งŒ๋“ค ์ˆ˜ ์žˆ๋‹ค.

์ฆ‰, People์˜ ์ •๋ณด๋ฅผ ๋ชจ์•„๋‘” Table๊ณผ Company ์ •๋ณด๋ฅผ ๋ชจ์•„๋‘” Table์ด ์žˆ๋‹ค๊ณ  ๊ฐ€์ • ํ•ด๋ณด์ž.

์ด ๋•Œ, People์—๋Š” ์ด๋ฆ„ ๋‚˜์ด ์„ฑ๋ณ„ ์ด๋ž€ Attribute๊ฐ€ ์žˆ๋‹ค๊ณ  ๊ฐ€์ • ํ–ˆ์„ ๋•Œ.

์ด๋ฆ„ , ๋‚˜์ด ๋งŒ ๋ณด์—ฌ์ฃผ๋Š” ์ƒˆ๋กœ์šด Relation์„ ๋งŒ๋“ค ์ˆ˜ ์žˆ๊ณ . ( ์ด๋ฅผ Projection ์ด๋ผ ํ•จ )

๋˜๋Š” ๋‚˜์ด๊ฐ€ 20์‚ด ์ด์ƒ ๋งŒ ๋ณด์—ฌ์ฃผ๋Š” Tuple์„ ์„ ํƒํ•  ์ˆ˜ ์žˆ๋‹ค ( ์ด๋ฅผ Selection ์ด๋ผ ํ•จ )

๋˜, ํ˜„์žฌ People๊ณผ Company์˜ Table์„ ๊ฐ๊ฐ ์ฐธ์กฐํ•˜์—ฌ ์ƒˆ๋กœ์šด Relation์„ ๋งŒ๋“ค ์ˆ˜ ์žˆ๋‹ค ( ์ด๋ฅผ Cartesian Product ๋ผ๊ณ  ํ•จ )

Last updated