프로그래밍/SQLD

1. 1과목 제 1장 데이터 모델링의 이해 - 자격증 도전기

량아이 2022. 7. 25. 21:38

리눅스마스터라는 큰 산을 해치운 나는 이번엔 sqld에 도전하고자 한다.

아예 sqld에 대해 하나도 모르던 나에겐 처음엔 너무 어렵게 다가왔지만

최근에 그저 이게 sql이란 프로그램 사용법이란 것을 깨달은 나는 부담을 털어버리고 일단 부딪쳐보기로 한다.

1과목인 이론은 처음봤을 때 굉장히 어려웠으나, 문제들은 생각보다 그리 어렵지 않았고

노랭이 제 1장을 풀어본 결과 30개중 15개를 맞췄다.

 

문제중 다시 찾아봐야했던 개념들을 다시 모아보자면,

 

데이터모델링 개념

개념적 - 추상화 수준이 높고 업무중심적, 포괄적 수준의 모델링

논리적 - 정확하게 표현, 재사용성 높음

물리적 - db에 이식할 수 있도록 성능, 저장 등 물리적인 성격을 고려하여 설계

 

데이터베이스 스키마 구조 3단계

외부스키마 - 개별 사용자 관점,

                    추상화의 최상위 단계, 개체나 관계, 응용 프로그램 모두 사용자와 관련된 것만 포함

개념스키마 - 조직 전체의 관점

                    종합적인 측면을 나타냄, 관리적인 측면에서 필요한 데이터나 정책, 권한 관리

내부스키마 - 물리적인 저장 장치의 관점

                    가장 낮은 추상화단계, (물리적 입장)db의 저장구조와 세부사항, 접근경로 등을 기술

 

ERD 표기법

ERD 표기법

-엔티티를 어디에 배치하는가는 필수 사항이 아니다.

-가독성 측면에선 왼쪽 -> 오른쪽, 위 -> 아래 순서로 배치하는 곳이 좋다

 

엔티티

엔티티와 속성

-발생시점 분류

기본 엔터티(키엔터티) - 그 업무에 원래 존재하는 정보로서, 독립적인 생성이 가능하고 타 엔터티의 부모역할을 하게 된다.

                                     고유한 주 식별자를 가진다.      ex)사원, 고객

중심 엔터티(메인 엔터티) - 기본 엔터티로부터 발생, 중심적인 역할, 다른 엔터티와의 관계를 통해 행위 엔터티 생성

                                         ex)계약, 주문, 매출

행위 엔터티 - 두 개 이상의 부모 엔터티로부터 생성, 자주 내용이 바뀌거나 데이터량이 증가된다. 분석 초기 단계에는 발생하지 않으나, 데                       이터량이 중가하면서 도출될 수 있다. ex)주문 목록, 사원 변경이력, 장비 점검 목록

-유무형 분류

개념 엔터티 - 물리적 형태 x, 개념적 정보로 구분되는 엔터티  ex)보험상품

 

속성 - 업무에서 꼭 필요로 하는 인스턴스에서 관리하고자 하는 의미상 더이상 분리되지 않는 최소의 데이터 단위

속성 관계

속성의 특성에 따른 분류

기본속성 - 업무로부터 추출한 모든 속성

설계속성 - 필요에 따라 설계자가 새로 만들거나 변형한 속성 ex) 예금분류

파생속성 - 다른 속성에 영향받아 탄생, 계산된 값들이 여기에 해당 ex) 이자

 

식별자

*이름은 동명이인이 있을 수 있으므로 주식별자가 되지 못한다

부모 엔터티가 먼저 소멸되면 비식별자 관계 연결

부모와 자식 엔터티가 같이 소멸되면 주식별자 관계 연결