CS 지식/데이터베이스

데이터 모델 종류

윤씅 2024. 8. 9. 23:19

데이터 모델

  • 연산 : 데이터 작업에 대한 명세
  • 구조 : 개체 타입들 간의 관계
  • 제약조건 : 데이터 무결성 유지를 위한 논리적인 제약 조건

 

데이터 모델 절차

1. 개념적 데이터 모델 : 개체를 추상적, 개념적으로 표현

2. 논리적 데이터 모델 : 스키마 설계

  • 관계 데이터 모델
    • 관계 대수 : 절차적 언어 (셀렉트, 프로젝트, 조인, 디비전)
    • 관계 해석 : 비절차적 언어
  • 정규화 과정 있음 (이상 현상 방지, 무손실 분해)
    • 이상 현상 : 삽입 이상, 삭제 이상, 갱신 이상
    • 단계
      • 1 정규화 : 모든 속성들은 원자 값이어야 한다.
      • 2 정규화 : 완전 함수 종속성이어야 한다.
      • 3 정규화 : 이행 함수 종속성 제거
      • BCNF : 결정자가 후보키가 아닌 경우 제거
      • 4 정규화 : 다치 함수 종속 제거
      • 5 정규화 : 조인 종속 제거

3. 물리적 데이터 모델 : DBMS에 맞게 물리적 모델로 변환

  • 반 정규화 과정 있음 : 개발 운영의 단순화를 위해
  • 데이터 무결성 중요
    • 개체 무결성 : 기본키 NULL 비허용
    • 참조 무결성 : 외래키가 참조하는 것은 기본키여야 한다.
    • 속성 무결성 : 지정된 규칙을 지켜야 한다.
    • 키 무결성 : 같은 값을 가진 키는 존재하면 안된다.
  • 키 특성 : 유일성, 최소성
  • 인덱스 : 분포도가 좋고, 수정이 빈번하지 않은 컬럼으로 선정한다.
  • 파티셔닝 : 테이블이나 인덱스 데이터를 나누어 저장
    • 레인지 파티셔닝(범위), 해시 파티셔닝, 리스트 파티셔닝(명시적인 데이터), 컴포지트 파티셔닝(여러 파티셔닝 합침), 라운드로빈



데이터베이스 기술 트렌드

  • 빅데이터 : 수십 페타바이트 크기의 비정형 데이터
    • 맵 리듀스 : 구글에서 대용량 데이터 처리를 분산 병렬 컴퓨팅에서 처리하기 위해 제작
  • 데이터 마이닝 : 데이터 안에서 규칙이나 패턴을 찾는 일