1. Database와 모델링

jedo5000·2023년 11월 26일
0

DataBase

목록 보기
1/13

1.1 Database란?

  • Database(DB): 공유되어 사용될 목적으로 통합하여 관리되는 데이터의 집합 이자 필요한 데이터를 저장하는 공간(서버) 이다.

    데이터베이스는 또한 데이터를 저장하는 공간인 만큼 높은 중요도와 필수성을 가지고 있다.

1.1.1 Database는 어떻게 쓰일까?

필요한 데이터를 가상 공간에 모아 놓고 알맞은 상황에 알맞은 정보를 제공

ex) 데이터베이스가 쓰이고 있는 예시로 네이버 페이지를 살펴보자.
(입력받은 id값과 데이터베이스안에 존재하는 회원의 정보가 일치하는지 확인하여 로그인함.)

1.2 데이터 모델링

  • 데이터 모델링의 순서

1.2.1 개념적 데이터 모델링

개념적 데이터 모델링(계획도면 작성: 복잡한 현실세계의 대상을 단순화, 추상화, 명확화하는 작업! Entity들의 공통적 속성을 추출해 Entity간의 관계를 설정하여 ERD로 그려내는 과정)

Table: Entity(현실 세계상의 실체, 독립체라는 뜻으로 데이터 모델링에서 사용되는 객체)를 모델링하여 DB가 이해할 수 있게 만든 결과물이며, 데이터를 저장하는 저장소 기능을 한다.

인스턴스(instance): Entity 안에 개별적으로 존재하는 객체들

속성(attitude): 인스턴스의 구성요소로써 더 이상 분리되지 않는 단위로, 엔터티의 특징을 설명해주며 업무에 필요한 데이터를 저장할 수 있다. (보통 column으로 표현됨)

ERD
엔터티(Entity)와 엔터티 간의 관계(Relationship)를 발견하고 이를 그림(Diagram)으로 표현하는 행위

<ERD 순서>

  1. 엔터티를 적절히 배치하고 관계를 설정한다.(서로 관계가 있는 엔터티끼리 선으로 연결)
    그 후 관계명을 기술한다.(생략 가능)

  2. 관계의 참여도(=Cardinality)를 기술한다. (참여도: 엔티티 안의 인스턴스들이 얼마나 참여하는지를 의미)

    1:1 , 1:N , N:N 관계 등이 있으며 , N 쪽에 (>)로 표시
  3. 관계의 필수여부(=Optionality)를 기술한다. (필수여부: 엔티티 안의 인스턴스들이 반드시 참여하는지를 의미)

    필수 참여는 (I)을 표시하고 , 선택 참여는 (O)
    으로 표시 → 아래 그림에서 (O)부분에 들어간다.

1.2.2 논리적 모델링

설계도 작성: ERD를 기준으로 상세한 구조를 작성한 것. 속성 입력, 식별자 선택, 정규화, 관계설정 등을 정의하는 과정이다.

식별자(PRIMARY KEY): ENTITY가 가진 고유하고 유일한 특징 
ex) 무등대학교 컴퓨터공학과 2학년 ‘이지은’ 학생을 찾으려 한다. 
학생의 어떤 고유한 속성을 가지고 찾을까?
→ 학번을 이용하면 개인정보 등을 사용하지 않고 찾을 수 있다. 
  이러한 PRIMARY KEY는 보안에 유용하다.

  • 사람은 010과 062의 차이를 알지만 컴퓨터는 알지 못한다
  • 요소를 더 세밀히 구분하기 위해 속성을 추가해준다.

1.3 물리적 데이터 모델링

  • 논리적 모델링 결과를 바탕으로 실제 DB를 구축하는 작업을 거쳐 Table(Entity)를 만든다.

0개의 댓글