DataBase Management System(DBMS)

hyunsukiยท2021๋…„ 8์›” 11์ผ
0

BD

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

DataBase Management System์ด๋ž€?๐Ÿ™„

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

DBMS์˜ ๊ธฐ๋Šฅ๐Ÿ’ป

๊ธฐ๋Šฅ์„ค๋ช…
Data ์ •์˜์—ฌ๋Ÿฌ ์‚ฌ์šฉ์ž์˜ ๋ฐ์ดํ„ฐ๋ฅผ ํ†ตํ•ฉ, ์ €์žฅ, ๊ณต์œ ํ•  ์ˆ˜ ์žˆ๊ฒŒ ๋ฐ์ดํ„ฐ ๋ชจ๋ธ์— ๋”ฐ๋ผ ์ •์˜
Data ์กฐ์ž‘์‚ฌ์šฉ์ž์™€ DB ๊ฐ„ ์˜์‚ฌ์†Œํ†ต, DB ์ ‘๊ทผ ๋ฐ ์กฐ์ž‘ ๊ธฐ๋Šฅ ์ œ๊ณต (์‚ฝ์ž…, ์‚ญ์ œ, ๋ณ€๊ฒฝ ๋ฐ ๊ฒ€์ƒ‰)
Data ์ œ์–ด์ผ๊ด€์„ฑ, ๋ฌด๊ฒฐ์„ฑ, ๋ณด์•ˆ์œ ์ง€, ๋ฐฑ์—…๊ณผ ํŒŒ์† ํšŒ๋ณต, ์ธ์ฆ, ๋ณด์•ˆ, ๋ณ‘ํ–‰์ œ์–ด

DBMS์˜ ์ข…๋ฅ˜๐Ÿ“‘

DBMS์˜ ์ข…๋ฅ˜์—๋Š” Hierachical DBMS (HDBMS, ๊ณ„์ธตํ˜•), Network DBMS (NDBMS, ๋งํ˜•), Relational DBMS (RDBMS, ๊ด€๊ณ„ํ˜•), Object - Oriented DBMS (OODBMS, ๊ฐ์ฒด์ง€ํ–ฅ), Objected-Relational DBMS (ORDBMS, ๊ฐ์ฒด๊ด€๊ณ„)๊ฐ€ ์žˆ๋‹ค.

โ• Hierachical DBMS (HDBMS, ๊ณ„์ธตํ˜• ๋ฐ์ดํ„ฐ๋ฒ ์ด์Šค ๊ด€๋ฆฌ ์‹œ์Šคํ…œ)

HDBMS๋Š” ๋ฐ์ดํ„ฐ์˜ ๊ด€๊ณ„๋ฅผ ํŠธ๋ฆฌ ๊ตฌ์กฐ๋กœ ์ •์˜ํ•˜๊ณ , ๋ถ€๋ชจ, ์ž์‹ ํ˜•ํƒœ๋ฅผ ๊ฐ–๋Š” ๊ตฌ์กฐ์ด๋‹ค. ์ฆ‰, ๋ฐ์ดํ„ฐ๊ฐ€ ๊ณ„์ธต์ ์ด๊ณ  ์ƒํ•˜ ์ข…์†์ ์ธ ๊ด€๊ณ„๋กœ ๊ตฌ์„ฑ๋˜๋ฉฐ, ๋ฐ์ดํ„ฐ ์ค‘๋ณต ๋ฌธ์ œ๊ฐ€ ์žˆ๋‹ค.

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

โ• Network DBMS (NDBMS, ๋งํ˜• ๋ฐ์ดํ„ฐ๋ฒ ์ด์Šค ๊ด€๋ฆฌ ์‹œ์Šคํ…œ)

