TIL#40

DuBu·2023년 8월 16일
0

일본IT JAVA 연수과정

목록 보기
58/61
post-thumbnail

DB 설계

개념적 설계

개념적 설계는 데이터베이스의 전체 구조와 요구 사항을 이해하고, 비즈니스 요구 사항을 데이터 모델로 변환하는 단계입니다. 주로 개체-관계(E-R) 다이어그램을 사용하여 엔터티(개체)와 그들 간의 관계를 표현합니다. 이 단계에서는 데이터의 논리적 의미와 관계를 중심으로 고려합니다.

논리적 설계

논리적 설계는 개념적 설계에서 정의한 개체와 관계를 데이터베이스 관리 시스템(DBMS)에 맞게 변환하는 단계입니다. 이 단계에서는 데이터베이스 스키마와 정규화 작업을 수행합니다. 데이터의 구조와 제약 조건을 정의하며, 테이블, 속성, 관계 등을 정확하게 정의합니다. SQL이나 ER 모델을 사용하여 논리적 모델을 구축합니다.

  1. 모든 개체는 릴레이션으로 변환한다.
  2. 다대다 관계는 릴레이션으로 변환한다.
  3. 일반적인 일대다 관계외래키로 표현한다.
    • 일대다 관계에서 1측 개체 릴레이션의 기본키를 n측 개체 릴레이션에 포함시켜 외래키로 지정.
    • 관계의 속성들도 n측 개체 릴레이션에 포함시킴.
  4. 일대다 관계외래키로 표현한다.
  5. 일대일 관계외래키로 표현한다.
    • 모든 개체가 필수적으로 참여하면 릴레이션을 하나로 합친다.
    • 관계의 이름을 릴레이션 이름으로 사용.
  6. 다중 값 속성은 릴레이션으로 변환한다.
    • 다중 값 속성과 함께 그 속성을 가지고 있던 개체 릴레이션의 기본키를 외래키로 가져와 새로운 릴레이션에 포함시킴.

물리적 설계

물리적 설계는 논리적 모델을 실제 데이터베이스 시스템에 구현하는 단계입니다. 이 단계에서는 성능과 보안 등 물리적인 측면을 고려하여 데이터를 저장하고 접근하는 방법을 결정합니다. 인덱스, 파티셔닝, 보안 설정 등을 포함하여 물리적 저장 구조를 설계하고, 튜닝 작업을 수행하여 데이터베이스 성능을 최적화합니다.

0개의 댓글