๐ŸŒฑ ๋ฐ์ดํ„ฐ๋ฒ ์ด์Šค(DB)์˜ ์Šคํ‚ค๋งˆ(Schema)!

sh_awtylol4ยท2022๋…„ 6์›” 16์ผ
0

๐ŸŒฑ Today I Learn

๋ชฉ๋ก ๋ณด๊ธฐ
2/16
post-thumbnail

๐Ÿค” ์Šคํ‚ค๋งˆ(Schema)๋ž€?

์ปดํ“จํ„ฐ ๊ณผํ•™์—์„œ ๋ฐ์ดํ„ฐ๋ฒ ์ด์Šค ์Šคํ‚ค๋งˆ(database schema)๋Š” ๋ฐ์ดํ„ฐ๋ฒ ์ด์Šค์—์„œ ์ž๋ฃŒ์˜ ๊ตฌ์กฐ, ์ž๋ฃŒ์˜ ํ‘œํ˜„ ๋ฐฉ๋ฒ•, ์ž๋ฃŒ ๊ฐ„์˜ ๊ด€๊ณ„๋ฅผ ํ˜•์‹ ์–ธ์–ด๋กœ ์ •์˜ํ•œ ๊ตฌ์กฐ์ด๋‹ค.

๋ฐ์ดํ„ฐ์˜ ๊ตฌ์กฐ, ๋ฐ์ดํ„ฐ๋ฒ ์ด์Šค์˜ ์„ค๊ณ„
์Šคํ‚ค๋งˆ๋Š” ๋ฐ์ดํ„ฐ๋ฒ ์ด์Šค๋ฅผ ๊ตฌ์„ฑํ•˜๋Š” ๋ฐ์ดํ„ฐ ๊ฐœ์ฒด(entity), ์†์„ฑ(attribute), ๊ด€๊ณ„(relationship) ๋ฐ ๋ฐ์ดํ„ฐ ์กฐ์ž‘์‹œ ๋ฐ์ดํ„ฐ ๊ฐ’๋“ค์ด ๊ฐ–๋Š” ์ œ์•ฝ ์กฐ๊ฑด๋“ฑ์„ ์ •์˜ํ•œ๋‹ค.

๋ฐ์ดํ„ฐ๋ฒ ์ด์Šค ๊ด€๋ฆฌ ์‹œ์Šคํ…œ(DBMS)์ด ์ฃผ์–ด์ง„ ์„ค์ •์— ๋”ฐ๋ผ ๋ฐ์ดํ„ฐ๋ฒ ์ด์Šค ์Šคํ‚ค๋งˆ๋ฅผ ์ƒ์„ฑํ•˜๋ฉฐ, ๋ฐ์ดํ„ฐ๋ฒ ์ด์Šค ์‚ฌ์šฉ์ž๊ฐ€ ์ž๋ฃŒ๋ฅผ ์ €์žฅ, ์กฐํšŒ, ์‚ญ์ œ, ๋ณ€๊ฒฝํ•  ๋•Œ DBMS๋Š” ์ž์‹ ์ด ์ƒ์„ ํ•œ ๋ฐ์ดํ„ฐ๋ฒ ์ด์Šค ์Šคํ‚ค๋งˆ๋ฅผ ์ฐธ์กฐํ•˜์—ฌ ๋ช…๋ น์„ ์ˆ˜ํ–‰ํ•œ๋‹ค.

โญ๏ธ ์Šคํ‚ค๋งˆ๋Š” ์‚ฌ์šฉ์ž์˜ ๊ด€์ ์— ๋”ฐ๋ผ 3์ธต ๊ตฌ์กฐ๋กœ ๋˜์–ด์žˆ๋‹ค.

์™ธ๋ถ€ ์Šคํ‚ค๋งˆ(External Schema):

ํ”„๋กœ๊ทธ๋ž˜๋จธ๋‚˜ ์‚ฌ์šฉ์ž์˜ ์ž…์žฅ์—์„œ ๋ฐ์ดํ„ฐ๋ฒ ์ด์Šค์˜ ๋ชจ์Šต์„ ์กฐ์ง์˜ ์ผ๋ถ€๋ถ„์„ ์ •์˜ํ•œ ๊ฒƒ

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

๊ฐœ๋… ์Šคํ‚ค๋งˆ(Conceptual Schema):

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

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

๋‚ด๋ถ€ ์Šคํ‚ค๋งˆ(Internal Schema):

์ „์ฒด ๋ฐ์ดํ„ฐ๋ฒ ์ด์Šค์˜ ๋ฌผ๋ฆฌ์  ์ €์žฅ ํ˜•ํƒœ๋ฅผ ๊ธฐ์ˆ ํ•œ ๊ฒƒ

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

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