반응형

실제로 데이터베이스 모델링은 엄청 복잡하지만, 아래 영상에서는 간략하게 설명해 주었다. 이를 정리한다.

 

(아래 영상을 참고)

https://youtu.be/JfROL0b_bTo

 

영상을 간략히 정리.

 

예전에는 데이터가 별로 없어서 혼자서 해결할 수 있다면, 지금은 무수히도 많은 데이터를 처리해야 함으로 반드시 데이터베이스가 구축이되어야 한다.  여러 사람들의 분업된 데이터를 데이터베이스 서버를 통해 손쉽게 처리할 수 있도록 해야한다.

 

 - 프로젝트(project)란? 현실의 업무를 컴퓨터에서 처리할 수 있도록 옮겨놓는 과정. 대규모 프로그램을 만들기 위한 과정

 - 자주 사용되는 모델 : "폭포수모델(waterfall model)", 앞의 단계가 마무리 되어야 넘어가는 모델 *업무분석, 시스템설계* 부분이 제일 중요, 전체 많은 시간할당이 필요, 프로그램 구현은 코딩단계

출처: https://www.youtube.com/watch?v=JfROL0b_bTo&list=PLVsNizTWUw7Hox7NMhenT-bulldCp9HP9&index=12

 - 데이터베이스 모델링 이란?  현실에 있는 작업을 PC의 DBMS에 옮기는 과정. (고객 주문관리 등을 PC내의 테이블로 변경하는 과정. 데이터베이스화 작업), 실제 실무자와 함께 작업을 해야 최상의 DB가 구축됨.

출처: https://www.youtube.com/watch?v=JfROL0b_bTo&list=PLVsNizTWUw7Hox7NMhenT-bulldCp9HP9&index=12

 - 데이터베이스 모델링 종류?   개념적모델링, 논리적모델링, 물리적모델링  으로 구분

 

 

 

<모델링 테이블이 만들어지는 과정>

    * 정리되지 않은 현실의 데이터를 정리해서 테이블로 만들기

 

1. Raw데이터

    (그냥 쇼핑몰 방문 기록) 방문일지 쓰는 것 처럼 작성.

    문제점, 방문할때마다 쓰는거기 때문에 구매를 했을 수 있고 안했을 수 있고, 중복된 이름이 발생할 수 있음

 

2.  물건을 구매하지 않을 사람들을 따로 모아서 제거 (유효한 데이터만 수집)

    고객방문기록을 유효한 데이터로 두 테이블로 정리 -> 고객테이블, 구매테이블

테이블의 크기가 줄어드는 장점이 생김. (어느정도 정리됨)

 

3. 고객테이블의 중복된 고객을 정리.

 

4. 구매테이블의 문제점, 누가? 구매했는지 모름

 

5. 고객테이블과 구매 테이블의 관계 연결 (PK - FK table)

    FK가 있는 테이블을 자식테이블 (Child table), PK가 있는 테이블은 부모테이블 (parent table)

    1:N 방식 (PK는 하나, FK는 여러개)

    주요키, PK (Primary key) : 오직 1개만 존재 고유한 키

    외래키, FK (foreign key) : 두 테이블을 연결시키는 키

    FK는 값이 NULL이거나, 부모테이블의 PK와 동일해야 함.

 

  아래 예에서 "김범수"가 청바지 3개 구매건에 대해 조회 할때 순서.

 김범수씨 정보확인 -> FK(고객이름)에서 PK(고객이름) 확인 -> 김범수 개인정보 확인

    

 

6. 결정한 데이터에 대한 테이블 구조를 정의. 열이름, 데이터 타입, NULL(필수사항) 등 확인

    위와 같은 과정을 거쳐 딱 필요한 데이터를 골라서 아래와 같은 Table을 만든다.

    그리고나서 이 데이터로 이제 Workbench에서 Database를 구축하는 것이다.

 

반응형

+ Recent posts