๋ณธ๋ฌธ ๋ฐ”๋กœ๊ฐ€๊ธฐ

์ž๊ฒฉ์ฆ/์ •๋ณด์ฒ˜๋ฆฌ๊ธฐ์‚ฌ

์ •์ฒ˜๊ธฐ ํ•„๊ธฐ ์š”์•ฝ - ๋ฐ์ดํ„ฐ ์ž…์ถœ๋ ฅ ๊ตฌํ˜„

์ž๋ฃŒ ๊ตฌ์กฐ

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

 

์ž๋ฃŒ ๊ตฌ์กฐ์˜ ๋ถ„๋ฅ˜

 

- ๋ฐฐ์—ด

๋™์ผํ•œ ์ž๋ฃŒํ˜•์˜ ๋ฐ์ดํ„ฐ๋“ค์ด ๊ฐ™์€ ํฌ๊ธฐ๋กœ ๋‚˜์—ด๋˜์–ด ์ˆœ์„œ๋ฅผ ๊ฐ–๊ณ  ์žˆ๋Š” ์ง‘ํ•ฉ

์ฒจ์ž๋ฅผ ์ด์šฉํ•˜์—ฌ ๋ฐ์ดํ„ฐ์— ์ ‘๊ทผ

์ฒจ์ž์˜ ๊ฐœ์ˆ˜์— ๋”ฐ๋ผ n์ฐจ์› ๋ฐฐ์—ด์ด๋ผ ๋ถ€๋ฆ„

 

- ์„ ํ˜• ๋ฆฌ์ŠคํŠธ

์ผ์ •ํ•œ ์ˆœ์„œ์— ์˜ํ•ด ๋‚˜์—ด๋œ ์ž๋ฃŒ ๊ตฌ์กฐ

์—ฐ์† ๋ฆฌ์ŠคํŠธ : ๋ฐฐ์—ด์„ ์ด์šฉํ•œ ์„ ํ˜• ๋ฆฌ์ŠคํŠธ, ์ค‘๊ฐ„์— ๋ฐ์ดํ„ฐ๋ฅผ ์‚ฝ์ž…ํ•˜๊ธฐ ์œ„ํ•ด ์—ฐ์†๋œ ๋นˆ ๊ณต๊ฐ„์ด ์žˆ์–ด์•ผ ํ•˜๋ฉฐ ์‚ฝ์ž…, ์‚ญ์ œ ์‹œ ์ž๋ฃŒ์˜ ์ด๋™ ํ•„์š”

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

 

- ์Šคํƒ

๋ฆฌ์ŠคํŠธ์˜ ํ•œ์ชฝ์œผ๋กœ ์ž๋ฃŒ์˜ ์‚ฝ์ž…, ์‚ญ์ œ๊ฐ€ ์ด๋ฃจ์–ด์ง

LIFO (Last In First Out)์˜ ๊ตฌ์กฐ๋ฅผ ๊ฐ€์ง€๊ณ  ์žˆ์Œ

์˜ค๋ฒ„ ํ”Œ๋กœ์šฐ (overflow) : ๊ธฐ์–ต ๊ณต๊ฐ„์ด ๋ชจ๋‘ ์ฐจ์žˆ๋Š” ์ƒํƒœ์—์„œ ๋ฐ์ดํ„ฐ๋ฅผ ์‚ฝ์ž…ํ•˜๋ฉด ์ผ์–ด๋‚˜๋Š” ํ˜„์ƒ

์–ธ๋” ํ”Œ๋กœ์šฐ (underflow) : ๊ธฐ์–ต ๊ณต๊ฐ„์ด ๋น„์–ด์žˆ๋Š” ์ƒํƒœ์—์„œ ๋ฐ์ดํ„ฐ๋ฅผ ์‚ญ์ œํ•˜๋ฉด ์ผ์–ด๋‚˜๋Š” ํ˜„์ƒ

Top : ์Šคํƒ์— ๊ฐ€์žฅ ๋งˆ์ง€๋ง‰์œผ๋กœ ์‚ฝ์ž…๋œ ์ž๋ฃŒ์˜ ์œ„์น˜

