데이터 형태가 자주 바뀐다
선택
유연한 스키마
필드를 미리 모두 고정하지 않고, 필요한 값을 먼저 담을 수 있게 둡니다.
운영 의미
스키마 변경 비용을 줄여 기능 추가와 서비스 수정 속도를 유지합니다.
NoSQL은 관계형 모델을 부정하는 것이 아니라 변화하는 데이터, 여러 노드로의 확장, 조인 없는 조회 경로가 더 중요할 때 다른 저장 방식을 택하는 접근입니다.
무엇을 엄격히 고정할지보다
무엇을 쉽게 바꾸고 퍼뜨릴지를 먼저 본다
유연한 스키마
필드를 미리 모두 고정하지 않고, 필요한 값을 먼저 담을 수 있게 둡니다.
스키마 변경 비용을 줄여 기능 추가와 서비스 수정 속도를 유지합니다.
수평 확장 중심 설계
여러 노드로 데이터를 나누고, 서버를 더 붙여 처리량과 저장 용량을 늘립니다.
한 대를 키우기보다 노드를 추가하는 방식으로 분산 운영과 확장이 쉬워집니다.
비정규화된 비관계형 모델
자주 함께 읽는 값을 한 문서나 한 키 주변에 모아 조회 경로를 짧게 만듭니다.
분산 환경에서도 조인 부담을 줄이고, 읽기 경로를 단순하게 유지할 수 있습니다.
NoSQL의 공통점은 관계를 없애는 것이 아니라, 변화 대응, 확장 용이성, 조회 단순화를 더 앞세워 설계한다는 점입니다.