NoSQL 개념 이해하기
NoSQL이 뭔가요?
-
"Not Only SQL"
-
A Non-Relational database(No Tables)
-
Big Data와 실시간 웹앱에서 많이 사용
-
여러 타입의 DB가 있음
Big Data?
- 데이터 양이 급격히 증가하면서 기존 시스템이 저장과 처리에 적합하지 않아지면서 생겨난 용어
- 지난 십여년간 급격히 증가한 데이터들 (SNS, 검색엔진 등)
- 저장, 캡처, 분석, 전송 등 여러 과제들이 있음
NoSQL와 RDBMS의 각각 장점
NoSQL | RDBMS |
---|---|
Big Data 다루기 | 관계형 데이터 다루기 |
유연한 Data Models | 정규화 |
Data Structure 불필요 | 잘 알려진 언어 사용 (SQL) |
스케일 관리 쉬움: Scale out / horizontal scaling | Data Integrity |
관리 비용이 저렴함 | ACID Compliance |
# Scale Up vs Scale Out
Types of NoSQL Databases
- Document Databases - MongoDB, CouchDB
- 유저들이 각자의 프로필 데이터를 편집해서 저장하고 싶을 때 사용
- Column Databases - Apache Cassandra
- 테이블에서 열 별로 데이터를 읽고 쓸 때 유용. 분석할 때 주로 사용
- Key-Value Stores - Redis, Couchbase Server
- 데이터가 단순하고 양이 방대할 때 사용
- Cache Systems - Redis, Memcache
- Key-Value 저장 방식인데, 임시 저장하는 캐시 시스템으로 사용
- Graph Database - Neo4J
- Node와 Edge로 이뤄진 데이터베이스. SNS와 같이 모든 데이터가 연결되어 있는 시스템에서 사용
# Relational vs Document
*출처: Lenni's Technology Blog
Reference
-
Traversy Media, An Introduction To NoSQL Databases
-
Lenni's Technology Blog, [Relational Databases vs. NoSQL Document Databases](- https://lennilobel.wordpress.com/2015/06/01/relational-databases-vs-nosql-document-databases/)
'📒 Tech Note > DB' 카테고리의 다른 글
[SQL] 문자열 합치기 (CONCAT 함수) (0) | 2020.08.02 |
---|---|
NOSQL이랑 친해지기 - MongoDB Compass 실습 (5/5) (0) | 2020.07.14 |
NOSQL이랑 친해지기 - MongoDB 설치 및 환경설정 (4/5) (0) | 2020.07.14 |
NOSQL이랑 친해지기 - 퍼블릭 클라우드와 NoSQL (3/5) (0) | 2020.07.14 |
NOSQL이랑 친해지기 - SQL과 NoSQL를 비교해보자 (2/5) (0) | 2020.07.14 |