2023. 2. 18. 20:50ใDatabase/DB ์คํฐ๋
๋ค์ด๊ฐ๊ธฐ ์์
ํด๋น ์ง๋ฌธ์ ์ธ์ ๊ฐ ๋ฉด์ ์์ ์ง์ ์์ฒญ ๋ฐ์๋ ์ง๋ฌธ์ด๊ธฐ๋ ํ๊ณ , ๊ตฌ๊ธ๋ง์ ํด๋ณด์๋ ์ผ์ข ์ ๋ฉด์ ๋จ๊ณจ ์ง๋ฌธ์ผ๋ก ๋ถ๋ฆฐ๋ค.
๋ง์นจ ์คํฐ๋์ ์ฃผ์ ๊ฐ ๋๊ธฐ๋ ํ๊ณ , ์์ผ๋ก๋ ์ด์ ๋ํด ๊ณ ๋ฏผํ๊ณ ๋ ๋๋ตํ ์ผ์ด ๋ง๋ค๊ณ ์ฌ๊ฒจ ์ด๋ฅผ ์ ๋ฆฌํ๋ค.
RDB
RDB๋ ์ ํต์ ์ธ ํํ์ ๊ด๊ณํ ๋ฐ์ดํฐ๋ฒ ์ด์ค๋ฅผ ์๋ฏธํ๋ค.
์ผ๋ฐ์ ์ผ๋ก ๋ง์ด ์ฐ์ด๋ MySQL, PostgreSQL ๋ฑ์ด ์ด์ ํด๋นํ๋ค.
๊ธฐ๋ณธ์ ์ผ๋ก ๋ฐ์ดํฐ๋ฅผ 2์ฐจ์ ํ๋ ฌ(ํ ์ด๋ธ) ํํ๋ก ๊ด๋ฆฌํ๋ฉฐ, ๋ฐ์ดํฐ์ ํ์์ ์ผ์ ํ๊ฒ ์ ์งํ๊ธฐ ์ํ ์คํค๋ง๊ฐ ์กด์ฌํ๋ค.
๋ฐ์ดํฐ์ ์กฐํ, ์ฝ์ , ์์ , ์ญ์ ์ SQL์ ์ด์ฉํ๋๋ฐ, ์ด๋ค DB๋ฅผ ์ฌ์ฉํ๋๋์ ๋ฐ๋ผ ์ธ๋ถ์ ์ธ ํจ์์ ์ฌ์ฉ๋ฒ ๋ฑ์ด ๋ฌ๋ผ์ง ์๋ ์์ง๋ง ํฐ ํ์ ์๋ก ๋์ผํ๋ค.
DB์ ์ํ์ ํ์ฅ์ด ์ด๋ ค์ด ํธ์ธ๋ฐ, ์ด๋ RDB ๋ด ๋ฐ์ดํฐ๋ค์ด ๋ค๋ฅธ ๋ฐ์ดํฐ๋ค๊ณผ ๊ด๊ณ๋ฅผ ๋งบ๊ณ ์๊ณ , ์ด๋ฌํ ๋ฐ์ดํฐ๋ค์ ์ผ๊ด์ฑ์ด ์ค์ํ๊ธฐ ๋๋ฌธ์ด๋ค.
RDB ํ๊ฒฝ์์ ๋ฐ์ดํฐ๊ฐ ์ฌ๋ฌ ๊ฐ์ ์๋ฒ์ ๋ถ์ฐ๋์ด ์์ ๊ฒฝ์ฐ, ๋ชจ๋ ์๋ฒ์ ๋ฐ์ดํฐ๊ฐ ์ผ๊ด์ฑ์ ์ ์งํ๋์ง ์ถ๊ฐ์ ์ธ ์ฒ๋ฆฌ๊ฐ ํ์ํ๋ค.
๋ฐ๋ผ์ ์ํ ํ์ฅ ์ ๋ฐ์ดํฐ์ ์ผ๊ด์ฑ์ ์ ์งํ๊ธฐ ํ๋ค๊ณ , ์ด๋ฅผ ์ํ ์์ ์ ์๋นํ ๋ถํ๋ฅผ ์ ๋ฐํ ์ ์๋ค.
๋ํ ๊ฐ๋ฐ, ์ด์ ๊ณผ์ ์์ ์คํค๋ง๋ฅผ ๋ณ๊ฒฝํ๋ ๊ฒ์ด ๋ถํธํ๊ธฐ ๋๋ฌธ์ ์ด๊ธฐ ๋ชจ๋ธ ์ค๊ณ์ ์์ด ์๊ฐ์ ์์์ผ ํ๋ค.
๋ฐ์ดํฐ์ ์ผ๊ด์ฑ, ์ ํฉ์ฑ์ ์ค์์ํ๊ธฐ ๋๋ฌธ์ ์ํ ์์คํ ์ด๋ ์ ์ ๊ณ์ ์ ๋ณด ๊ด๋ฆฌ ๋ฑ์ ์ด์ฉ๋๋ค.
NoSQL
NoSQL์ด๋ Not-Only-SQL์ ์ฝ์๋ก SQL์ด ์๋ ๋ฐฉ์์ผ๋ก๋ ๋ฐ์ดํฐ๋ฅผ ์ฒ๋ฆฌํ๋ DB๋ค์ ์ผ์ปซ๋๋ค. (Not Only ๋ผ๋ ๋ง์ฒ๋ผ SQL์ ์์ ๋ฐฐ์ ํ๋ ๊ฒ์ ์๋๋ค. MongoDB๋ ์ํ์น ์นด์ฐ๋๋ผ ๋ฑ์ DB์์๋ SQL๊ณผ ์ ์ฌํ ์ฟผ๋ฆฌ ์ธ์ด๋ฅผ ์ ๊ณตํ๊ธฐ๋ ํ๋ค.)
NoSQL DB๋ ๋ ๋ค์ ๋ค์ํ ์๋ถ๋ฅ๋ก ๋๋๋๋ฐ
MongoDB๋ก ๋ํ๋๋ ๋ํ๋จผํธ ๊ธฐ๋ฐ DB,
Redis๋ก ๋ํ๋๋ ํค-๋ฐธ๋ฅ ๊ธฐ๋ฐ DB, ๊ทธ ์ธ์ ์นผ๋ผ ํจ๋ฐ๋ฆฌ DB, ๊ทธ๋ํ DB ๋ฑ์ด ์กด์ฌํ๋ค.
NoSQL์ RDB์ ๋นํด ์ํ์ ํ์ฅ์ ์ฉ์ดํ ๊ตฌ์กฐ๋ฅผ ๊ฐ๋๋ค.
์๋ํ๋ฉด NoSQL์ ๋ฐ์ดํฐ๋ค์ ์๋ก ๊ด๊ณ๊ฐ ์กด์ฌํ์ง ์๊ธฐ ๋๋ฌธ์ด๋ค.
๋ฐ๋ผ์ ๋น๊ต์ ๊ฐ๋จํ ๊ธฐ์ค์ ํตํด ๋ฐ์ดํฐ๋ค์ ๋๋ ๋ค ์ด๋ฅผ ์ฌ๋ฌ ์๋ฒ์ ๋ถ์ฐ ์ ์ฅํ๊ธฐ ์ฉ์ดํ๋ค.
๋ํ NoSQL์ RDB์ ๋ฌ๋ฆฌ ์คํค๋ง๊ฐ ์ ๋์ ์ผ๋ก ๋ณํํ ์ ์๊ธฐ ๋๋ฌธ์, ์๋ก์ด ํ๋์ ์ถ๊ฐ ๋ฐ ์ญ์ , ๋ณ๊ฒฝ์ด ์ฝ๊ฒ ์ด๋ฃจ์ด์ง๋ค.
์ด์ NoSQL์ ๋์ ์คํค๋ง, ํน์ ์คํค๋ง๋ฆฌ์ค ๊ตฌ์กฐ๋ฅผ ๊ฐ๋๋ค๊ณ ๋ ์ด์ผ๊ธฐํ๋ค.
์ด๋ฌํ ํน์ฑ ์ NoSQL์ ๋น์ ํ ๋ฐ์ดํฐ๋ ๋ค์ํ ๋ฐ์ดํฐ ๊ตฌ์กฐ๋ฅผ ๋ค๋ฃจ๋๋ฐ ์ด์ ์ด ์๋ค.
์ํ ํ์ฅ์ ํตํ ์ฑ๋ฅ ํฅ์, ๋น์ ํ ๋ฐ์ดํฐ ์ฒ๋ฆฌ์ ์ฉ์ด์ฑ ๋๋ฌธ์ ๋๊ท๋ชจ ๋ฐ์ดํฐ ์ฒ๋ฆฌ๋ ์์ ๋ฏธ๋์ด ๋ฑ์ ๋ง์ด ์ด์ฉ๋๋ค.
๋น๊ต
RDB | NoSQL | |
๋ฐ์ดํฐ ๊ตฌ์กฐ | 2์ฐจ์ ํ ์ด๋ธ | ๋ํ๋จผํธ, ํค-๋ฐธ๋ฅ ๋ฑ |
๋ฐ์ดํฐ ์ง์ | SQL ์ด์ฉ | SQL ๋ฟ ์๋๋ผ DB๊ฐ ์์ฒด ์ ๊ณตํ๋ ๋ค์ํ ๋ฐฉ์ ์ฌ์ฉ |
์คํค๋ง | ์๊ฒฉํ ์คํค๋ง ์ด์ฉ | ๋์ ์คํค๋ง ์ด์ฉ |
ํ์ฅ์ฑ | ์ํ ํ์ฅ์ ์ด๋ ค์ ์กด์ฌ | ์ํ ํ์ฅ ์ฉ์ด |
์ด์ฉ ์ฌ๋ก | ์ ํฉ์ฑ, ์ผ๊ด์ฑ์ด ์ค์ํ ๋ถ์ผ(ex. ์ํ, ๊ธ์ต, ๊ณ์ ์ ๋ณด) | ๋น์ ํ ๋ฐ์ดํฐ, ๋๊ท๋ชจ ๋ฐ์ดํฐ ์ฒ๋ฆฌ (ex. ์์ ๋ฏธ๋์ด, ๊ฒ์) |
'Database > DB ์คํฐ๋' ์นดํ ๊ณ ๋ฆฌ์ ๋ค๋ฅธ ๊ธ
DB ์ธ๋ฑ์ค ์์ฑ์ ์ฌ์ด๋ ์ดํํธ(with Mysql) (1) | 2023.11.25 |
---|---|
DB ์คํ๊ณํ ํ์ธ๋ฒ(in PostgreSQL) (1) | 2023.11.11 |
ํธ๋์ญ์ ๊ฒฉ๋ฆฌ ์์ค (0) | 2023.02.17 |
SQL Injection ๊ณต๊ฒฉ๊ณผ ๋์ (0) | 2023.02.11 |
์๋ฃ๊ตฌ์กฐ in DB ์ธ๋ฑ์ค (0) | 2023.02.11 |