Notice
Recent Posts
Recent Comments
Link
일 | 월 | 화 | 수 | 목 | 금 | 토 |
---|---|---|---|---|---|---|
1 | 2 | 3 | ||||
4 | 5 | 6 | 7 | 8 | 9 | 10 |
11 | 12 | 13 | 14 | 15 | 16 | 17 |
18 | 19 | 20 | 21 | 22 | 23 | 24 |
25 | 26 | 27 | 28 | 29 | 30 | 31 |
Tags
- docker
- git
- Til
- 오블완
- 쿠키(cookie)
- github
- web
- flask
- SQL
- 티스토리챌린지
- CS
- 장고
- 도커
- nginx
- redis
- Python
- django
- 개발공부
- Doker
- viewsets
- JWT
- 아티클 스터디
- Wil
- 자료구조
- 연습
- 코딩테스트
- 파이썬
- ERD
- 세션(Session)
- NoSQL
Archives
- Today
- Total
SteadyDrills
NoSQL 본문
241129
NoSQL
NoSQL(Not Only SQL)은 구조화된 스키마를 강제하지 않고 비관계형 데이터 저장소로 설계된 데이터베이스이다. 데이터 구조, 확장성, 속도, 유연성을 중요시하고, 다양한 데이터 모델(문서, 키-값, 그래프, 열 기반 등)을 지원한다.
NoSQL의 장단점
장점
- 확장성(Scalability)
- 수평적 확장이 가능하며, 데이터가 증가할 때 서버 추가를 통해 현재의 성능을 유지할 수 있다.
- 유연한 스키마(Flexible Schema)
- 데이터 스키마를 미리 정의하지 않아도 되며, 다양한 형태의 데이터를 저장할 수 있다.
- JSON, BSON, 키-값, 그래프 등 다양한 데이터 모델을 지원한다.
- 고성능(High Performance)
- 대량의 읽기/쓰기 작업을 빠르게 처리하며, 특히 캐싱 시스템이나 분산 처리 환경에서 높은 성능을 보여준다.
- 빅데이터와 실시간 처리에 최적화
- 대규모의 비정형 데이터(텍스트, 이미지, 비디오)를 저장하고 처리에 최적회 되었다.
단점
- ACID 트랜잭션의 제한적 지원
- 대부분의 NoSQL DB는 CAP 이론에 따라 데이터의 일관성(Consistency)보다 가용성(Availability)을 우선시하며, 전통적인 RDBMS의 ACID 트랜잭션을 완벽히 지원하지는 않는다.
- 제한적인 쿼리 기능
- 관계형 데이터베이스에서 지원하는 복잡한 JOIN이나 집계 연산을 수행하는 데 어려움이 있다.
- 표준화 부족
- 다양한 NoSQL 솔루션이 존재하지만, 표준화된 쿼리 언어나 방식이 없어 학습 곡선이 있을 수 있다.
➡️ 사용 시 초기 학습에 어려움이 있다.
- 다양한 NoSQL 솔루션이 존재하지만, 표준화된 쿼리 언어나 방식이 없어 학습 곡선이 있을 수 있다.
- 관계 데이터 처리 어려움
- 복잡한 관계형 데이터 모델링이 필요한 경우 사용하기 어렵거나 비효율적이다.
*개념정리
더보기
CAP 이론
분산 시스템의 세 가지 중요한 특성인 일관성(Consistency), 가용성(Availability), 파티션 허용성(Partition Tolerance) 간의 상충 관계를 설명하는 이론이다. 위 이론에서는 세 가지 특성 중에서 두 가지를 동시에 만족할 수 있지만, 세 가지를 모두 만족할 수는 없다고 한다.
파티션 허용성(Partition Tolerance)을 필수적으로 선택하며, 일관성(Consistency)과 가용성(Availability) 중 하나를 더 중점적으로 지원
NoSQL의 종류
'CS' 카테고리의 다른 글
Docker란? (0) | 2024.12.03 |
---|---|
RDBMS와 NoSQL의 차이 (2) | 2024.12.02 |
RDBMS (관계형 데이터베이스 관리 시스템) (1) | 2024.11.28 |
클라이언트(Client)란? (0) | 2024.11.26 |
세션 인증과 JWT 인증의 차이 (1) | 2024.11.24 |