ABOUT ME

-

Today
-
Yesterday
-
Total
-
  • 240221 데이터베이스 구축 : 설계
    OS Computer Science 2021. 2. 24. 19:41

    개념적 설계(정보 모델링, 개념화)

    • 정보의 구조를 얻기 위해 현실 게계의 무한성과 계속성을 이해하고, 다른 사람과 통신하기 위해 현실 세계에 대한 인식을 추상적 개념으로 표현
    • 스키마 모델링과 트랜잭션 모델링 병행
    • 요구 분석 단계에서 나온 결과(요구 조건 명세)를 DBMS에 독립적인 E-R 다이어그램(r개체 관계도)으로 작성
    • DBMS에 독립적인 개념 스키마를 설계.

    논리적 설계(데이터 모델링)

    • 현실 세계의 자료를 컴퓨터가 처리할 수 있는 물리적 저장장치에 저장할 수 있도록 변환하기 위해 특정 DBMS가 지원하는 논리적 자료 구조로 변환.
    • 개념 세계의 데이터를 필드로 기술된 데이터 타입과 이 데이터 타입들 간의 관계로 표현되는 논리적 구조의 데이터로 모델화
    • 개념적 설계 = 개념 스키마 설계
      논리적 설계 = 개념 스키마 평가, 정제 그리고 특정 DBMS에 종속적인 논리적 스키마 설계
    • 트랜잭션의 인터페이스를 설계
    • 관계형 데이터베이스라면 테이블을 설계하는 단계

    물리적 설계(데이터 구조화)

    • 논리적 설계 단계에서 논리적 구조로 표현된 데이터를 디스크 등의 물리적 저장장치에 저장할 수 있는 물리적 구조의 데이터베이스로 변환
    • 데이터베이스 파일의 저장 구조, 레코드의 형식, 접근 경로
    • 트랜잭션 작성
    • 물리적 설계 옵션 선택 시 고려사항
      : 반응 시간(Response Time), 공간 활용도(Space Utilization), 트랜잭션 처리량(Transaction Throughput)

    관계형 데이터베이스 구조

    Tuple(튜플)

    • 릴레이션을 구성하는 각각의 행(row)
    • 속성(Attribute)의 모임으로 구성
    • 파일 구조에서 레코드와 같은 의미
    • 튜플의 수 = 카디널리티(Cadinality) = 기수 = 대응수

    Attribute(속성)

    • 릴레이션을 구성하는 각각의 열(column)
    • 데이터베이스를 구성하는 가장 작은 논리적 단위
    • 파일 구조 상의 데이터 항목 또는 데이터 필드에 해당
    • 개체의 특성을 기술
    • 속성의 수 = 디그리(Degree) = 차수

    Domain(도메인)

    • 하나의 애트리뷰트가 취할 수 있는 같은 타입의 원자(Atomic)값들의 집합
    • 실제 애트리뷰트 값이 나타날 때 그 값의 합법 여부를 시스템이 검사하는 데 사용

    Relation Instance(릴레이션 인스턴스)

    • 데이터 개체를 구성하고 있는 속성들에 데이터 타입이 적용되어 구체적인 데이터를 값을 갖고 있는 것을 말함.

    키(Key)

    • 키(Key)는 데이터베이스에서 조건에 만족하는 튜플을 찾거나 순서대로 정렬할 때 다른 튜플들과 구별할 수 있는 유일한 기준이 되는 애트리뷰트(속성)이다.

    Candidate Key(후보키)

    • 릴레이션을 구성하는 속성들 중에서 튜플을 유일하게 식별하기 위해 사용하는 속성들의 부분집합
    • 즉, 기본키로 사용할 수 있는 속성들을 말함
    • 모든 릴레이션은 반드시 하나 이상의 후보키를 가져야함
    • e.g. <학생>릴레이션(테이블)에서 학번이나 주민번호는 다른 레코드에서 유일하게 구별할 수 있는 기본키로 사용할 수 있음으로 후보키

    Primary Key(기본키)

    • 후보키 중에서 선택한 주키(Main Key)
    • 한 릴레이션에서 특정 튜플을 유일하게 구별할 수 있는 속성
    • Null 값을 가질 수 없음
    • 기본키로 정의된 속성에는 동일한 값이 중복되어 저장될 수 없음
    • e.g. <학생>릴레이션(테이블)에서 학번이나 주민번호가 기본키가 될 수 있음,
      <수강>릴레이션(테이블)에서 학번+과목명을 조합하여 기본키가 될 수 있음

    Alternate Key(대체키)

    • 후보키가 둘 이상일 때 기본키를 제외한 나머지 후보키들을 말함
    • 보조키라고도 함
    • e.g. <학생>릴레이션(테이블)에서 학번을 기본키로 정의하면, 주민번호는 대체키가 됨

    Super Key(슈퍼키)

    • 슈퍼키는 한 릴레이션 내에 있는 속성들의 집합으로 구성된 키로서 릴레이션을 구성하는 모든 튜플 중 슈퍼키로 구성된 속성과 집합은 동일한 값을 나타내지 않는다
    • 릴레이션을 구성하는 모든 튜플에 대해 유일성은 만족시키지만, 최소성은 만족시키지 못함
    • e.g. <학생>릴레이션(테이블)에서 학번, 주민번호, 학번+주민번호, 주민번호+성명, 학번+주민번호+성명 등으로 슈퍼키를 구성할 수 있다.

    Foreign Key(외래키)

    • 관계(Relation)를 맺고 있는 릴레이션 R1, R2에서 릴레이션 R1이 참조하고 있는 릴레이션 R2의 기본키와 같은 R1 릴레이션의 속성
    • 외래키로 지정되면 참조 테이블의 기본키에는 없는 값을 입력할 수 없음
    • e.g. <수강>릴레이션(테이블)이 <학생>릴레이션(테이블)을 참조하고 있으므로 <학생>릴레이션의 학번은 기본키이고, <수강>릴레이션의 학번은 외래키이다
    • <수강>릴레이션의 학번에는 <학생>릴레이션의 학번에 없는 값을 입력할 수 없다

    출처: velog.io/@inyong_pang/Database-%EB%8D%B0%EC%9D%B4%ED%84%B0%EB%B2%A0%EC%9D%B4%EC%8A%A4-%EC%84%A4%EA%B3%84-%EB%B0%8F-%EA%B5%AC%EC%A1%B0

     

    [Database] 데이터베이스 설계 및 구조

    정보의 구조를 얻기 위해 현실 게계의 무한성과 계속성을 이해하고, 다른 사람과 통신하기 위해 현실 세계에 대한 인식을 추상적 개념으로 표현스키마 모델링과 트랜잭션 모델링 병행요구 분석

    velog.io

    1. ER 모델( Entity Relation Model )

    ER 모델은 요구사항으로부터 얻어낸 정보들을 개체(Entity), 애트리뷰트(Attribute), 관계성(Relation)으로 기술하는 데이터 모델을 말합니다.

     

    • 개체( Entity )
      • 개체란 단독으로 존재하는 객체를 의미하며, 동일한 객체는 존재하지 않습니다.
        • 예를 들어, 학생 정보가 학번, 이름, 학년이 있을 때, 3개의 정보가 모두 같은 학생이 오직 한 명이면 이를 개체라고 합니다.
        • 즉, 학생 한명이 개체가 되는 것입니다.
      • 이 개체들의 집합을 Entity Type이라고 합니다. 여기서는 Student, Course가 되겠네요.

      • ER 다이어그램에서 Entity Type은 네모로 표현합니다.

    • 애트리뷰트, 속성( Attribute )

      • 개체가 갖는 속성을 의미합니다.

        • 예를 들어, Student에서 학번, 이름, 학년 같은 정보를 속성이라 합니다.

      • ER 다이어그램에서 Attribute는 원으로 표현합니다.

    • 관계 ( Relation )
      • Entity Type간의 관계를 의미합니다.
        • 예를 들어, 수강을 뜻하는 Takes는 학생과 과목간의 "수강"이라는 관계를 갖습니다.
        • 이 때 Takes를 Relation Type이라 하며, Relation Type 역시 속성을 가질 수 있습니다.
      • ER 다이어그램에서 Relation은 마름모로 표현합니다.

    출처: victorydntmd.tistory.com/126 

     


    개념적 설계

    1,2회 #50

    E-R 모델의 표현 방법으로 옳지 않은 것은?

    1 개체타입 : 사각형

    2 관계타입 : 마름모

    3 속성 : 오각형

    4 연결 : 선

     

    4회 #46

    개체-관계 모델의 E-R 다이어그램에서 사용되는 기호와 그 의미의 연결이 틀린 것은?
    1 사각형-개체타입
    2 삼각형_속성

    3 선-개체타입과속성을연결

    4 마름모-관계타입

     

    논리적 설계

    1,2회 #49

    데이터베이스의 논리적 설계(logical design) 단계에서 수행 하는 작업이 아닌 것은?
    1 레코드 집중의 분석 및 설계
    2 논리적 데이터베이스 구조로 매핑(mapping)

    3 트랜잭션 인터페이스 설계

    4 스키마의 평가 및 정제

     

    물리적 설계

    4회 #58

    데이터베이스 설계 시 물리적 설계 단계에서 수행하는 사항이 아닌 것은?

    1 저장 레코드 양식 설계
    2 레코드 집중의 분석 및 설계
    3 접근 경로 설계
    4 목표 DBMS에 맞는 스키마 설계

     

    댓글

Designed by Tistory.