1) NoSQL
(1) NoSQL์ด๋
- Not Only SQL ํน์ Non-Relational Operational DataBase์ ์ฝ์๋ก ๋น๊ด๊ณํ ๋ฐ์ดํฐ๋ฒ ์ด์ค๋ฅผ ์ง์นญํ๋ค.
- ๊ธฐ์กด์ RDBMS์ ๊ฐ์ ๊ด๊ณํ ๋ฐ์ดํฐ ๋ชจ๋ธ์ ์ง์ํ๋ฉฐ ๋๋์ ๋ถ์ฐ๋ ๋น์ ํ ๋ฐ์ดํฐ๋ฅผ ์ ์ฅํ๊ณ ์กฐํํ๋๋ฐ ํนํ๋ ๋ฐ์ดํฐ๋ฒ ์ด์ค๋ก ์คํค๋ง ์์ด ์ฌ์ฉํ๊ฑฐ๋ ๋์จํ ์คํค๋ง๋ฅผ ์ ๊ณตํ๋ ์ ์ฅ์์ด๋ค.
→ ์ฃผ๋ก ๋น ๋ฐ์ดํฐ, ๋ถ์ฐ ์์คํ ํ๊ฒฝ์์ ๋์ฉ๋์ ๋ฐ์ดํฐ๋ฅผ ์ฒ๋ฆฌํ๋๋ฐ ์ ํฉํ๋ค.
- ์ฆ, ๊ธฐ์กด์ RDBMS๊ฐ Consistency์ Availability์ ์ค์ ์ ๋์๋ค๋ฉด NoSQL์ Scalability์ Availability์ ์ค์ ์ ๋๊ณ ์๋ ๊ฒ์ด๋ค.
(2) NoSQL์ ํน์ง
โ RDBMS์ ๋ฌ๋ฆฌ ๋ฐ์ดํฐ ๊ฐ์ ๊ด๊ณ (Relation)๋ฅผ ์ ์ํ์ง ์๋๋ค.
- RDBMS๋ ๋ฐ์ดํฐ ๊ฐ์ ๊ด๊ณ๋ฅผ Foreign Key๋ก ์ ์ํ๊ณ Join ์ฐ์ฐ์ ์ํํ ์ ์์ง๋ง NoSQL์ Key-Value ํํ๋ก ์ ์ฅ๋๊ธฐ ๋๋ฌธ์ Join ์ฐ์ฐ์ด ๋ถ๊ฐ๋ฅํ๋ค.
โก RDBMS์ ๋นํด ๋์ฉ๋์ ๋ฐ์ดํฐ๋ฅผ ์ ์ฅํ ์ ์๋ค.
โข ๋ถ์ฐํ ๊ตฌ์กฐ๋ก ์ค๊ณ๋์ด ์๋ค.
- ์ฌ๋ฌ ๊ณณ์ ์๋ฒ์ ๋ฐ์ดํฐ๋ฅผ ๋ถ์ฐ ์ ์ฅํ์ฌ ํน์ ์๋ฒ์ ์ฅ์ ๊ฐ ๋ฐ์ํ์ ๋๋ ๋ฐ์ดํฐ ์ ์ค ํน์ ์๋น์ค ์ค์ง๊ฐ ๋ฐ์ํ์ง ์๋๋ก ํ๋ค.
โฃ ๊ณ ์ ๋์ด ์์ง ์์ ํ ์ด๋ธ ์คํค๋ง๋ฅผ ๊ฐ๋๋ค.
- RDBMS์ ๋ฌ๋ฆฌ ํ ์ด๋ธ(์ปฌ๋ ์ )์ ์คํค๋ง๊ฐ ์ ๋์ ์ด๊ณ ๋ฐ์ดํฐ๋ฅผ ์ ์ฅํ๋ ์ปฌ๋ผ์ด ๊ฐ๊ธฐ ๋ค๋ฅธ ์ด๋ฆ๊ณผ ๋ค๋ฅธ ๋ฐ์ดํฐ ํ์ ์ ๊ฐ๋ ๊ฒ์ด ํ์ฉ๋๋ค.
(3) NoSQL ์ฅ๋จ์
์ฅ์
- RDBMS์ ๋นํด ์ ๋ ดํ ๋น์ฉ์ผ๋ก ๋ถ์ฐ์ฒ๋ฆฌ์ ๋ณ๋ ฌ ์ฒ๋ฆฌ ๊ฐ๋ฅํ๋ค.
- ๋น์ ํ ๋ฐ์ดํฐ ๊ตฌ์กฐ ์ค๊ณ๋ก ์ค๊ณ ๋น์ฉ์ด ๊ฐ์ํ๋ค.
- Big Data ์ฒ๋ฆฌ์ ํจ๊ณผ์
- ๊ฐ๋ณ์ ์ธ ๊ตฌ์กฐ๋ก ๋ฐ์ดํฐ ์ ์ฅ์ด ๊ฐ๋ฅ
- ๋ฐ์ดํฐ ๋ชจ๋ธ์ ์ ์ฐํ ๋ณํ๊ฐ ๊ฐ๋ฅ
๋จ์
- ๋ฐ์ดํฐ ์ ๋ฐ์ดํธ ์ค ์ฅ์ ๊ฐ ๋ฐ์ํ๋ฉด ๋ฐ์ดํฐ ์์ค ๋ฐ์ ๊ฐ๋ฅ
- ๋ง์ ์ธ๋ฑ์ค๋ฅผ ์ฌ์ฉํ๋ ค๋ฉด ์ถฉ๋ถํ ๋ฉ๋ชจ๋ฆฌ๊ฐ ํ์. ์ธ๋ฑ์ค ๊ตฌ์กฐ๊ฐ ๋ฉ๋ชจ๋ฆฌ์ ์ ์ฅ
- ๋ฐ์ดํฐ ์ผ๊ด์ฑ์ด ํญ์ ๋ณด์ฅ๋์ง ์์
→ ์ฆ, ์ต์ข ์ ์ผ๊ด์ฑ (Eventually Consistent)๋ฅผ ์งํฅํ๋ค.
(4) NoSQL ์ข ๋ฅ
Key-Value Database
- ex. Redis, Oracle NoSQL DB, VoldeMorte
Wide-Column Database
- ex. Hbase, Cassandra, GoogleBigTable, Vertica
Document Database
- ex. MongoDB, CouchDB, Riak, Azure Cosmos DB
Graph Database
- ex. Sones, AllegroGraph, neo4j, BlazeGraph, OrientDB
[Reference]
- https://aroundck.tistory.com/949
- https://code-lab1.tistory.com/53
- https://armful-log.tistory.com/56
- https://velog.io/@meme2367/%EB%A9%B4%EC%A0%91-%EC%A4%80%EB%B9%84-CAP-%EC%9D%B4%EB%A1%A0-RDBMS-NOSQL-Eventual-Consistency
๋ฐ์ํ
'๐จโ๐ป Back End > Redis' ์นดํ ๊ณ ๋ฆฌ์ ๋ค๋ฅธ ๊ธ
Redis ์ค์น ๋ฐ ๋ช ๋ น์ด ์ค์ต (2) | 2023.09.03 |
---|---|
Redis (Remote Dictionary Server)์ ๋ํด ์์๋ณด์! (0) | 2023.09.01 |