오늘의 질문
관계형 데이터베이스와 비 관계형 데이터베이스의 차이점은 무엇인가요?

📍 정답 확인

관계형 데이터베이스

고정된 로우와 칼럼으로 구성된 테이블에 데이터를 저장한다. 
그리고 SQL 을 사용하여 여러 테이블에 존재하는 데이터와의 관계에 따라 조인하여 합칠 수도 있다.

[ 특징 ]

  • 구조화된 데이터 : 행과 열로 구성된 테이블이라는 명확한 구조를 가진다.

  • ACID 준수 : 원자성, 일관성, 격리성, 지속성을 보장하는 신뢰할 수 있는 트랜잭션을 보장한다.

  • 스키마 기반 : 데이터를 구성하기 위해 미리 정의된 스키마가 필요하며, 엄격하지만 일관성 있는 구조를 만든다.

  • SQL 언어 : 데이터베이스 쿼리 및 유지 관리에 SQL 을 사용한다.

  • 확장성 : 일반적으로 스케일 업 방식으로 수직적으로 확장힌다.

[ 장점 ]

  • 데이터를 중복 없이 한 번만 저장하고, 데이터 무결성을 보장한다.

[ 단점 ]

  • 스키마를 유연하게 변경하기 어렵다.

  • 비즈니스 요구사항이 발전하면 복잡한 쿼리가 생긴다.


비 관계형 데이터베이스

NoSQL 이라고 불리기도 한다. 정해진 스키마가 없으며 자유롭게 데이터를 저장하고 조회할 수 있다.
저장 형태로는 문서, 키-값, 와이드 컬럼, 그래프 유형이 있다.

[ 특징 ]

  • 유연한 스키마 : 고정된 스키마 없이 비구조화, 반구조화 또는 구조화된 데이터를 처리할 수 있다.

  • 최종 일관성 : 즉각적인 일관성보다는 최종 일관성에 중점을 두어 높은 가용성을 제공한다.

  • 확장성 : 스케일 아웃으로 수평적으로 확장한다.

  • 다양한 데이터 모델 지원 : 문서, 키-값, 와이드 컬럼, 그래프

  • 성능 : 특정 사용 사례에 최적화되어 대량의 데이터에 대해 더 빠른 읽기 및 쓰기 작업을 제공한다.

[ 장점 ]

  • 대량의 데이터와 높은 사용자 부하에서도 손쉽게 사용할 수 있다.

[ 단점 ]

  • 중복을 허용하기 때문에 일관성이 저하되며 용량이 증가한다.


🔖 참고 자료

매일메일

SQL vs NoSQL 파헤치기: 당신의 프로젝트에 완벽한 데이터베이스는?