Bottom: ์Šคํƒ์˜ ๊ฐ€์žฅ ๋ฐ”๋‹ฅ

 

- ํ

๋ฆฌ์ŠคํŠธ์˜ ํ•œ์ชฝ์—์„œ๋Š” ์‚ฝ์ž… ๋‹ค๋ฅธ ํ•œ์ชฝ์—์„œ๋Š” ์‚ญ์ œ๊ฐ€ ์ด๋ฃจ์–ด์ง

FIFO (First In First Out)์˜ ๊ตฌ์กฐ๋ฅผ ๊ฐ€์ง€๊ณ  ์žˆ์Œ

F (Front) : ๋จผ์ € ์‚ฝ์ž…๋œ ์ž๋ฃŒ์˜ ๊ธฐ์–ต ๊ณต๊ฐ„์„ ๊ฐ€๋ฆฌํ‚ค๋Š” ํฌ์ธํ„ฐ

R (Rear) : ๋งˆ์ง€๋ง‰์— ์‚ฝ์ž…๋œ ์ž๋ฃŒ์˜ ๊ธฐ์–ต๊ณต๊ฐ„์„ ๊ฐ€๋ฆฌํ‚ค๋Š” ํฌ์ธํ„ฐ

 

- ํŠธ๋ฆฌ

๋…ธ๋“œ์™€ ๊ฐ€์ง€๋ฅผ ์ด์šฉํ•˜์—ฌ ์‚ฌ์ดํด์ด ์—†์ด ๊ตฌ์„ฑํ•œ ๊ทธ๋ž˜ํ”„์˜ ํŠน์ˆ˜ ํ˜•ํƒœ

๋””๊ทธ๋ฆฌ degree: ๋…ธ๋“œ์—์„œ ๋ป—์–ด ๋‚˜์˜จ ๊ฐ€์ง€ ์ˆ˜

๋‹จ๋ง ๋…ธ๋“œ / ์žŽ ๋…ธ๋“œ leaf node : ์ž์‹์ด ์—†๋Š” ๋…ธ๋“œ

ํŠธ๋ฆฌ์˜ ๋””๊ทธ๋ฆฌ degree : ๋…ธ๋“œ๋“ค์˜ ๋””๊ทธ๋ฆฌ ์ค‘ ๊ฐ€์žฅ ๋งŽ์€ ์ˆ˜

 

 

๋ฐ์ดํ„ฐ ์ €์žฅ์†Œ / ๋ฐ์ดํ„ฐ๋ฒ ์ด์Šค / DBMS

์†Œํ”„ํŠธ์›จ์–ด ๊ฐœ๋ฐœ ๊ณผ์ •์—์„œ ๋‹ค๋ฃจ์–ด์•ผ ํ•  ๋ฐ์ดํ„ฐ๋“ค์„ ๋…ผ๋ฆฌ์ ์ธ ๊ตฌ์กฐ๋กœ ์กฐ์งํ™”ํ•˜๊ฑฐ๋‚˜ ๋ฌผ๋ฆฌ์ ์ธ ๊ณต๊ฐ„์— ๊ตฌํ˜„ํ•œ ๊ฒƒ

๋…ผ๋ฆฌ ๋ฐ์ดํ„ฐ ์ €์žฅ์†Œ๋Š” ๋ฐ์ดํ„ฐ ๋ฐ ๋ฐ์ดํ„ฐ ๊ฐ„์˜ ์—ฐ๊ด€์„ฑ, ์ œ์•ฝ ์กฐ๊ฑด์„ ์‹๋ณ„ํ•˜์—ฌ ๋…ผ๋ฆฌ์ ์ธ ๊ตฌ์กฐ๋กœ ์กฐ์งํ™”ํ•œ ๊ฒƒ

๋ฌผ๋ฆฌ ๋ฐ์ดํ„ฐ ์ €์žฅ์†Œ๋Š” ๋…ผ๋ฆฌ ๋ฐ์ดํ„ฐ ์ €์žฅ์†Œ์— ์ €์žฅ๋œ ๋ฐ์ดํ„ฐ์™€ ๊ตฌ์กฐ๋“ค์„ ํ•˜๋“œ์›จ์–ด์ ์ธ ์ €์žฅ์žฅ์น˜์— ์ €์žฅํ•œ ๊ฒƒ

 

