데이터 : 관찰의 결과로 나타난 정량적 혹은 정성적인 실제값

정보 : 데이터에 의미를 부여한 것

지식 : 사물이나 현상에 대한 이해

 

DBMS용어 정리

스키마 : 데이터베이스에 저장되는 데이터 구조와 제약조건을 정의한 것[ex) 고객번호int, 이름char(10), 나이int]

인스턴스: 스키마에 따라 데이터베이스에 실제로 저장된 값

도메인 : 하나의 Attribute가 취할 수 있는 같은 타입의 원자(Atomic)값들의 집합

튜플 : 행(row)

애트리뷰트(속성) : 열(column)

 


왜 데이터 모델링을 하는가?

1. 효율성과 성능 향상

   - 얼마나 많은 데이터가 저장될 수 있는가?

   - 저장 공간은 얼마만큼 필요한가?

   - 얼마나 빠르게 처리하는 것이 가능한가?

2. 유연성

   - 새로운 요구사항에 대하여 얼마나 쉽게 시스템에 적용가능한가?

3. 유지보수

   - 중복된 데이터가 없는가?

   - 프로그램 정의로부터 데이터 정의가 얼마나 독립적인가?

데이터 모델링에 대한 잘못된 편견

  1. 오직 다이어그램을 생성하는 것이다.
  2. DB를 위해서만 존재하는 것이다.
  3. DB관리 시스템을 위해 존재하는 것이다.

데이터 모델링의 과정

  1. 개념적 모델링 :  요구사항을 수집하고 분석한 내용을 바탕으로 개체를 추출하고 개체들간의 관계를 정의한다. ER다이어그램을 만드는 과정까지를 말한다.

  2. 논리적 모델링 : 개념적 모델링에서 만든 ER다이어그램을 DBMS에 맞게 매핑하여 실제 DB로 구현하기 위한 모델을 만드는 과정. 개념적 모델링에서보다 좀 더 구체적으로 상세 속성을 모두 추출

  3. 물리적 모델링 : 실제 컴퓨터의 저장장치에 저장하기 위해 물리적인 정의를 내리는 과정을 말한다.

ER모델 - ER모델은 개체와 개체간의 관계를 나타낸다.

  1. 개체(entity) : 정보를 가지고 있는 독립적인 실체를 말한다. 개체끼리는 비슷한 속성(개체 타입)을 가지고 있으며 개체 집합으로 묶인다. 개체는 다른 개체와 최소 한 개 이상의 관계를 맺고 있다. ER다이어그램에서 개체 타입은 직사각형으로 나타낸다. 모델링을 할 때 모든 개체를 뽑아낸 후 약한 개체 타입을 찾아낸다.

    1) 강한 개체 타입 : 보통 개체 하면 강한 개체 타입으로, 독자적으로 있을 수 있음.2) 약한 개체 타입 : 어떠한 개체에 딸려서 생성되어 혼자 있을 수 없는 개체이므로 상위 개체 타입이 있어야 함

  2. 속성(attribute) : 개체가 가지고 있는 성질을 말한다. ER다이어그램에서 속성 타입은 타원형으로 나타내며 개체와 실선으로 연결된다.

    1) 단순 속성 : 더이상 분해가 불가능2) 복합 속성 : 독립적인 의미를 가진 속성으로 분해가 가능 ex)주소-시, 동3) 단일값 속성 : 하나의 값만을 가지는 속성4) 다중값 속성 : 여러개 값을 가지는 속성으로 이중타원으로 나타냄 ex)학위5) 저장 속성 : 다른 속성의 영향없이 단독으로 저장되는 속성 ex)생년월일6) 유도 속성 : 다른 저장 속성으로부터 유도된 속성으로 점선타원으로 나타냄 ex) 나이

  3. 관계(relationship): 개체 사이의 연관성을 말한다. 마름모로 나타낸다.- 강한 개체 타입과 약한개체 타입의 관계를 나타낼 때 이중마름모로 나타내며, 강한개체 타입 별 약한 개체 타입이 존재할 수도 있고 존재하지 않을 수도 있을 때 사용한다.

* 데이터 베이스에서 속성을 정의할 때 나중의 효율성을 위해 중요한 순서대로 정의한다.

* 개체 타입의 수를 차수(degree)라고 한다.

 

* 사상이란? ex) 도서(도서번호, 도서이름, 출판사, 가격)

+ Recent posts