CS ๊ณต๋ถ€

๋ฐ์ดํ„ฐ๋ฒ ์ด์Šค์—์„œ์˜ ๋ทฐ(view)?

์€์ง„ 2021. 11. 8. 20:34

๋ทฐ(view)?

  • ๋‹ค๋ฅธ ํ…Œ์ด๋ธ”์„ ๊ธฐ๋ฐ˜์œผ๋กœ ๋งŒ๋“ค์–ด์ง„ ๊ฐ€์ƒ์˜ ํ…Œ์ด๋ธ”๋…ผ๋ฆฌ์ ์œผ๋กœ๋งŒ ์กด์žฌ
    • ํ…Œ์ด๋ธ” : ๋””์Šคํฌ ๊ณต๊ฐ„์ด ํ• ๋‹น๋˜์–ด ๋ฐ์ดํ„ฐ๋ฅผ ์ €์žฅ
    • ๋ทฐ : ๋””์Šคํฌ์— ์ €์žฅ ๊ณต๊ฐ„์ด ํ• ๋‹นX, ๋ฐ์ดํ„ฐ ๋”•์…”๋„ˆ๋ฆฌ ํ…Œ์ด๋ธ”*์— ๋ทฐ์— ๋Œ€ํ•œ ์ •์˜๋งŒ ์ €์žฅ (์งˆ์˜ ๋ฌธ์žฅ๋งŒ์„ ๊ฐ€์ง) 
      • *DBMS Dictionary Table : ๊ฐ์ฒด์˜ ์ƒ์„ฑ / ์ˆ˜์ • / ์‚ญ์ œ๋‚˜ ์‚ฌ์šฉ์ž์˜ ํŠน์ • ํ–‰๋™(์ œ์•ฝ ์กฐ๊ฑด ๋“ฑ)๋“ค์— ์˜ํ•ด ๋ฐœ์ƒํ•˜๋Š” Meta Data๋ฅผ ๋ณด๊ด€ํ•˜๋Š” ์˜ค๋ผํด ์‹œ์Šคํ…œ ํ…Œ์ด๋ธ”
    • = named table, derived table, virtual table
  • ์ „์ฒด ๋ฐ์ดํ„ฐ ์ค‘์—์„œ ์ผ๋ถ€๋งŒ ์ ‘๊ทผํ•  ์ˆ˜ ์žˆ๋„๋ก ์ œํ•œํ•˜๊ธฐ ์œ„ํ•œ ๊ธฐ๋ฒ•
    • ์‚ฌ์šฉ์ž์—๊ฒŒ ์ ‘๊ทผ์ด ํ—ˆ์šฉ๋œ ๋ฐ์ดํ„ฐ๋งŒ์„ ์ œํ•œ์ ์œผ๋กœ ๋ณด์—ฌ์ฃผ๊ธฐ ์œ„ํ•ด ํ•˜๋‚˜ ์ด์ƒ์˜ ๊ธฐ๋ณธ ํ…Œ์ด๋ธ”๋กœ๋ถ€ํ„ฐ ์œ ๋„๋œ ๊ฐ€์ƒ ํ…Œ์ด๋ธ”
  •  ๋ฐ์ดํ„ฐ ๋ณด์ •์ž‘์—…, ์ฒ˜๋ฆฌ๊ณผ์ • ์‹œํ—˜ ๋“ฑ ์ž„์‹œ์ ์ธ ์ž‘์—…์„ ์œ„ํ•œ ์šฉ๋„๋กœ ํ™œ์šฉ

 

๊ณต๊ณผ๋Œ€ํ•™, ์ƒ๊ฒฝ๋Œ€ํ•™

 

 

 

 

๋ทฐ์˜ ์žฅ์ 

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

 

 

๋ทฐ์˜ ๋‹จ์ 

  • ALTER VIEW๋ฌธ์„ ์‚ฌ์šฉํ•  ์ˆ˜ ์—†๋‹ค. ์ •์˜ ๋ณ€๊ฒฝX (์‚ญ์ œ DROP ํ•œ ํ›„ ์žฌ์ƒ์„ฑ CREATE)
  • insert, delete, update ์—ฐ์‚ฐ์— ์ œ์•ฝ์ด ์žˆ๋‹ค.

 

 

 

DBMS์˜ ๋ชฉ์ 

๋ฐ์ดํ„ฐ ๋…๋ฆฝ์„ฑ์˜ ๊ตฌํ˜„

(๋ฐ์ดํ„ฐ์˜ ์ €์žฅ ๊ตฌ์กฐ๋‚˜ ์ฒ˜๋ฆฌ ๋ฐฉ์‹์ด ๋ณ€๊ฒฝ๋˜์–ด๋„ ์‘์šฉ ํ”„๋กœ๊ทธ๋žจ์— ์˜ํ–ฅ์„ ์ฃผ์ง€ ์•Š๋„๋ก ํ•จ)

 

  • ๋…ผ๋ฆฌ์  ๋ฐ์ดํ„ฐ ๋…๋ฆฝ์„ฑ (logical data independence): ๊ฐ๊ฐ์˜ ์‘์šฉ ํ”„๋กœ๊ทธ๋žจ๋“ค์ด ์„œ๋กœ ์˜ํ–ฅ์„ ๋ฐ›์ง€ ์•Š์œผ๋ฉด์„œ ์‘์šฉ ํ”„๋กœ๊ทธ๋žจ์ด ์›ํ•˜๋Š” ๋…ผ๋ฆฌ์  ๊ตฌ์กฐ๋ฅผ ์ œ๊ณตํ•  ์ˆ˜ ์žˆ๋Š” ๋Šฅ๋ ฅ
  • ๋ฌผ๋ฆฌ์  ๋ฐ์ดํ„ฐ ๋…๋ฆฝ์„ฑ (physical data independence): ์‘์šฉ ํ”„๋กœ๊ทธ๋žจ์— ์˜ํ–ฅ์„ ๋ฏธ์น˜์ง€ ์•Š๊ณ  ๋ฐ์ดํ„ฐ์˜ ๋ฌผ๋ฆฌ์  ๊ตฌ์กฐ๋ฅผ ๋ณ€๊ฒฝํ•  ์ˆ˜ ์žˆ๋Š” ๋Šฅ๋ ฅ

๋ทฐ๋Š” ๋…ผ๋ฆฌ์  ๋ฐ์ดํ„ฐ ๋…๋ฆฝ์„ฑ์„ ๊ตฌํ˜„ํ•˜๊ธฐ ์œ„ํ•œ ์ค‘์š”ํ•œ ๊ฐœ๋…

 

 

 

์ถœ์ฒ˜

CHML, https://untitledtblog.tistory.com/124

์ฝ”๋”ฉํŒฉํ† ๋ฆฌ, https://coding-factory.tistory.com/224

๋น„๋‹ฌ์‚ฌ์‘จ, https://sassun.tistory.com/92

์ฉ์ฉ์‚ฐ์ค‘, https://totoscoming-coding.tistory.com/20

์  ํŠธ, https://gent.tistory.com/361