๋ฐ์ดํ„ฐ๋ฒ ์ด์Šค์˜ ์ •์˜

ํŠน์ • ์กฐ์ง์˜ ์—…๋ฌด๋ฅผ ์ˆ˜ํ–‰ํ•˜๋Š”๋ฐ ํ•„์š”ํ•œ ๋ฐ์ดํ„ฐ๋“ค์˜ ๋ชจ์ž„

ํ†ตํ•ฉ๋œ ๋ฐ์ดํ„ฐ : ์ž๋ฃŒ์˜ ์ค‘๋ณต์„ ์ตœ์†Œํ™”

์ €์žฅ๋œ ๋ฐ์ดํ„ฐ : ์ปดํ“จํ„ฐ๊ฐ€ ์ ‘๊ทผํ•  ์ˆ˜ ์žˆ๋Š” ์ €์žฅ ๋งค์ฒด์— ์ €์žฅ

์šด์˜ ๋ฐ์ดํ„ฐ : ์กฐ์ง์˜ ๊ณ ์œ ํ•œ ์—…๋ฌด๋ฅผ ์ˆ˜ํ–‰ํ•˜๋Š”๋ฐ ํ•„์š”

๊ณต์šฉ ๋ฐ์ดํ„ฐ : ์—ฌ๋Ÿฌ ์‹œ์Šคํ…œ์ด ๊ณต๋™์œผ๋กœ ์†Œ์œ ํ•˜๊ณ  ์œ ์ง€ํ•จ

 

DBMS (DataBase Management System)

์‚ฌ์šฉ์ž์™€ ๋ฐ์ดํŠธ๋ฒ ์ด์Šค ์‚ฌ์ด์—์„œ ์‚ฌ์šฉ์ž์˜ ์š”๊ตฌ์— ๋”ฐ๋ผ ์ •๋ณด๋ฅผ ์ƒ์„ฑํ•ด์ฃผ๊ณ  ๋ฐ์ดํ„ฐ๋ฒ ์ด์Šค๋ฅผ ๊ด€๋ฆฌํ•˜๋Š” ์†Œํ”„ํŠธ์›จ์–ด

๊ธฐ์กด์˜ ํŒŒ์ผ ์‹œ์Šคํ…œ์ด ๊ฐ€์ง€๋Š” ๋ฐ์ดํ„ฐ์˜ ์ข…์†์„ฑ๊ณผ ์ค‘๋ณต์„ฑ ๋ฌธ์ œ๋ฅผ ํ•ด๊ฒฐํ•˜๊ธฐ ์œ„ํ•ด ์ œ์•ˆ๋œ ์‹œ์Šคํ…œ

 

DBMS์˜ ๊ธฐ๋Šฅ

- ์ •์˜ ๊ธฐ๋Šฅ : ๋ฐ์ดํ„ฐ๋ฒ ์ด์Šค์— ์ €์žฅ๋  ๋ฐ์ดํ„ฐ์˜ ํƒ€์ž…๊ณผ ๊ตฌ์กฐ์— ๋Œ€ํ•ด ๋ช…์‹œํ•˜๋Š” ๊ธฐ๋Šฅ

- ์กฐ์ž‘ ๊ธฐ๋Šฅ: ๋ฐ์ดํ„ฐ๋ฅผ ๊ฒ€์ƒ‰, ๊ฐฑ์‹ , ์‚ฝ์ž…, ์‚ญ์ œ ๋“ฑ ์ฒ˜๋ฆฌํ•˜๊ธฐ ์œ„ํ•ด ์‚ฌ์šฉ์ž์™€ ๋ฐ์ดํ„ฐ๋ฒ ์ด์Šค ๊ฐ„ ์ธํ„ฐํŽ˜์ด์Šค ์ˆ˜๋‹จ์„ ์ œ๊ณตํ•˜๋Š” ๊ธฐ๋Šฅ

- ์ œ์–ด ๊ธฐ๋Šฅ