NDBMS๋Š” ๊ณ„์ธตํ˜• ๋ฐ์ดํ„ฐ์˜ ๋ฐ์ดํ„ฐ ์ค‘๋ณต ๋ฌธ์ œ๋ฅผ ํ•ด๊ฒฐํ•˜๊ณ , ๋ ˆ์ฝ”๋“œ ๊ฐ„ ๋‹ค์–‘ํ•œ ๊ด€๊ณ„๋ฅผ ๊ทธ๋ฌผ์ฒ˜๋Ÿผ ๊ฐ–๋Š” ๊ตฌ์กฐ์ด๋‹ค. ํ•˜์ง€๋งŒ ๋ณต์žกํ•œ ๊ตฌ์กฐ ๋•Œ๋ฌธ์— ์ดํ›„ ๊ตฌ์กฐ ๋ณ€๊ฒฝ์—์„œ ์–ด๋ ค์›€์„ ๊ฐ€์ง„๋‹ค. ๋‹ค์‹œ ๋งํ•ด ๋ฐ์ดํ„ฐ ๊ตฌ์กฐ๋ฅผ ๋„คํŠธ์›Œํฌ ์ƒ์˜ ๋…ธ๋“œ(์ž๋ฃŒ) ํ˜•ํƒœ๋กœ ๋…ผ๋ฆฌ์ ์œผ๋กœ ํ‘œํ˜„ํ•œ ๋ฐ์ดํ„ฐ ๋ชจ๋ธ๋กœ์จ ๊ฐ๊ฐ์˜ ๋…ธ๋“œ๋ฅผ ์„œ๋กœ ๋Œ€๋“ฑํ•œ ๊ด€๊ณ„๋กœ ๊ตฌ์„ฑํ•œ ๋ชจ๋ธ์ด๋‹ค.

๐Ÿ‘๐Ÿป์žฅ์  : HDBMS ๋ฌธ์ œ์ ์ธ ์ƒํ•˜ ์ข…์† ๋ฐ ๋ฐ์ดํ„ฐ์˜ ์ค‘๋ณต ๋ฌธ์ œ๋ฅผ ํ•ด๊ฒฐํ–ˆ๋‹ค.
๐Ÿ‘Ž๐Ÿป๋‹จ์  : ๊ตฌ์„ฑ๊ณผ ์„ค๊ณ„๊ฐ€ ๋ณต์žกํ•˜๊ณ , ๊ถ๊ทน์ ์œผ๋กœ ๋ฐ์ดํ„ฐ์˜ ์ข…์†์„ฑ์„ ํ•ด๊ฒฐํ•˜์ง€ ๋ชปํ–ˆ๋‹ค.

โ• Relational DBMS (RDBMS, ๊ด€๊ณ„ํ˜• ๋ฐ์ดํ„ฐ๋ฒ ์ด์Šค ๊ด€๋ฆฌ ์‹œ์Šคํ…œ)

RDBMS๋Š” ํ–‰(raw, record)๊ณผ ์—ด(column)๋กœ ๊ตฌ์„ฑ๋œ table ๊ฐ„์˜ ๊ด€๊ณ„๋ฅผ ๋‚˜ํƒ€๋‚ผ ๋•Œ ์‚ฌ์šฉํ•œ๋‹ค. ์ฆ‰, ์ˆ˜ํ•™์  ๋…ผ๋ฆฌ ๊ด€๊ณ„๋ฅผ ํ…Œ์ด๋ธ”์˜ ํ˜•ํƒœ๋กœ ๊ตฌ์„ฑํ•˜๋ฉด์„œ ์ปฌ๋Ÿผ ์ผ๋ถ€๋ฅผ ๋‹ค๋ฅธ ํ…Œ์ด๋ธ”๊ณผ ์ค‘๋ณตํ•˜์—ฌ ๊ฐ ํ…Œ์ด๋ธ”๊ณผ์˜ ์ƒ๊ด€๊ด€๊ณ„๋ฅผ ์ •์˜ํ•œ๋‹ค. ์ด๋ ‡๊ฒŒ ํ‘œํ˜„๋œ ๋ฐ์ดํ„ฐ๋Š” RDBMS๋Š” Structured Query Language(SQL)์„ ์‚ฌ์šฉํ•˜์—ฌ ์ ‘๊ทผ ๋ฐ ๊ด€๋ฆฌํ•œ๋‹ค.

RDBMS๋Š” ๊ฐ€์žฅ ๋Œ€ํ‘œ์ ์œผ๋กœ ์“ฐ์ด๋Š” DBMS์ด๋‹ค. Oracle ์‚ฌ์˜ Oracle, Microsoft ์‚ฌ์˜ SQL Server, Oracle ์‚ฌ์˜ MySQL, Maria DB ์žฌ๋‹จ์˜ Maria DB, IBM ์‚ฌ์˜ DB2, Sybase ์‚ฌ์˜ Sybase ์™ธ์˜ ์—ฌ๋Ÿฌ ์‹œ์Šคํ…œ์ด ์ด์— ์†ํ•œ๋‹ค.

