DBMS : 사용자와 DB 사이에서 사용자의 요구에 따라 데이터를 관리해주는 SW
RDBMS
NoSQL
RDBMS
장
명확한 데이터 구조를 보장한다.
각 데이터를 중복없이 저장이 가능하다
단
테이블 간 관계로 인해 시스템이 커질 경우 복잡한 쿼리 유발
스키마로 인해 데이터가 유연하지 못하다.
NoSQL
장
스키마가 없어 자유로운 데이터 구조를 갖는 유연성
언제든 저장된 데이터를 조정하고 새로운 필드 추가가 가능하다.
단
데이터 중복 발생 가능성 존재
스키마가 존재하지 않아 명확한 데이터 구조를 보장하지 않으며 데이터 구조 결정에 어려움 발생
| 정리
RDBMS는 데이터 구조가 명확하며 변경될 여지가 없으며
명확한 스키마가 중요한 경우 사용하는 것이 좋다.
또한 중복된 데이터가 없어(데이터 무결성) 변경이 용이하기 때문에
관계를 맺고 있는 데이터가 자주 변경이 이루어지는 시스템에 적합하다.
NoSQL은 정확한 데이터 구조를 알 수 없고 데이터가
변경/확장이 될 수 있는 경우에 사용하는 것이 좋다.
또한 단점에서도 명확하듯이 데이터 중복이 발생할 수 있으며
중복된 데이터가 변경될 시에는 모든 컬렉션에서 수정을 해야 한다.