정보관리기술/CA,OS

NoSQL / ①

아이티신비 2024. 3. 7. 09:30

문제3) NoSQL 모델링 패턴 3가지 및 NoSQL 모델링 절차를 설명하시오.

답)

 

1. 빅데이터 저장 DB, NoSQL의 개요

가. NoSQL의 개념

  • 관계형 데이터베이스(RDBMS)의 테이블-컬럼과 같은 스키마 없이, 분산 환경에서 단순 검색 및 추가 작업이 용이하고, 지연(latency)과 처리율(throughput)이 높은 DBMS

 

나. NoSQL의 데이터 모델 유형

 
모델 유형
개념도
설명
Key/Value Store
Unique 한 Key 에 하나의 Value 를
가지고 있는 형태의 모델.
Ordered Key/Value Store
Key/Value Store 의 확장된 형태로
Key/Value Store 와 데이타 저장 방식은 동일하나, 데이타가 내부적으로 Key를 순서로 정렬되어 저장
Document Key/Value Store
Key에 해당하는 Value의 데이터 타입
이 XML, JSON, YAML Document. 타입이 저장

 

2. NoSQL 모델링 패턴 3가지

가. Atomic Aggregate 모델링 패턴

 
항목
설명
정의
하나의 비즈니스 엔티티(Entity)를 하나의 문서, 행 또는 Key –Value쌍으로 저장하고
이를 원자적(Atomic)으로 업데이트 하는 패턴
개념도
적용분야
Key-Value Stores, Document Databases, BigTable-style Databases

 

나. Dimensionality Reduction 모델링 패턴

 
항목
설명
정의
다차원 데이터를 Key-Value 모델이나 다차원이 아닌 다른 모델에 매핑(차원 감소)할
수 있게 하는 모델링패턴
개념도
적용분야
Key-Value Stores, Document Databases, BigTable-style Databases

 

다. Index Table 모델링 패턴

 
항목
설명
정의
내부적으로 인덱스를 지원하지 않는 Key-Value Store의 인덱스를 활용할 수 있는 매
우 직관적인 모델링 패턴
개념도
적용분야
BigTable-style Databases
  • 이외에도 Enumerable Keys, Compoisite Index, Aggregation with Composite Keys 모델링 패턴 존재

 

3. NoSQL 모델링 절차

 
단계
절차
설명
탐색
도메인 모델 파악
  • 저장하고자 하는 도메인 파악
  • 어떤 데이터 개체가 있는지 개체 간의 관계는 어떻게 되는지 등을 분석하고 ERD활용하여 도식화
설계
쿼리결과 디자인
  • 도메인 모델 기반으로 애플리케이션에 의해서 쿼리 되는 결과값을 정하여 데이터 출력 내용 기반으로 디자인.
패턴을 이용한 데이터 모
델링
  • RDBMS 기능을 제공하지 않기 때문에 이를 배제하고 Put/Get으로만 데이타를 가지고 올 수 있는 형태로 데이타 모델, NoSQL 내의 테이블로 재정의.
기능 최적화
  • RDBMS 의 Index 와 같은 이 개념을 NoSQL 에 서 ‘Secondary Index’을 이용하여 기능의 최적화
최적화
후보 NoSQL을 선정 및 테
스트
  • NoSQL에 대한 구조 및 특성을 분석한 후에 실제로 부하테스트, 안정성, 확정성 테스트를 거친 후에 가장 적절한 솔루션을 선택
정의된 NoSQL 의 데이터 모델 최적화 및 하드웨어 디자인
  • 선정된 NoSQL 을 기반으로 그에 적합한 데이터 모델 최적화후 이에 맞는 어플리케이션 인터페이스 설계와 구동시킬 하드웨어 디자인을 실시

 

 

4. NoSQL 모델링 사례

 
구분
절차
RDBMS 모델링
NoSQL모델

 

 


 

공감과 댓글은 아이티신비에게 큰 힘이 됩니다.

블로그 글이 유용하다면 블로그를 구독해주세요.♥

'정보관리기술 > CA,OS' 카테고리의 다른 글

세마포어(Semaphore)와 모니터(Monitor) / ①  (65) 2024.03.08
DAS, NAS, SAN  (66) 2024.03.08
Race Condition / ①  (73) 2024.03.07
스레싱(Thrashing) / ①  (53) 2024.03.06
빅 엔디언(Big Endian)과 리틀 엔디언(Little Endian) / ①  (75) 2024.03.06