오늘의 질문
관계형 데이터베이스와 비 관계형 데이터베이스의 차이점은 무엇인가요?
📍 정답 확인
관계형 데이터베이스
고정된 로우와 칼럼으로 구성된 테이블에 데이터를 저장한다.
그리고 SQL 을 사용하여 여러 테이블에 존재하는 데이터와의 관계에 따라 조인하여 합칠 수도 있다.
[ 특징 ]
구조화된 데이터 : 행과 열로 구성된 테이블이라는 명확한 구조를 가진다.
ACID 준수 : 원자성, 일관성, 격리성, 지속성을 보장하는 신뢰할 수 있는 트랜잭션을 보장한다.
스키마 기반 : 데이터를 구성하기 위해 미리 정의된 스키마가 필요하며, 엄격하지만 일관성 있는 구조를 만든다.
SQL 언어 : 데이터베이스 쿼리 및 유지 관리에 SQL 을 사용한다.
확장성 : 일반적으로 스케일 업 방식으로 수직적으로 확장힌다.
[ 장점 ]
- 데이터를 중복 없이 한 번만 저장하고, 데이터 무결성을 보장한다.
[ 단점 ]
스키마를 유연하게 변경하기 어렵다.
비즈니스 요구사항이 발전하면 복잡한 쿼리가 생긴다.
비 관계형 데이터베이스
NoSQL 이라고 불리기도 한다. 정해진 스키마가 없으며 자유롭게 데이터를 저장하고 조회할 수 있다.
저장 형태로는 문서, 키-값, 와이드 컬럼, 그래프 유형이 있다.
[ 특징 ]
유연한 스키마 : 고정된 스키마 없이 비구조화, 반구조화 또는 구조화된 데이터를 처리할 수 있다.
최종 일관성 : 즉각적인 일관성보다는 최종 일관성에 중점을 두어 높은 가용성을 제공한다.
확장성 : 스케일 아웃으로 수평적으로 확장한다.
다양한 데이터 모델 지원 : 문서, 키-값, 와이드 컬럼, 그래프
성능 : 특정 사용 사례에 최적화되어 대량의 데이터에 대해 더 빠른 읽기 및 쓰기 작업을 제공한다.
[ 장점 ]
- 대량의 데이터와 높은 사용자 부하에서도 손쉽게 사용할 수 있다.
[ 단점 ]
- 중복을 허용하기 때문에 일관성이 저하되며 용량이 증가한다.
🔖 참고 자료