02장

데이터 모델과 질의 언어

데이터 모델은 소프트웨어가 어떻게 작성됐는지, 문제를 어떻게 생각해야 하는지에 영향을 끼친다.

  1. 관계형 모델과 문서 모델
  • SQL: 정해진 스키마가 있음, 관계(relation)로 구성되고 각 관계는 순서 없는 튜플(tuple)(SQL에서 row) 모음
    • (+) 데이터 무결성
    • (+) 각 데이터를 중복없이 한번만 저장
    • (-) 스키마를 사전에 계획
    • (-) 대체로 수직적 확장만 가능
  • NoSQL: 스키마, 관계(realation)이 없음
    • (+) 데이터 조정, 새로운 필드 추가에 유연함
    • (+) 데이터를 애플리케이션이 필요로 하는 형식으로 저장, 데이터 읽어오는 속도 빠름
    • (+) 수직, 수평 확장 가능하여 애플리케이션이 발생시키는 모든 읽기/쓰기 요청 처리 가능
    • (-) 데이터 중복 계속 업데이트
    • (-) 데이터 수정시 모든 컬렉션의 중복 수정
  • 다중 저장소 지속성(polyglot persistence): 관계형 데이터베이스를 비관계형 데이터스토어와 함께 사용하는 개념
profile
공부기록

0개의 댓글