๋ฐ์ดํฐ๋ฒ ์ด์ค
DBMS(Database Management System), ๋ฐ์ดํฐ ๋ชจ์์ ๋ณด๋ค ํธ๋ฆฌํ๊ณ ํจ์จ์ ์ผ๋ก ๊ด๋ฆฌํ๋ SW
- ๋ฐ์ดํฐ๋ฅผ ์๋ฐํ๊ฒ ๊ธฐ๋กํด ๋ฐ์ดํฐ ๋ฌด๊ฒฐ์ฑ์ ์งํด
- ์ฉ๋์ ๋ง๊ฒ ๋ฐ์ดํฐ ์ฟผ๋ฆฌ๋ฅผ ๋ณ๊ฒฝํ๊ฑฐ๋ค ๋์ ์ ๊ทผ ์ด์์ ํด๊ฒฐํ๊ธฐ ์ํด ํธ๋์ญ์ ๊ฐ๋ ๋์
๋ฐ์ดํฐ๋ฒ ์ด์ค์ ์ข ๋ฅ
1) ๊ด๊ณํ ๋ฐ์ดํฐ๋ฒ ์ด์ค(RDBMS)
๊ด๊ณํ ๋ชจ๋ธ์ ๊ธฐ๋ฐ์ผ๋ก ํ ๋ฐ์ดํฐ๋ฒ ์ด์ค
- ๊ตฌ์กฐํ๋ ํ ์ด๋ธ ํ์ : ๋ฐ์ดํฐ๋ฅผ ํ ์ด๋ธ ํํ๋ก ์ ์ฅ
- ๊ฐ๋ ฅํ ๋ฐ์ดํฐ ๋ฌด๊ฒฐ์ฑ : ์ ํํ๋ ํ ์ด๋ธ๊ณผ ๋ฐ์ดํฐ ๊ตฌ์กฐ๋ฅผ ์ฌ์ฉํด ์ ํ์ฑ, ์ผ๊ด์ฑ, ์ ๋ขฐ์ฑ์ ๋ณด์ฅํจ
- ๋ณต์กํ ์ฟผ๋ฆฌ์ ์ ๋ฆฌ
์ข ๋ฅ
์ค๋ผํด | ์ ์ธ๊ณ์์ ๊ฐ์ฅ ๋๋ฆฌ ์ฌ์ฉ๋๋ ์์ฉ RDBMS. ๋๊ท๋ชจ ๊ธฐ์ ์ ํ๋ฆฌ์ผ์ด์ ์ด๋ ์ ๋ถ์์ ๋ง์ด ์ฌ์ฉํ๋ฉฐ ๊ณ ์ฑ๋ฅ, ๊ณ ๊ฐ์ฉ์ฑ, ๊ฐ๋ ฅํ ๋ณด์ ๊ธฐ๋ฅ์ ์ ๊ณตํจ |
MSSQL | Microsoft์์ ๊ฐ๋ฐํ RDBMS๋ก Windows ํ๊ฒฝ๊ณผ ๊ธด๋ฐํ ํตํฉ๋์ด ์์. C#๋ฑ ์๋์ฐ ๊ธฐ๋ฐ ํ๋ก๊ทธ๋๋ฐ ์ธ์ด์ ์ ๋ง์ |
MySQL | ์คํ์์ค RDBMS |
PostgreSQL | ์คํ์์ค RDBMS, ํ์ฅ์ฑ๊ณผ SQL ํ์ค ์ค์์์ ๊ฐ์ ์ ๋ณด์ |
SQLite | ๋ค๋ฅธ RDBMS์ ๋ฌ๋ฆฌ ์ ํ๋ฆฌ์ผ์ด์
์ ๋ด์ฅ๋์ด ํ๋์ ํ์ผ๋ก DB๋ฅผ ๊ด๋ฆฌํ๊ธฐ ๋๋ฌธ์ ๊ฐ๋ณ๊ณ ์ค์น๊ฐ ํ์ ์์ด ๋ณต์กํ ์ค์ ์์ด ๋ฐ๋ก ์ฌ์ฉํ ์ ์์. ๋ชจ๋ฐ์ผ ์ฑ, ์๋ฒ ๋๋ ์์คํ , ์ํ ์ ํ๋ฆฌ์ผ์ด์ ์์ ์ฌ์ฉ |
2) ๋น๊ด๊ณํ ๋ฐ์ดํฐ๋ฒ ์ด์ค(NoSQL DBMS)
- ์ ์ฐํ ๋ฐ์ดํฐ ๋ชจ๋ธ : ์ ํต์ ์ธ RDBMS์ ๋ฌ๋ฆฌ ๊ณ ์ ๋ ์คํค๋ง๊ฐ ์์. ๋ฐ์ดํฐ๋ฅผ ์ ์ฅํ ๋ ๋ฏธ๋ฆฌ ์ ์๋ ๊ตฌ์กฐ์ ์ฝ๋งค์ด์ง ์๊ณ ํ์์ ๋ฐ๋ผ ๋ฐ์ดํฐ๋ฅผ ์ ์ฐํ๊ฒ ์ ์ฅํ ์ ์์
- ์ํ์ ํ์ฅ : ์ฌ๋ฌ ๋์ ์๋ฒ์ ๋ฐ์ดํฐ๋ฅผ ๋ถ์ฐ์์ผ DB ์ฑ๋ฅ์ ๋์
- ๋๊ท๋ชจ ๋ฐ์ดํฐ ์ฒ๋ฆฌ์ ์ ๋ฆฌ : ๋๋์ ๋น์ ํ ๋ฐ์ดํฐ๋ฅผ ๋น ๋ฅด๊ฒ ์ ์ฅ ๋ฐ ๊ฒ์ํ ์ ์๋๋ก ์ต์ ํ ๋์ด์์
์ข ๋ฅ
mongoDB | json ๊ตฌ์กฐ์ ์ ์ฌํ BSON ํ์์ผ๋ก ๋ฐ์ดํฐ๋ฅผ ์ ์ฅํ๋ ๋ฌธ์ ์งํฅ DB. ์คํค๋ง๊ฐ ๋์ ์ผ๋ก ๋ณํ๋ฉฐ ๋ก์ฐ์ ๊ฐ์ฒด๋ ๋ฐฐ์ด๋ ๋ฃ์ ์ ์์ด์ ๋ฐ์ดํฐ ๊ตฌ์กฐ๊ฐ ์ ์ฐํจ |
์นด์ฐ๋๋ผ | ๋ถ์ฐํ ์ปฌ๋ผ ์งํฅ DB๋ก ๋์ ๊ฐ์ฉ์ฑ, ํ์ฅ์ฑ์ ๊ฐ์ง. ๋๊ท๋ชจ ์์ ๋ฏธ๋์ด ํ๋ซํผ, ๋ฉ์์ง ์์คํ , IoT ๋ฐ์ดํฐ ์ ์ฅ์ ๊ฐ์ ๋๊ท๋ชจ ๋ฐ์ดํฐ ์ฒ๋ฆฌ๊ฐ ํ์ํ ํ๊ฒฝ์์ ์ฃผ๋ก ์ฌ์ฉ ex) ๋ทํ๋ฆญ์ค, ์ธ์คํ๊ทธ๋จ, ๋์ค์ฝ๋ |
Redis | in memory key value ๋ฐ์ดํฐ ์ ์ฅ์๋ก, ์ด๊ณ ์ ๋ฐ์ดํฐ ์ ๊ทผ์ด ํ์ํ ์ ํ๋ฆฌ์ผ์ด์
์ ์ต์ ํ ๋์ด์์. ๋ฐ์ดํฐ๋ฅผ ๋ฉ๋ชจ๋ฆฌ์ ์ ์ฅํด ์๋ต ์๋๊ฐ ๋งค์ฐ ๋นจ๋ผ ์ค์๊ฐ ์ ํ๋ฆฌ์ผ์ด์ ์์ ๋์ ์ฑ๋ฅ์ ๋ฐํํจ. ์บ์/์ธ์ ๊ด๋ฆฌ, ์ค์๊ฐ ๋ถ์, ๋ฉ์์ง ํ์ ์ฌ์ฉ |
neo4j | ๊ทธ๋ํํ DB๋ก ๋
ธ๋์ ์ฃ์ง๋ก ๋ฐ์ดํฐ๋ฅผ ํํํด ๋ฐ์ดํฐ ๊ฐ ๋ณต์กํ ๊ด๊ณ ๊ด๋ฆฌ์ ์ต์ ํ๋์ด์์. ๋ฐ์ดํฐ ๊ฐ ๊ด๊ณ๋ฅผ ์ง์ ์ ์ผ๋ก ๋ชจ๋ธ๋งํ ์ ์์ด ์์ ๋คํธ์ํฌ ๋ถ์, ์ถ์ฒ ์์คํ , ๊ฒฝ๋ก ํ์ ๋ฑ ๊ด๊ณ ์ค์ฌ ์ ํ๋ฆฌ์ผ์ด์ ์์ ์ฌ์ฉ |
๋ฐ์ดํฐ ๋ชจ๋ธ๋ง
์ฃผ์ด์ง ๊ฐ๋ ์ผ๋ก๋ถํฐ ๋ ผ๋ฆฌ์ ์ธ ๋ฐ์ดํฐ ๋ชจ๋ธ์ ๊ตฌ์ฑํ๋ ์์ ์ผ๋ก, ์ผ๋ฐ์ ์ผ๋ก ์ด๋ฅผ ๋ฌผ๋ฆฌ์ ์ธ ๋ฐ์ดํฐ๋ฒ ์ด์ค ๋ชจ๋ธ๋ก ํ์ํ์ฌ ๊ณ ๊ฐ์ ์๊ตฌ์ ๋ฐ๋ผ ํน์ ์ ๋ณด ์์คํ ์ ๋ฐ์ดํฐ๋ฒ ์ด์ค์ ๋ฐ์ํ๋ ์์ ์ ํฌํจํจ
๋ฐ์ดํฐ ๋ชจ๋ธ๋ง์ ๊ณผ์
์๊ตฌ์ฌํญ ๋ถ์ → ๊ฐ๋ ์ ๋ฐ์ดํฐ ๋ชจ๋ธ๋ง → ๋ ผ๋ฆฌ์ ๋ฐ์ดํฐ ๋ชจ๋ธ๋ง → ๋ฌผ๋ฆฌ์ ๋ฐ์ดํฐ ๋ชจ๋ธ๋ง
์๊ตฌ์ฌํญ ๋ถ์ | ์๊ตฌ์ฌํญ ์ ์์ / ๋ช ์ธ์ ๋ฑ์ผ๋ก ์๊ตฌ์ฌํญ ์ ๋ฆฌ |
๊ฐ๋ ์ ๋ฐ์ดํฐ ๋ชจ๋ธ๋ง | ๋ฐ์ดํฐ ๊ตฌ์กฐ์ ๋ํด ์ถ์์ ์ผ๋ก ์ค๊ณ, E-R ๋ค์ด์ด๊ทธ๋จ ์์ฑ |
๋ ผ๋ฆฌ์ ๋ฐ์ดํฐ ๋ชจ๋ธ๋ง | ERD๋ก ๊ทธ๋ฆฐ ์ค๊ณ๋ฅผ DBMS์ ๋ง๊ฒ ๋ณํ |
๋ฌผ๋ฆฌ์ ๋ฐ์ดํฐ ๋ชจ๋ธ๋ง | ์ค์ HW์ ๋ฐ์ดํฐ๋ฅผ ์ด๋ป๊ฒ ์ ์ฅํ ์ง ์ค๊ณ |
์ํฐํฐ
ํ์ค ์ธ๊ณ์ ๋์ ๋๋ ๊ฐ์ฒด๋ฅผ ์๋ฏธํ๋ฉฐ, ๋ฐ์ดํฐ๋ฒ ์ด์ค์์ ์ ์ฉํ ์ ๋ณด๋ฅผ ์ ์ฅํ๊ณ ๊ด๋ฆฌํ๊ธฐ ์ํ ์งํฉ์ฒด๋ก ์ฌ์ฉ
- ์ ํ ์ํฐํฐ : ํํ๋ฅผ ๋ช ํํ ํ์ธํ ์ ์๋ ์ํฐํฐ
- ๋ฌดํ ์ํฐํฐ : ํํ๋ฅผ ํ์ธํ ์ ์๋ ์ํฐํฐ
- ์ฌ๊ฑด ์ํฐํฐ : ํ์ค์ธ๊ณ์์ ์ ๋ฌด๋ฅผ ์ํํจ์ ๋ฐ๋ผ ๋ฐ์๋๋ ์ํฐํฐ
์ธ์คํด์ค(Instance) : ์ํฐํฐ์ ๊ตฌ์ฒด์ ์ธ ์ฌ๋ก๋ก, ์ค์ง์ ์ธ ๋ฐ์ดํฐ๋ฅผ ๊ฐ์ง
์์ฑ
์ํฐํฐ์ ํน์ง, ์ฑ์ง
ER ๋ชจ๋ธ์์์ ์ํฐํฐ๋ RDBMS์ ํ ์ด๋ธ ๊ฐ์ ๊ฐ๋ ์ด๋ค. ์์ฑ์ ์ปฌ๋ผ(column)์ด๊ณ , ๊ฐ ์ธ์คํด์ค๋ ๋ก์ฐ(row)์ ํด๋นํ๋ค.
ํ ์ด๋ธ์์ ๋์ถ ID ์ปฌ๋ผ์ ๋ณดํต ๊ธฐ๋ณธ ํค(PK, Primary Key)๋ก ์ฐ์ธ๋ค.
ISBN ์ปฌ๋ผ์ ์ธ๋ ํค(FK, Foreign Key)๋ก ๋ค๋ฅธ ํ ์ด๋ธ์ ํ(row)์ ์๋ณํ ์ ์๋ ํค๋ฅผ ์๋ฏธํ๋ค.
'๋ฐ์ดํฐ๋ฒ ์ด์ค, SQL' ์นดํ ๊ณ ๋ฆฌ์ ๋ค๋ฅธ ๊ธ
๋ฐ์ดํฐ๋ฒ ์ด์ค / Pagila ์น์ฑ ์์ฑํ๊ธฐ (1) (1) | 2025.05.23 |
---|---|
๋ฐ์ดํฐ๋ฒ ์ด์ค / ORM, Prisma, 3Tier (0) | 2025.05.22 |
๋ฐ์ดํฐ๋ฒ ์ด์ค / JOIN (0) | 2025.05.20 |
๋ฐ์ดํฐ๋ฒ ์ด์ค / ๋ฐ์ดํฐ ๋ชจ๋ธ๋ง (0) | 2025.05.20 |
๋ฐ์ดํฐ๋ฒ ์ด์ค / SQL ๊ตฌ๋ฌธ ๋ฌธ๋ฒ (0) | 2025.05.20 |