
Q. NoSQL과 RDBMS의 특징과 차이점에 대해서 장, 단점을 들어 설명해주세요.
RDBMS의 장점 : 데이터 일관성과 안정성이 뛰어나며, ACID(Atomicity, Consistency, Isolation, Durability) 특성을 제공하여 데이터의 무결성을 보장합니다. 또한, 관계를 이용하여 복잡한 쿼리를 실행할 수 있으며, 데이터 중복을 최소화하여 데이터 일관성을 유지합니다.
RDBMS의 단점 : 대용량 데이터 처리에 한계가 있으며, 수평적 확장이 어려워 성능 저하가 발생할 수 있습니다. 또한, 스키마 변경이 어려울 수 있고, 데이터의 구조 변화에 유연하게 대응하기 어렵습니다.
NOSQL의 장점 : 대용량 데이터 처리와 확장이 용이하며, 수평적 확장이 가능하여 분산 데이터베이스를 구축하기 쉽습니다. 또한, 스키마가 없거나 유연한 스키마를 사용하여 데이터의 구조 변화에 유연하게 대응할 수 있습니다.
NOSQL의 단점 : 데이터 일관성을 보장하기 어렵습니다. ACID 특성을 모두 만족시키지 않을 수 있으며, 데이터 중복이 발생하여 이에 따른 데이터 일관성 관리가 필요합니다. 또한, 복잡한 쿼리와 조인을 처리하는 데 어려움이 있을 수 있습니다.
추가조언 : NOSQL 파트에서 직접 사용해본 Redis를 배경으로 Key-Value 형태로 데이터를 저장하고 관리할 수 있다는 점을 애기하면 좋을것 같다.