본문 바로가기

한화시스템 BEYOND SW캠프/TIL

[1주차] 24.01.10 수요일

데이터베이스(DB)
여러 응용시스템을 통해 엑세스 가능한 공유된 형태의 통합된 데이터의 집합. 어느 특정 조직의 응용 업무에 공동으로 사용하기 위해 운영상 필요한 데이터를 중복을 최소화하여 컴퓨터 기억장치 내에 모아놓은 집합체

 

핵심은 공유와 중복 최소화

 

데이터 : 가공되지 않은 형태

정보 : 가공된 형태. 데이터를 처리해서 얻어진 결과

 

DB의 특징 - 독립성 유지, 무결성 유지, 보안성, 불일치 배제, 중복성 감소, 공유

 

데이터베이스 관리 시스템(DBMS)

 

관계형 데이터베이스 관리 시스템(RDBMS) : 데이터베이스는 최소한의 의미를 가지는 테이블들로 구성되며 그 테이블들에 있는 필드들로 연결한 것. 필드는 가장 작은 논리적인 단위로 구분하는 것이 좋다.

e.g.) 주소 - 서울시/강남구/대치동 → 각각 다른 필드로 구성해서 담는다.

 

관계형 데이터베이스의 표현 - 실체(entity)와 관계(relation)를 중심으로 정의. 이 때 관계는 업무적인 연관성이 필수.

두 테이블 사이에 존재하며 관계를 맺고있는 두 테이블 중 반드시 하나는 부모 테이블이고 다른 하나는 자식 테이블.

부모 테이블의 기본키(Primary key)는 자식 테이블에 외래키(Foreign key)로 전이된다.

 

관계의 유형 : 존재의 유형 e.g.) 부서테이블과 사원테이블. 행위의 유형 e.g.) 고객테이블과 주문테이블.

 

  • 기본키(Primary key) : 데이터의 식별값. 중복과 null값을 허용하지 않는다. 기본키가 없는 테이블은 존재하지 않는다.
  • 외래키(Foreign key) : 부모테이블에 의존하는 데이터이거나 null값을 허용한다.

 

데이터베이스 설계

 

참조 무결성은 가장 중요한 무결성 유지 방법이다.

cf.) 참조 무결성 : 두 테이블 간에 관계가 형성되었을 경우 데이터를 입력, 수정, 삭제할 때의 고려사항

 

부모 테이블의 데이터를 수정/삭제할 때 참조 무결성을 고려해야 한다.

자식 테이블의 데이터를 입력/수정할 때 참조 무결성을 고려해야 한다.

 

테이블을 작성할 때 컬럼값에 null값이 들어가도록 설계할 수 없다.

 

개념적 데이터 모델링의 산출물 : E-R 다이어그램

논리적 데이터 모델링의 산출물 : FDD. 테이블 설계도

 

E-R 모델(개체-관계 모델) : 현실 세계에 존재하는 데이터와 그들 간의 관계를 사람이 이해할 수 있도록 정의해 둔 모델

실체(개체) - 속성 - 식별자 순으로 모델링을 진행한다.

cf.) 실체(entity) : 데이터로 관리돼야 하는 항목으로 각 실체는 유일하게 식별 가능하다. 인스턴스라 불리는 개별적인 객체들의 집합으로 반드시 주식별자가 존재해야 한다.

 

엔티티 도출 방법 : 명사 위주로 파악. 데이터로 관리돼야 할 항목이란, 테이블로 관리돼야할 항목을 말한다.

 

관계 식별 방법 : 반드시 ~해야 한다 == mandatory / ~일지도 모른다 ( → null 포함 가능) == optional

 

데이터베이스 모델링 실습

 

  • 업무 분석표
- A라는 모 중학교 선생님은 매번 반복되는 서류처리를 DB화 시키려고 한다.

- 선생님께서 전산화하려고 하는 업무는 학년이 끝날 때 어느 반의 어떤 과목이 규정된 수업시간과 맞는지 비교하려고 하는 것이다.

- 학년별로 해당 과목의 규정 수업시간은 정해져 있으며 학년 말에 과목별 실제 수업일수가 규정된 수업시간과 맞는지를 체크해서 부족한 경우에는 보강 등을 통해서 규정된 수업시간을 채워야 하므로 이 데이터는 정확해야 한다.

- 현재 학년별 각반의 수업일수록 계산하기 위해서 각 반의 수업일지를 과목별로 일일이 수작업으로 확인하고 있다.

 

  • 업무분석
- 학년이 끝날 때 어느 반의 어떤 과목이 규정된 수업시간과 맞는지 비교

- 학년별로 해당 과목의 규정 수업시간은 정해져 있으며 학년 말에 과목별 실제 수업일수가 규정된 수업시간과 맞는지를 체크해서 부족한 경우에는 보강 등을 통해서 규정된 수업시간을 채워야 한다.

 

  • 개념적 데이터베이스 모델링

다대다 관계는 RDBMS로 표현할 수 없다.

실선 - 식별 관계, 점선 - 비식별 관계

'한화시스템 BEYOND SW캠프 > TIL' 카테고리의 다른 글

[2주차] 24.01.15 월요일  (1) 2024.01.15
[1주차] 24.01.12 금요일  (1) 2024.01.12
[1주차] 24.01.11 목요일  (0) 2024.01.11
[1주차] 24.01.09 화요일  (1) 2024.01.09
[1주차] 24.01.08 월요일  (1) 2024.01.08