경험 중심 1인칭 답변
관계형 DB는 미리 정의된 스키마에 따라 데이터를 테이블로 저장하고, SQL로 조회합니다. 데이터 간 관계가 명확하고 ACID 트랜잭션이 보장돼서 일관성이 중요한 시스템에 적합합니다. NoSQL은 스키마가 유연하고 수평 확장이 쉬운 대신 복잡한 JOIN 쿼리가 어렵습니다. 문서, 키-값, 컬럼, 그래프 등 다양한 저장 방식이 있어서 데이터 구조와 접근 패턴에 맞게 선택해야 합니다. 수업 프로젝트에서 관계형 DB를 쓰다가 사용자 행동 로그처럼 구조가 계속 바뀌는 데이터는 NoSQL이 더 맞다는 걸 직접 경험했습니다. 결국 트레이드오프를 이해하고 용도에 맞게 선택하는 것이 핵심입니다. 앞으로도 트레이드오프를 이해하고 데이터 특성에 맞게 DB를 선택하는 방식을 유지하겠습니다.
ACID 트랜잭션이 필요한 데이터는 관계형, 구조가 유동적이고 확장이 중요한 데이터는 NoSQL이 더 적합합니다. 설계 초기에 접근 패턴을 먼저 파악하는 것이 나중에 마이그레이션 비용을 줄이는 가장 실용적인 방법입니다.