: ๋ฐ์ดํ„ฐ์˜ ๋ฌด๊ฒฐ์„ฑ์ด ์œ ์ง€๋˜๋„๋ก ์ œ์–ด, ์‚ฌ์šฉ์ž์—๊ฒŒ ํ—ˆ๊ฐ€๋œ ๋ฐ์ดํ„ฐ๋งŒ ์ ‘๊ทผํ•˜๋„๋ก ๋ณด์•ˆ์„ ์œ ์ง€ํ•˜๊ณ  ๊ถŒํ•œ์„ ๊ฒ€์‚ฌ

์—ฌ๋Ÿฌ ์‚ฌ์šฉ์ž๊ฐ€ ๋™์‹œ์— ์ ‘๊ทผํ•˜์—ฌ ๋ฐ์ดํ„ฐ๋ฅผ ์ฒ˜๋ฆฌํ•  ๋•Œ ์ •ํ™•์„ฑ์„ ์œ ์ง€ํ•˜๋„๋ก ๋ณ‘ํ–‰ ์ œ์–ด

 

DBMS์˜ ์žฅ๋‹จ์ 

์žฅ์ 

- ๋ฐ์ดํ„ฐ ๋…๋ฆฝ์„ฑ, ์ผ๊ด€์„ฑ, ๋ฌด๊ฒฐ์„ฑ ์œ ์ง€

- ๋ณด์•ˆ ์œ ์ง€

- ๋ฐ์ดํ„ฐ ์‹ค์‹œ๊ฐ„ ์ฒ˜๋ฆฌ, ํ†ตํ•ฉ ๊ด€๋ฆฌ, ํ‘œ์ค€ํ™” ๊ฐ€๋Šฅ

 

๋‹จ์ 

- ์ „๋ฌธ๊ฐ€ ๋ถ€์กฑ

- ์ „์‚ฐํ™” ๋น„์šฉ ์ฆ๊ฐ€

- ํŒŒ์ผ์˜ ๋ฐฑ์—…๊ณผ ํšŒ๋ณต์ด ์–ด๋ ค์›€

- ์‹œ์Šคํ…œ์ด ๋ณต์žกํ•จ

 

 

๋ฐ์ดํ„ฐ ์ž…์ถœ๋ ฅ

์†Œํ”„ํŠธ์›จ์–ด์˜ ๊ธฐ๋Šฅ์„ ๊ตฌํ˜„ํ•˜๊ธฐ ์œ„ํ•ด ๋ฐ์ดํ„ฐ๋ฒ ์ด์Šค์— ๋ฐ์ดํ„ฐ๋ฅผ ์ž…๋ ฅ, ์ถœ๋ ฅํ•˜๋Š” ์ž‘์—…

 

SQL

๊ตญ์ œ ํ‘œ์ค€ ๋ฐ์ดํ„ฐ๋ฒ ์ด์Šค ์–ธ์–ด

๋ฐ์ดํ„ฐ ์ •์˜์–ด, ์กฐ์ž‘์–ด, ์ œ์–ด์–ด๋กœ ๊ตฌ๋ถ„๋จ

 

๋ฐ์ดํ„ฐ ์ ‘์† (Data Mapping)

ํ”„๋กœ๊ทธ๋ž˜๋ฐ ์ฝ”๋“œ์™€ ๋ฐ์ดํ„ฐ๋ฒ ์ด์Šค์˜ ๋ฐ์ดํ„ฐ๋ฅผ ์—ฐ๊ฒฐํ•˜๋Š” ๊ฒƒ

 

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

ํ•˜๋‚˜์˜ ๋…ผ๋ฆฌ์  ๊ธฐ๋Šฅ์„ ์ˆ˜ํ–‰ํ•˜๊ธฐ ์œ„ํ•œ ์ž‘์—…์˜ ๋‹จ์œ„ ๋˜๋Š” ํ•œ๊บผ๋ฒˆ์— ์ˆ˜ํ–‰๋ผ์•ผ ํ•  ์ผ๋ จ์˜ ์—ฐ์‚ฐ

 

TCL (Transation Contral Language)

ํŠธ๋žœ์žญ์…˜์„ ์ œ์–ดํ•˜๊ธฐ ์œ„ํ•ด ์‚ฌ์šฉ๋˜๋Š” ๋ช…๋ น์–ด

 

