개발할 때 사용하는 데이터베이스의 종류는 크게 SQL 과 No-SQL 로 나눌 수 있다. 차후 오픈할 서비스의 특징에 더 적합한 데이터베이스를 선택한다고 할 때 각각의 장점을 잘 알고 있어야 하기 때문에 정리 글을 쓰게 되었다.
1. 개념
1) SQL (Structured Query Language)
- 관계형 데이터베이스(RDBMS) 에서 데이터를 관리하기 위해 설계된 언어
- 데이터는 테이블 형식으로 저장되며, 고정된 스키마를 기반으로 구조화 됨
2) NoSQL (Not only SQL)
- 비관계형 데이터베이스로, 다양한 데이터 저장 모델 지원 (ex. 키-값, 문서, 그래프 등)
- 유연한 스키마를 제공하며, 비정형 데이터를 처리하는데 적합
2. 사용 목적
1) SQL
- 구조화된 데이터를 효율적으로 관리하고, 정교한 쿼리를 통해 관계를 기반으로 데이터 분석
- 데이터 무결성과 정규화가 중요한 경우에 적합
2) NoSQL
- 대규모 데이터 처리와 빠른 데이터 읽기/쓰기 성능이 중요한 경우에 적합
- 수평적 확장(Sharding) 지원으로 데이터가 증가해도 성능 저하가 적음
3. 주로 사용되는 서비스
1) SQL
- 금융 시스템
- 전자상거래 (주문, 결제 데이터 관리)
- ERP/CRM 시스템 (고객, 자원 관리)
2) NoSQL
- 소셜 네트워크
- 캐시 시스템
- IoT 데이터 처리 (센서 데이터 수집 및 저장)
4. 결론
안정성과 정교함의 우위를 가진 SQL 로는 주요 트랜잭션 데이터를 다루고,
대규모 데이터를 빠르게 처리하는데 최적화된 NoSQL 로는 로그 및 분석 데이터를 다루는데 유리하다.
5. 출처
- https://www.integrate.io/ko/blog/the-sql-vs-nosql-difference-ko/
'IT > DB' 카테고리의 다른 글
[DB] Optimizer (1) | 2025.01.20 |
---|---|
[DB] Sharding (1) | 2025.01.15 |
[MySQL] GROUP BY 사용법 (0) | 2024.03.09 |
[MySQL] JSON_TABLE (0) | 2023.09.14 |
SQLD 내용 정리 4 (0) | 2021.04.11 |