NoSQL 모델링
설명 영상 정보관리기술사 NoSQL 모델링 · 2:51
왜 배우는가: NoSQL 모델링은 대용량·분산 환경에서 데이터 구조를 접근 패턴에 맞춰 설계하는 능력을 묻는다. 실무에서는 RDBMS 정규화 습관을 그대로 옮겨 성능과 확장성이 무너지는 사례가 많아 이를 바로잡는 기준이 필요하다. 세 회차 모두 유형, 패턴, 절차를 묶어 출제되어 시험 반복도가 높다.
출제 이력: 제133회 1교시 3번, 제124회 3교시 3번, 제114회 3교시 1번
1. 한 줄 정의와 핵심 키워드
NoSQL 모델링은 대용량 분산 환경에서 접근 패턴(쿼리)을 먼저 정하고 그에 맞춰 데이터 구조를 설계하는 활동이다.
- NoSQL
- 쿼리 중심 모델링(Query-Driven Modeling)
- 수평 확장(Scale-Out)
- 집계 중심 모델(Aggregate)
- 내장(Embedding)과 참조(Referencing)
- 파티션 키(Partition Key)
- CAP 이론
2. 개념 풀이
쉽게 말하면 NoSQL 모델링은 "무엇을 자주 조회할지 정한 뒤, 그 조회가 한 번에 끝나도록 데이터를 담는 방식을 고르는 일"이다. 관계형 DB에서는 데이터를 정규화해 중복을 없애고 조인으로 합치지만, NoSQL에서는 조인을 피하고 함께 읽히는 데이터를 한 덩어리로 묶는다.
정식 정의는 다음과 같다. NoSQL(Not Only SQL)은 고정 스키마, 관계형 조인, ACID 트랜잭션 중심의 RDBMS와 달리 유연한 스키마와 수평 확장을 우선하는 비관계형 데이터베이스다. NoSQL 모델링은 이 저장소의 데이터 모델(키-값, 문서, 컬럼 패밀리, 그래프)에 맞춰 엔티티와 관계를 배치하고, 파티션 키와 집계 단위를 정하는 설계 과정이다.
쿼리 중심 모델링은 데이터 정규화가 아니라 질의 패턴을 기준으로 설계하는 방법이다. 한 질의가 한 파티션 또는 한 문서에서 끝나도록 구조를 잡는 것이 목표다.
집계 중심 모델(Aggregate)은 함께 읽고 쓰는 데이터를 하나의 단위로 묶은 것이다. 문서 DB에서는 한 문서, 키-값 DB에서는 한 키의 값이 이 단위가 된다.
내장과 참조는 관계를 표현하는 두 방식이다. 내장은 하위 데이터를 상위 문서 안에 넣어 읽기를 빠르게 하고, 참조는 ID로 연결해 중복과 갱신 비용을 줄인다.
파티션 키는 데이터를 여러 노드에 나누는 기준 값이다. 값의 쏠림(핫스팟)이 없도록 고르게 분산되는 키를 택해야 한다.
3. 등장 배경과 필요성
웹·모바일·게임 서비스는 사용자 수와 데이터량이 급격히 늘고, 구조가 자주 바뀌며, 짧은 응답 시간을 요구한다. 이 환경에서 RDBMS는 고가의 대형 서버로 수직 확장하는 데 한계가 있었다. NoSQL은 분산 하드웨어 클러스터를 추가하는 방식으로 확장하도록 설계되었다.
스키마 변경 비용도 문제였다. RDBMS의 스키마 수정은 복잡하고 오류가 나기 쉬운 반면, NoSQL은 동적 스키마로 데이터 구조 변화를 수용한다. 이 때문에 빠르게 반복 개발하는 조직에서 NoSQL을 선호한다.
대규모 분산 환경에서는 노드 장애와 네트워크 분할이 피할 수 없다. 그래서 일관성과 가용성 사이의 선택을 설계 단계에서 명시해야 하고, 이것이 NoSQL 모델링에서 CAP 이론을 함께 다루는 이유다. 결국 모델링은 저장 형태를 정하는 일이면서 동시에 장애와 일관성 정책을 정하는 일이 된다.
쓰기 지연 목표는 조직마다 다르므로 SLA에서 직접 정한다.
4. 구성요소·원리·절차
NoSQL 모델링은 쿼리 중심 모델링(Query-Driven Modeling)이 기본이다. 관계형 모델처럼 정규형으로 데이터를 먼저 나누지 않고, 애플리케이션이 실행할 조회 패턴을 기준으로 저장 구조를 정한다. 유형별 구성요소는 다음과 같다.
이어지는 내용
- 5. 관련 법령·기준·표준
- 6. 유형과 비교
- 7. 장단점·한계와 개선 방향
- 8. 사례 또는 계산 예제
- 9. 최근 동향과 쟁점
- 10. 흔한 실수와 채점 포인트
- 11. 암기 정리
- 12. 답안 구성 예시
- 13. 예상 변형 문항
로그인하면 하루 5페이지까지 무료로 전체를 읽을 수 있습니다.
앱에서 이 단원 읽기