- COMMIT

: ํŠธ๋žœ์žญ์…˜ ์ฒ˜๋ฆฌ๊ฐ€ ๋น„์ •์ƒ์ ์œผ๋กœ ์ข…๋ฃŒ๋˜์–ด ํŠธ๋žœ์žญ์…˜์ด ์ˆ˜ํ–‰ํ•œ ๋ณ€๊ฒฝ ๋‚ด์šฉ์„ ๋ฐ์ดํ„ฐ๋ฒ ์ด์Šค์— ๋ฐ˜์˜

 

- ROLLBACK

: ํŠธ๋žœ์žญ์…˜ ์ฒ˜๋ฆฌ๊ฐ€ ๋น„์ •์ƒ์ ์œผ๋กœ ์ข…๋ฃŒ๋˜์–ด ๋ฐ์ดํ„ฐ๋ฒ ์ด์Šค์˜ ์ผ๊ด€์„ฑ์ด ๊นจ์กŒ์„ ๋•Œ ํŠธ๋žœ์žญ์…˜์ด ํ–‰ํ•œ ๋ชจ๋“  ๋ณ€๊ฒฝ ์ž‘์—…์„ ์ทจ์†Œํ•˜๊ณ  ์ด์ „ ์ƒํƒœ๋กœ ๋˜๋Œ๋ฆผ

 

- SAVEPOINT (CHECKPOINT)

: ํŠธ๋žœ์žญ์…˜ ๋‚ด์— ROLLBACK ํ•  ์œ„์น˜์ธ ์ €์žฅ์ ์„ ์ง€์ 

 

 

์ ˆ์ฐจํ˜• SQL

ํ”„๋กœ๊ทธ๋ž˜๋ฐ ์–ธ์–ด์™€ ๊ฐ™์ด ์—ฐ์†์ ์ธ ์‹คํ–‰์ด๋‚˜ ๋ถ„๊ธฐ, ๋ฐ˜๋ณต ๋“ฑ์˜ ์ œ์–ด๊ฐ€ ๊ฐ€๋Šฅํ•œ SQL

๋‹จ์ผ SQL ๋ฌธ์žฅ์œผ๋กœ ์ฒ˜๋ฆฌ๊ฐ€ ์–ด๋ ค์šด ์—ฐ์†์ ์ธ ์ž‘์—…์„ ์ฒ˜๋ฆฌํ•˜๋Š”๋ฐ ์ ํ•ฉ

BEGIN ~END ํ˜•์‹ ๋ธ”๋ก ๊ตฌ์กฐ๋กœ ๋˜์–ด ์žˆ์–ด ๊ธฐ๋Šฅ๋ณ„ ๋ชจ๋“ˆํ™”๊ฐ€ ๊ฐ€๋Šฅ

 

 

 

 

 

 

 

2020 ~ 2022 ์ •๋ณด์ฒ˜๋ฆฌ๊ธฐ์‚ฌ ํ•„๊ธฐ ์ถœ์ œ ๊ธฐ์ค€

ํ•„๊ธฐ ๊ฒ€์ •๋ฐฉ๋ฒ• : ๊ฐ๊ด€์‹ ๋ฌธ์ œ์ˆ˜ : 100 ์‹œํ—˜์‹œ๊ฐ„ : 2์‹œ๊ฐ„ 30๋ถ„ ์†Œํ”„ํŠธ์›จ์–ด ์„ค๊ณ„ 20๋ฌธํ•ญ ์š”๊ตฌ์‚ฌํ•ญ ํ™•์ธ ํ˜„ํ–‰ ์‹œ์Šคํ…œ ๋ถ„์„ ์š”๊ตฌ์‚ฌํ•ญ ํ™•์ธ ๋ถ„์„ ๋ชจ๋ธ ํ™•์ธ ํ™”๋ฉด ์„ค๊ณ„ UI ์š”๊ตฌ์‚ฌํ•ญ ํ™•์ธ UI ์„ค๊ณ„ ์• ํ”Œ๋ฆฌ์ผ€์ด

ezyoon.tistory.com

 

 

 

 

 

 

 

 

๋ฐ˜์‘ํ˜•