RDBMS vs NoSQL
๊ด๊ณํ ๋ฐ์ดํฐ๋ฒ ์ด์ค: RDBMS
๊ด๊ณํ ๋ฐ์ดํฐ๋ฒ ์ด์ค(RDBMS)๋ ๋ฐ์ดํฐ๋ฅผ ํ ์ด๋ธ(ํ๊ณผ ์ด) ๊ตฌ์กฐ๋ก ์ ์ฅํ๊ณ ๊ด๋ฆฌํ๋ ๋ฐ์ดํฐ๋ฒ ์ด์ค ๊ด๋ฆฌ ์์คํ ์ผ๋ก, ๋ฐ์ดํฐ ๊ฐ์ ๊ด๊ณ๋ฅผ ๊ธฐ๋ฐ์ผ๋ก ๋์ํ๋ค. ACID ์์น์ ์ค์ํ๋ฉฐ ๋์ ์ ๋ขฐ์ฑ๊ณผ ๋ฐ์ดํฐ ๋ฌด๊ฒฐ์ฑ์ ๋ณด์ฅํ๋ค.
- ํ๋ ฌ & ๊ด๊ณํ & Fixed Schema
- ํ๋ ฌ: 2์ฐจ์ ๋ฐฐ์ด ๋ฐ์ดํฐ → ๋ณต์กํ(๋ค์ฐจ์) ๋ฐ์ดํฐ ํํํ๊ธฐ์ ํ๊ณ๊ฐ ์๋ค. ๋ฐ๋ผ์ Relation์ด ํ์ํ๋ค.
- ๊ด๊ณ: ๋ณต์กํ(๋ค์ฐจ์) ๋ฐ์ดํฐ๋ฅผ ๋ค์์ 2์ฐจ์ Entity(ํ ์ด๋ธ)๋ค๋ก ์ชผ๊ฐ์ด ๋๋๋ค. (PK-FK)
- Fixed Schema: ๊ณ ์ ๋ Column ์ ์๋๋ก ๋ฐ์ดํฐ๋ฅผ ์ ์ฌํ๋ค.
1. ๊ณ ์ ๋ขฐ์ฑ (High Reliability) ๋ฐ ๋ฐ์ดํฐ ๋ฌด๊ฒฐ์ฑ(Data Integrity)
- ACID ์ค์: ํธ๋์ญ์ ์ด ์์ ํ๊ฒ ์ํ๋๋๋ก ๋ณด์ฅํ๋ฉฐ ๋ฐ์ดํฐ ์ผ๊ด์ฑ๊ณผ ๋ฌด๊ฒฐ์ฑ์ ์ ์งํ๋ค.
- Guaranteed Consistency(๊ฐ๋ ฅํ ์ผ๊ด์ฑ):
- ๊ฐ๋ฐ์ ํน์ ์ ํ๋ฆฌ์ผ์ด์ ๋ ๋ฒจ์์ ์ ์ฌ์ ์ผ๋ก ๋น์ผ๊ด ๋ฐ์ดํฐ์ ๋ํด ๊ฑฑ์ ํ ํ์๊ฐ ์๋ค.
- Pessimitic Lock: DMBS๊ฐ ์๋์ผ๋ก ๋ฐ์ดํฐ ๋์์ฑ์ ๊ด๋ฆฌํ๋ค. → ๋ฐ์ดํฐ๋ฒ ์ด์ค ๋นํธ์ธ Lock
2. ํธ๋์ญ์ (Transaction) ์ง์
- ํธ๋์ญ์ ์ ํ๋์ ์์ ๋จ์๋ก ๊ฐ์ฃผ๋๋ฉฐ, ์ฑ๊ณต ์ ๋ชจ๋ ์์ ์ด ์ ์ฉ(Commit)๋๊ณ ์คํจ ์ ๋ชจ๋ ๋กค๋ฐฑ(RollBack) ๋๋ค.
- ์์: ํจํค์ง์ฌํ ์์ฝ ์๋น์ค:
- ํจํค์ง์ฌํ ์์ฝ์ ํญ๊ณต๊ถ, ๊ธฐ์ํ, ์์ ์์ฝ์ด ๋ชจ๋ ์ฑ๊ณตํด์ผ ์๋ฃ๋๋ค.
- ํ๋๋ผ๋ ์คํจํ๋ฉด ์ด์ ์์ ์ ๋ชจ๋ ๋กค๋ฐฑ๋์ด ๋ฐ์ดํฐ๊ฐ ์๋ ์ํ๋ก ๋์๊ฐ๋ค.
- ํธ๋์ญ์ ์ ํ์ฉํ๋ฉด ๋ฐ์ดํฐ ๋ณ์กฐ ๋ฐฉ์ง์ ์์คํ ์ ์ ๋ขฐ์ฑ์ ๋ณด์ฅํ ์ ์๋ค.
3. ๋ฐ์ดํฐ ๊ตฌ์กฐ
- 2์ฐจ์ ํ
์ด๋ธ ๊ตฌ์กฐ:
- ๋ฐ์ดํฐ๋ฅผ ํ(Row)๊ณผ ์ด(Column)๋ก ๊ตฌ์ฑํ์ฌ ์ ํํ๋ ๋ฐ์ดํฐ ๊ด๋ฆฌ.
- ๊ณ ์ ๋ ์คํค๋ง(Fixed Schema):
- ๋ฐ์ดํฐ๋ฅผ ์ ์ฅํ๊ธฐ ์ ์ ๊ตฌ์กฐ๋ฅผ ๋ฏธ๋ฆฌ ์ ์ํด์ผ ํ๋ฉฐ, ์คํค๋ง ๋ณ๊ฒฝ์ด ์ด๋ ต๋ค.
- ๊ด๊ณํ ๋ฐ์ดํฐ์ ๊ฐ์ฒด์งํฅ ๋ฐ์ดํฐ ๊ฐ ๋ณํ์ ์ํด ORM(Object-Relational Mapping)์ด ์ฌ์ฉ๋๋ค.
4. ์ฟผ๋ฆฌ ์ต์ ํ ๋ฐ ์ฑ๋ฅ
- SQL์ ์ฌ์ฉํด ๋ฐ์ดํฐ๋ฅผ ํจ์จ์ ์ผ๋ก ๊ด๋ฆฌํ๋ค.
- DBMS ์ฟผ๋ฆฌ ์ต์ ํ(Query Optimization)๋ฅผ ํตํด ๋น ๋ฅด๊ณ ์ต์ ํ๋ ๋ฐ์ดํฐ ๊ฒ์ ๋ฐ ์ฒ๋ฆฌ๋ฅผ ์ง์ํ๋ค.
- ๋น ๋ฅธ ๋ถ๋ฅ, ์ ๋ ฌ, ํ์ ์๋: ์์ฒด ์ฟผ๋ฆฌ ์ต์ ํ(Parsing → Query Plan → Query Optimization)
5. ํ์ฅ์ฑ๊ณผ ํ๊ณ
- ์์ง์ ํ์ฅ(Scale-up) ๐
- ์ํ์ ํ์ฅ(Scale-out)๐ : ์ ํ์ ์ด๋ฉฐ, ํ์ฅ ์ Guaranteed Consistency ๋๋ฌธ์ ๋๊ธฐ ์๊ฐ์ด ๊ธธ์ด ํ๊ณ๊ฐ ์๋ค.
6. ACID ์์น
RDBMS๋ ํธ๋์ญ์ ์ ์์ ์ฑ์ ๋ณด์ฅํ๊ธฐ ์ํด ACID ์์น์ ๋ฐ๋ฅธ๋ค.
1. A - Atomicity (์์์ฑ):
- ํธ๋์ญ์ ๋ด ์์ ์ด ๋ชจ๋ ์ฑ๊ณตํ๊ฑฐ๋ ๋ชจ๋ ์คํจํ๋ค.
2. C - Consistency (์ผ๊ด์ฑ):
- = Guaranteed Consistency ์ผ๊ด์ฑ
- ๋ฐ์ดํฐ ์ ํฉ์ฑ(Data Integrity): 0 + 1 = 1 → 1 + 1 = 2
- ๋ฐ์ดํฐ ์ ์ฅ ์ ๋ชจ๋ ์ ์ฝ์กฐ๊ฑด๋ค์ ๋ง์กฑํ๋ค.
- ๋ฐ์ดํฐ ์กฐ์ ๋ฐ์ ์งํ, ์กฐํ ์ ์ต์ ๊ฐ์ ๋ณผ ์ ์์ด์ผ ํ๋ค.
- ํธ๋์ญ์ ์ํ ํ ๋ฐ์ดํฐ๋ ํญ์ ์ ํจํ๊ณ ์ผ๊ด๋ ์ํ๋ฅผ ์ ์งํ๋ค.
3. I - Isolation (๊ฒฉ๋ฆฌ์ฑ):
- ๋์์ ์คํ๋๋ ํธ๋์ญ์ ๊ฐ ๊ฐ์ญ ์์ด ๋ ๋ฆฝ์ ์ผ๋ก ์ํ๋๋ค.
- Isolation Level(๊ฒฉ๋ฆฌ ์์ค): Transaction ๋
๋ฆฝ(๊ณ ๋ฆฝ)์ ์ ๋์ ๋ํ ์ ์
- 0 Level: Read uncommitted → Dirty Read ๋ฐ์ ๊ฐ๋ฅ
- 1 Level: Read committed → Non-Repeatable ๋ฐ์ ๊ฐ๋ฅ
- 2 Level: Repeatable Read → Phantom Read ๋ฐ์ ๊ฐ๋ฅ
- 3 Level: Serializable → ์์ ํ ๊ฒฉ๋ฆฌ ๋ณด์ฅ
- Isolation Level(๊ฒฉ๋ฆฌ ์์ค)์ ํตํด ๋
๋ฆฝ(๊ผฌ๋ฆฝ)์ ์ ๋๋ฅผ ์ ์
- ๋ฐ์ดํฐ๋ฒ ์ด์ค: ๋ฐ์ดํฐ๋ฒ ์ด์ค์ ๊ธฐ๋ณธ ์ค์ + ์ฟผ๋ฆฌ๋ง๋ค ์ธ๋ถ ์ค์ ๊ฐ๋ฅ
- ์ ํ๋ฆฌ์ผ์ด์ : ์ฟผ๋ฆฌ๋ง๋ค ์ธ๋ถ ์ค์ ๊ฐ๋ฅ (DB ํธ์ถ ํจ์์ ๊ฐ๊ฐ์ ๋ํด, Srping JPA)
4. D - Durability (์ง์์ฑ):
- ํธ๋์ญ์ ์๋ฃ ํ ์์คํ ์ฅ์ ๊ฐ ๋ฐ์ํด๋ ๋ฐ์ดํฐ๋ ๋ณด์กด๋๋ค.
๋น๊ด๊ณํ ๋ฐ์ดํฐ๋ฒ ์ด์ค: NoSQL
๋น๊ด๊ณํ ๋ฐ์ดํฐ(NoSQL)๋ ๊ด๊ณํ ๋ฐ์ดํฐ๋ฒ ์ด์ค(RDBMS)์ ์คํค๋ง ๊ณ ์ ์ฑ, ํ์ฅ์ฑ ํ๊ณ ๋ฑ์ ๋ฌธ์ ๋ฅผ ๊ทน๋ณตํ๊ธฐ ์ํด ๋ฑ์ฅํ ๋ฐ์ดํฐ ๋ฒ ์ด์ค ๊ด๋ฆฌ ์์คํ ์ด๋ค. ์ ์ฐํ ๋ฐ์ดํฐ ๊ตฌ์กฐ, ์ํ์ ํ์ฅ์ฑ, ๋๊ท๋ชจ ๋ฐ์ดํฐ ์ฒ๋ฆฌ์ ํนํ๋์ด ์์ผ๋ฉฐ, ๋ค์ํ ๋ฐ์ดํฐ ์ ์ฅ ๋ฐฉ์์ ์ง์ํ๋ค.
1. ๊ณ ํ์ฅ์ฑ(High Scalability) ๋ฐ ๊ณ ๊ฐ์ฉ์ฑ(High Availaility)
- ์ํ์ ํ์ฅ(Scale-out): ์ฌ๋ฌ ์๋ฒ์ ๋ฐ์ดํฐ๋ฅผ ๋ถ์ฐํ์ฌ ๋ฌดํ ํ์ฅ์ด ๊ฐ๋ฅํ๋ค.
- ๋ถ์ฐ ์์คํ ์ ํน์ฑ: ์์คํ ์ผ๋ถ๊ฐ ์ฅ์ ๋ฅผ ๊ฒช์ด๋ ๋๋จธ์ง ๋ ธ๋๋ค์ ์ ์์ ์ผ๋ก ์๋ํ๋ค.
- ์ด๋ฒคํธ ์ผ๊ด์ฑ(Eventual Consistency):
- ๋ฐ์ดํฐ ์ผ๊ด์ฑ์ด ์ฆ๊ฐ์ ์ผ๋ก ๋ณด์ฅ๋์ง ์์ผ๋ฉฐ, ์ผ์ ์๊ฐ ํ ๋๊ธฐํ ์๋ฃ
- ๊ฐ๋ฐ์ ์ฑ ์: ๋ฐ์ดํฐ ์ผ๊ด์ฑ ๋ฌธ์ ๋ฅผ ์ ํ๋ฆฌ์ผ์ด์ ๋จ์์ ์ฒ๋ฆฌํด์ผ ํ๋ค.
- Optimistic Lock: ์ํํธ์จ์ด์ ์ผ๋ก ๊ฐ๋ณ ์ฒ๋ฆฌ๊ฐ ํ์ํ๋ค → ์ํํธ์จ์ด์ Lock
- = Optimistic Concurrency Control(OCC) ํน์ Non-locking Concurrency Control
2. Transaction ๋ฏธ์ง์
- ๋ฐ์ดํฐ ๋ณ์กฐ๊ฐ ์ผ์ด๋ ์ ์๋ค → Data Integrity(๋ฐ์ดํฐ ๋ฌด๊ฒฐ์ฑ)์ ๋ณด์ฅํ์ง ์๋๋ค.
- NoSQL์ Lock์ด ์๋ ์ด์ → ์๋ง์ NoSQL ๋ถ์ฐ ๋ฐ์ดํฐ๋ฒ ์ด์ค ๋
ธ๋ ๊ฐ์ ๋ค๋ฅธ Write ์ธ์
.
- 8๊ฐ ๋ถ์ฐ ๋ฐ์ดํฐ๋ฒ ์ด์ค ๋ ธ๋ ์ค 1๊ฐ์ ๋ํด Lock ์ ์ฉ ์, ๋ค๋ฅธ ๋ ธ๋์ Write ๋๋ ์๋ฏธ๊ฐ ์๋ค.
- 8๊ฐ ๋ถ์ฐ ๋ฐ์ดํฐ๋ฒ ์ด์ค ๋ ธ๋ ๋ชจ๋์ ๋ํด Lock ์ ์ฉ ์, ๋ชจ๋ ๋ ธ๋์ ๋ํ ์ ๊ทผ์ด ๋ถ๊ฐ๋ฅํ๋ค → ์ฑ๋ฅ ์ ํ
3. ๋ฐ์ดํฐ ๊ตฌ์กฐ
- ํธ๋ฆฌ ๊ธฐ๋ฐ ๋ฐ์ดํฐ ๊ตฌ์กฐ : ๊ณ์ธต์ , ๋น์ ํ ๋ฐ์ดํฐ ์ ์ฅ์ ์ ํฉํ๋ค.
- Schemaless:
- ๋ฐ์ดํฐ ๊ตฌ์กฐ๋ฅผ ์ฌ์ ์ ์ ์ํ์ง ์์๋ ๋๋ค.
- ์น 2.0(JSON, XML ํฌ๋งท ) ๋ฐ ๋น ๋ฐ์ดํฐ ์ฒ๋ฆฌ์ ์ต์ ํ.
4. BASE ์์ฑ
NoSQL์ ACID ์์ฑ์ ํฌ๊ธฐํ๊ณ BASE ์์น์ ๋ฐ๋ฅธ๋ค.
- Basicalliy Available(๊ธฐ๋ณธ์ ์ธ ๊ฐ์ฉ์ฑ): ์์คํ ์ฅ์ ์์๋ ์ผ๋ถ ๊ธฐ๋ฅ ์ฌ์ฉ ๊ฐ๋ฅ → ๋ถ์ฐ ์์คํ ์ ํน์ง
- Soft State (์ํํธ ์ํ): ๋ฐ์ดํฐ๋ ์ง์์ ์ผ๋ก ๋ณ๊ฒฝ๋ ์ ์๋ค.
- = Eventual Consitency → ์ต์ข ์ ์ผ๋ก ์ผ๊ด์ฑ์ ์ ์งํ๋ค.
- ACID์ ์ฆ๊ฐ์ ์ธ ์ผ๊ด์ฑ๋ณด๋ค๋ ๋์จํ ์ผ๊ด์ฑ์ ์งํฅํ๋ค.
- ์ผ์ ์๊ฐ ํ์๋ ์ ์ฒด ๋ถ์ฐ ์์คํ
์ด ๋๊ธฐํ๋์ด ์ผ๊ด์ฑ์ด ์๋ ์ํ๊ฐ ๋๋ ์ฑ์ง
- 0 + 1 = 1 (Write ์ด์ ) → 1 + 1 = 1 (Write ์งํ, Sync ์ด์ ) → 1 + 1 = 2 (Sync ์๋ฃ)
5. NoSQL ๋ฐ์ดํฐ๋ฒ ์ด์ค์ ์ฃผ์ ์ ํ
์ ํ | ์ค๋ช | ์์ |
ํค-๊ฐ(Key-Value) | ๋จ์ ํค-๊ฐ ์์ผ๋ก ๋ฐ์ดํฐ ์ ์ฅ. ๋น ๋ฅธ ์กฐํ์ ์ ํฉ | Redis,DynamoDB |
๋ฌธ์(Document) | JSON๊ณผ ๊ฐ์ ๋ฌธ์ ํ์์ผ๋ก ๋ฐ์ดํฐ ์ ์ฅ. ๋ฐ์ดํฐ ๊ณ์ธต ๊ตฌ์กฐ๋ฅผ ์์ฐ์ค๋ฝ๊ฒ ํํ | MongoDB, CouchDB |
์ปฌ๋ผ(Column) | ์ด ์ค์ฌ ๋ฐ์ดํฐ ์ ์ฅ ๋ฐฉ์. ๋๊ท๋ชจ ๋ฐ์ดํฐ ๋ถ์์ ์ ๋ฆฌ | Cassandra, HBase |
๊ทธ๋ํ(Graph) | ๋ฐ์ดํฐ ๊ฐ์ ๊ด๊ณ๋ฅผ ๋คํธ์ํฌ ํํ๋ก ์ ์ฅ. ์์ ๋คํธ์ํฌ, ์ถ์ฒ ์์คํ ๋ฑ ๊ด๊ณ ๊ธฐ๋ฐ ์ดํ๋ฆฌ์ผ์ด์ ์ ์ ํฉ. | Neo4j |
6. CAP ์ด๋ก
๋ถ์ฐ ๋ฐ์ดํฐ๋ฒ ์ด์ค๋ Consistency(์ผ๊ด์ฑ), Availability(๊ฐ์ฉ์ฑ), Partition Tolerance(ํํฐ์ ํ์ฉ์ฑ) ์ค ๋ ๊ฐ์ง ํน์ฑ๋ง ์ ํ์ด ๊ฐ๋ฅํ๋ค.
- CP(Database): ์ผ๊ด์ฑ๊ณผ ํํฐ์ ํ์ฉ์ฑ ์ฐ์ . ๋ฐ์ดํฐ ์ ํ์ฑ์ด ์ค์ํ ๊ฒฝ์ฐ ์ ํฉํ๋ค.
- AP(Database): ๊ฐ์ฉ์ฑ๊ณผ ํํฐ์ ํ์ฉ์ฑ ์ฐ์ . ๋๊ท๋ชจ ๋ฐ์ดํฐ์ ๊ณ ๊ฐ์ฉ์ฑ์ด ์ค์ํ ๊ฒฝ์ฐ ์ ํฉํ๋ค.
- CA(Database): ์ผ๊ด์ฑ๊ณผ ๊ฐ์ฉ์ฑ์ ๋์์ ๋ณด์ฅํ๋ ๋ฐ์ดํฐ๋ฒ ์ด์ค๋ ์ผ๋ฐ์ ์ผ๋ก NoSQL์ด ์๋ RDBMS.
๊ด๊ณํ ๋ฐ์ดํฐ๋ฒ ์ด์ค (RDBMS) & ๋น๊ด๊ณํ ๋ฐ์ดํฐ๋ฒ ์ด์ค(NoSQL) ๋น๊ต ๋ฐ ์ ๋ฆฌ
1. ๋ฐ์ดํฐ ๊ตฌ์กฐ ๋ฐ ์คํค๋ง
๊ด๊ณํ ๋ฐ์ดํฐ๋ฒ ์ด์ค (RDBMS) | ๋น๊ด๊ณํ ๋ฐ์ดํฐ๋ฒ ์ด์ค (NoSQL) |
์ ํ ๋ฐ์ดํฐ(Structured): ํ(Row), ์ด(Column) ๊ธฐ๋ฐ์ 2์ฐจ์ ํ ์ด๋ธ | ๋น์ ํ ๋ฐ์ดํฐ(Unstructured): ํค-๊ฐ, ๋ฌธ์ , ์ปฌ๋ผ, ๊ทธ๋ํ ๋ฑ ๋ค์ํ ๋ฐ์ดํฐ ๊ตฌ์กฐ. |
๊ณ ์ ๋ ์คํค๋ง(Fixed Schema): ๋ฐ์ดํฐ ๊ตฌ์กฐ๊ฐ ์ฌ์ ์ ์ ์ ๋์ด์ผ ํจ. | ์คํค๋ง ์์(Schemaless): ๋ฐ์ดํฐ ๊ตฌ์กฐ๋ฅผ ์ ์ฐํ๊ฒ ๋ณ๊ฒฝ ๊ฐ๋ฅ. |
๋ฐ์ดํฐ ๊ด๊ณ(Relational): ํ ์ด๋ธ ๊ฐ ๊ด๊ณ๋ฅผ ํค(Key)๋ก ์ ์. | ๋น๊ด๊ณํ(Non-relational): ๊ด๊ณ ๋์ ๋ ๋ฆฝ์ ์ผ๋ก ๋ฐ์ดํฐ ์ ์ฅ |
2. ์ผ๊ด์ฑ ๋ฐ ๋์์ฑ ์ฒ๋ฆฌ
๊ด๊ณํ ๋ฐ์ดํฐ๋ฒ ์ด์ค (RDBMS) | ๋น๊ด๊ณํ ๋ฐ์ดํฐ๋ฒ ์ด์ค (NoSQL) |
Guranteed Consistency(๋ณด์ฅ๋ ์ผ๊ด์ฑ): ๋ชจ๋ ํธ๋์ญ์ ์์ ๋ฐ์ดํฐ๊ฐ ํญ์ ์ผ๊ด๋จ. | Eventual Consistency(์ต์ข ์ผ๊ด์ฑ): ๋ฐ์ดํฐ ๋๊ธฐํ๊ฐ ์ง์ฐ๋ ์ ์์ผ๋ ์ต์ข ์ ์ผ๋ก ์ผ๊ด๋จ. |
Pessimistic Lock(๋น๊ด์ ๋ฝ): DBMS๊ฐ ๋์์ฑ ์ ์ด๋ฅผ ์๋์ผ๋ก ์ฒ๋ฆฌ | Optimistic Lock(๋๊ด์ ๋ฝ): ๊ฐ๋ฐ์๊ฐ ์ํํธ์จ์ด์ ์ผ๋ก ๋์์ฑ ๊ด๋ฆฌ ํ์ |
3. ํธ๋์ญ์ ์ง์
๊ด๊ณํ ๋ฐ์ดํฐ๋ฒ ์ด์ค (RDBMS) | ๋น๊ด๊ณํ ๋ฐ์ดํฐ๋ฒ ์ด์ค (NoSQL) |
Transaction ์ง์: ๋ฐ์ดํฐ ๋ณ์กฐ ๋ฐฉ์ง๋ฅผ ์ํด ํธ๋์ญ์ ์ ๊ณต | Transaction ๋ฏธ์ง์: ํธ๋์ญ์ ์์ด ๋ฐ์ดํฐ ์ฒ๋ฆฌ ์๋ฅ์ ์ง์ค |
ACID ์์ฑ: ์์์ฑ, ์ผ๊ด์ฑ, ๊ณ ๋ฆฝ์ฑ, ์ง์์ฑ ๋ณด์ฅ | BASE ์์ฑ: ๊ธฐ๋ณธ ๊ฐ์ฉ์ฑ, ์ํํธ ์ํ, ์ต์ข ์ผ๊ด์ฑ |
4. ํ์ฅ์ฑ ๋ฐ ์ฑ๋ฅ
๊ด๊ณํ ๋ฐ์ดํฐ๋ฒ ์ด์ค (RDBMS) | ๋น๊ด๊ณํ ๋ฐ์ดํฐ๋ฒ ์ด์ค (NoSQL) |
์์ง์ ํ์ฅ(Scale-up) | ์ํ์ ํ์ฅ(Scale-out) |
๋ณต์กํ ์ฟผ๋ฆฌ ์ฒ๋ฆฌ ๊ฐ๋ฅ: Join, Aggregation, Nested Queries ๋ฑ ๋ณต์กํ ์ฐ์ฐ ์ฒ๋ฆฌ | ๋น ๋ฅธ ๋ฐ์ดํฐ ์ฝ๊ธฐ/์ฐ๊ธฐ: ๋จ์ํ๊ณ ๊ณ ์์ ๋ฐ์ดํฐ ์ฝ๊ธฐ/์ฐ๊ธฐ ์ฑ๋ฅ ์ต์ ํ |
์ ํ ๋ฐ์ดํฐ ๋ฐ ์ ๋ฐ๋ ๋์ ์์ ์ ์ ํฉ: ๋ฐ์ดํฐ์ ๋ฌด๊ฒฐ์ฑ๊ณผ ์ ํ๋๊ฐ ์ค์ํ ์์คํ (์: ๊ธ์ต, ERP) | ์ ์ฐ์ฑ๊ณผ ๋๊ท๋ชจ ์ฒ๋ฆฌ์ ์ ํฉ: ๋น์ ํ ๋ฐ์ดํฐ์ ๋๊ท๋ชจ ํธ๋ํฝ ์ฒ๋ฆฌ๊ฐ ํ์ํ ์์คํ (์: ์์ ๋ฏธ๋์ด, IoT) |
5. ์ฃผ์ ์ฅ์ ๋ฐ ๋จ์
๊ด๊ณํ ๋ฐ์ดํฐ๋ฒ ์ด์ค (RDBMS) | ๋น๊ด๊ณํ ๋ฐ์ดํฐ๋ฒ ์ด์ค (NoSQL) |
์ฅ์ : ๋ฐ์ดํฐ ๋ฌด๊ฒฐ์ฑ, ํธ๋์ญ์ ์ง์, ๋ณต์กํ ๋ฐ์ดํฐ ๊ด๊ณ ๊ด๋ฆฌ ๊ฐ๋ฅ. | ์ฅ์ : ํ์ฅ์ฑ, ์ ์ฐ์ฑ, ๋น ๋ฅธ ๋ฐ์ดํฐ ์ฐ๊ธฐ/์ฝ๊ธฐ ์ฒ๋ฆฌ. |
๋จ์ : ์คํค๋ง ๋ณ๊ฒฝ ์ด๋ ค์, ์ํ์ ํ์ฅ ํ๊ณ, ๋น์ ํ ๋ฐ์ดํฐ ์ฒ๋ฆฌ ์ด๋ ค์. | ๋จ์ : ๋ฐ์ดํฐ ์ผ๊ด์ฑ ๋ถ์กฑ, ๋ณต์กํ ๊ด๊ณ ๋ฐ์ดํฐ ์ฒ๋ฆฌ ์ด๋ ค์ |
โน๏ธ ์ฐธ๊ณ
[ASAC 6๊ธฐ ๊ฐ์์๋ฃ]
'๐ปDEV-STUDY > DataBase' ์นดํ ๊ณ ๋ฆฌ์ ๋ค๋ฅธ ๊ธ
[DB] ๋ฐ์ดํฐ๋ฒ ์ด์ค ํ์ฅ (Scaling) (0) | 2024.11.29 |
---|---|
[DB] ๋ฐ์ดํฐ๋ฒ ์ด์ค ๋์์ฑ ์ ์ด (Concurrency Control) (1) | 2024.11.29 |
[DB] ํธ๋์ญ์ Isolation Level (0) | 2024.11.28 |