๐Ÿ‘๐Ÿป์žฅ์  : ์ ์‘๋ ฅ์ด ๋†’์•„ ๋ณ€ํ™”ํ•˜๋Š” ์—…๋ฌด์— ์‰ฝ๊ฒŒ ํ™œ์šฉํ•˜์—ฌ ์œ ์ง€๋ณด์ˆ˜๊ฐ€ ํŽธ๋ฆฌ๊ณ , ์ƒ์‚ฐ์„ฑ๋„ ํ–ฅ์ƒ๋œ๋‹ค.
๐Ÿ‘Ž๐Ÿป๋‹จ์  : ๋‹ค๋ฅธ DBMS ๋ณด๋‹ค ๋” ๋งŽ์€ ์ž์›์ด ํ™œ์šฉ๋˜์–ด ์‹œ์Šคํ…œ์˜ ๋ถ€ํ•˜๊ฐ€ ๋†’๋‹ค.

โ• Object-Oriented DBMS (OODBMS, ๊ฐ์ฒด์ง€ํ–ฅ ๋ฐ์ดํ„ฐ๋ฒ ์ด์Šค ๊ด€๋ฆฌ ์‹œ์Šคํ…œ)

OODBMS๋Š” ๋ฐ์ดํ„ฐ ๋ฒ ์ด์Šค์— ๊ฐ์ฒด ์ง€ํ–ฅ ๊ฐœ๋…์„ ๋„์ž…ํ•˜์—ฌ ๋งŒ๋“ค์–ด์ง„ ๋ชจ๋ธ์ด๋‹ค. ๊ณ„์ธต(Class)์— ๋”ฐ๋ผ ๋ฐ์ดํ„ฐ ๊ตฌ์กฐ๋ฅผ ํ‘œํ˜„ํ•˜๊ณ  ๋ฐ์ดํ„ฐ์™€ ๊ทธ ์กฐ์ž‘ ์ ˆ์ฐจ๋ฅผ ํ•จ๊ป˜ ๋‹ค๋ฃฌ๋‹ค.

๐Ÿ‘๐Ÿป์žฅ์  : ์„ค๊ณ„ํ•œ ๋ฐฉ๋ฒ•๋ก ์ด ๋ฐ์ดํ„ฐ๋ฒ ์ด์Šค ์ƒ์—์„œ ๊ทธ๋Œ€๋กœ ์ง€์›ํ•ด์ค€๋‹ค. ๋˜ํ•œ data์™€ method๋ฅผ ๊ฐ์ฒด๋กœ ๋ฌถ์Œ์œผ๋กœ์จ ํ”„๋กœ๊ทธ๋ž˜๋ฐ ์–ธ์–ด์™€ ๋ฐ์ดํ„ฐ๋ฒ ์ด์Šค๊ฐ€ ๋‹จ์ผ์˜ ์Šคํ‚ค๋งˆ๋ฅผ ๊ณต์œ ํ•˜๊ฒŒ ๋œ๋‹ค.
๐Ÿ‘Ž๐Ÿป๋‹จ์  : ๊ธฐ๋ณธ์ ์ธ ๋ฐ์ดํ„ฐ๋ฒ ์ด์Šค ๊ธฐ๋Šฅ(ํŠธ๋žœ์žญ์…˜ ์ฒ˜๋ฆฌ, ๋™์‹œ ์ฒ˜๋ฆฌ ๊ฐ€๋Šฅํ•œ ์‚ฌ์šฉ์ž์˜ ์ˆ˜, ์—๋Ÿฌ๋ณต๊ตฌ์™€ ๋ฐฑ์—… ๊ธฐ๋Šฅ ๋“ฑ)์—์„œ RDBMS์— ํ›จ์”ฌ ๋ชป ๋ฏธ์นœ๋‹ค.

โ• Objected-Relational DBMS (ORDBMS, ๊ฐ์ฒด๊ด€๊ณ„ ๋ฐ์ดํ„ฐ๋ฒ ์ด์Šค ๊ด€๋ฆฌ ์‹œ์Šคํ…œ)

ORDBMS๋Š” ๊ธฐ์กด์˜ ๊ด€๊ณ„ํ˜• ๋ฐ์ดํ„ฐ ๋ฒ ์ด์Šค (RDBMS) ๋กœ์„œ์˜ ์•ˆ์ •๋œ ์„ฑ๋Šฅ์— ๊ธฐ๋ฐ˜ํ•˜๋ฉด์„œ ๋™์‹œ์— ๊ฐ์ฒด ์ง€ํ–ฅ ๋ชจ๋ธ์˜ ํŠน์ง•์„ ์ถ”๊ฐ€ํ•œ ๋ชจ๋ธ์ด๋‹ค.

OODBMS์™€ ORDBMS๋Š” ๊ฐ์ฒด์— ๋Œ€ํ•ด ๊ด€์ ์˜ ์ฐจ์ด๋ฅผ ๋ณด์ธ๋‹ค.

์ฒซ์งธ, ๋ฐ์ดํ„ฐ์˜ ์ €์žฅ ๋ฐ ์ ‘๊ทผ ๋ฐฉ๋ฒ•์— ๋Œ€ํ•œ ๊ด€์ ์˜ ์ฐจ์ด์ด๋‹ค. OODBMS๋Š” ๋ชจ๋“  ์ •๋ณด๋ฅผ ๊ฐ์ฒด ํ˜•ํƒœ๋กœ๋งŒ ์ €์žฅํ•˜๊ณ  ๋ชจ๋“  ๊ฐ์ฒด ์ •๋ณด๊ฐ€์œ ์ผํ•œ ๊ฐ์ฒด ์‹๋ณ„์ž(OID: Object Identifier)๋ฅผ ์‚ฌ์šฉํ•  ๊ฒƒ์„ ์ฃผ์žฅํ•œ๋‹ค. ๋ฐ˜๋ฉด, ORDBMS๋Š” ์ •๋ณด๊ฐ€ ํ…Œ์ด๋ธ” ํ˜•ํƒœ ๋˜๋Š” ๊ฐ์ฒด ํ˜•ํƒœ๋กœ ์ €์žฅ๋˜๋„๋ก ํ•˜๊ณ  ์ฃผ๋œ ํ‚ค(PK: Primary Key) ์‚ฌ์šฉ์„ ์ฃผ์žฅํ•œ๋‹ค. ๋˜ํ•œ PK๊ฐ€ ์—†์„ ์‹œ์—๋งŒ OID ์‚ฌ์šฉ์„ ์ฃผ์žฅํ•œ๋‹ค.

๋‘˜์งธ, ํ”„๋กœ๊ทธ๋ž˜๋ฐ ์–ธ์–ด์™€ ๋ฐ์ดํ„ฐ ๋ฒ ์ด์Šค ์–ธ์–ด์— ๋Œ€ํ•œ ๊ด€์ ์˜ ์ฐจ์ด๋ฅผ ๋ณด์ธ๋‹ค. OOBBMS์—์„œ๋Š” ๊ฐ์ฒด์˜ ์ ‘๊ทผ ๋ฐ ๋‹ค๋ฅธ ๊ฐ์ฒด๋กœ์˜ ์ด๋™์‹œ ๊ฐ์ฒด ์ง€ํ–ฅ ํ”„๋กœ๊ทธ๋ž˜๋ฐ ์–ธ์–ด๋‚˜ ๋‹ค๋ฅธ ์ฐธ์กฐ ๊ธฐ๋ฒ•์„ ์ด์šฉํ•˜๊ธฐ ๋•Œ๋ฌธ์— ๊ฐ์ฒด ๊ฐ„์˜ ํฌํ•จ ๊ด€๊ณ„๋ฅผ ๊ฐ–๋Š” ๋ณตํ•ฉ ๊ฐ์ฒด๋ฅผ ํšจ์œจ์ ์œผ๋กœ ์ €์žฅํ•  ์ˆ˜ ์—†๋‹ค. ๋ฐ˜๋ฉด, ORDBMS๋Š” ๊ฐ’์— ๊ธฐ๋ฐ˜ํ•œ ๋ฐ์ดํ„ฐ ์ ‘๊ทผ ๋ฐฉ์‹์„ ๊ฐ€์ง€๊ธฐ ๋•Œ๋ฌธ์— ๋ฐ์ดํ„ฐ ์ ‘๊ทผ ์‹œ ์ฐธ์กฐ ์ •๋ณด ๊ธฐ๋ฐ˜์˜ ๋ชจ๋“  ์ ‘๊ทผ์„ ์ง€์›ํ•œ๋‹ค.

๐Ÿ‘๐Ÿป์žฅ์  : RDBMS์˜ ์•ˆ์ •์„ฑ๊ณผ OODBMS์˜ ์žฅ์ ์„ ๋ชจ๋‘ ๊ฐ€์ง€๊ณ  ์žˆ๋‹ค.
๐Ÿ‘Ž๐Ÿป๋‹จ์  : ํ‘œ์ค€ํ™” ์ง€์—ฐ์œผ๋กœ ์ œํ’ˆ๊ฐ„ ์ฐจ์ด ์กด์žฌ ๋ฐ ํ˜ผ๋ž€ ์•ผ๊ธฐํ•œ๋‹ค.

profile
๋’ค๋Šฆ๊ฒŒ ์‹œ์ž‘๋œ ๋ฐ์ดํ„ฐ ๋ถ„์„๊ฐ€ ์ƒํ™œ

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