SQLD 1-1 ] 데이터 모델의 이해
모델링
- 복잡한 현실세계를 단순화 시켜 표현
모델링의 특징 3가지
- 추상화 → 다양한 현상을 일정한 양식으로 표기
- 단순화 → 약속된 규약대로 표기
- 명확화 → 애매모호 제거, 정확하게 기술
모델링의 중요성 3가지
- 파급효과 → 나중에 있을 일을 생각하면 ....
- 간결한 표현 → 간결한 표현으로 빠른 파악 가능
- 데이터 품질 → 오래 보관하려면 품질이 좋아야겠지
모델링 할 때 유의점 3가지
- 중복 → 여러 장소에 같은 정보를 저장하지 않도록
- 비유연성 → 너무 잦은 변경은 유지보수가 어려워짐
- 비일관성 → 데이터와 데이터간 관계를 명확히
데이터 모델링의 3단계 진행
- 개념적 데이터 모델링 : 추상적... 엔티터-관계 다이어그램 만드는 정도?
- 논리적 데이터 모델링 : 데이터 모델링이 최종적으로 완료된 상태. 물리적DB에 집어넣기만하면됨
- 물리적 데이터 모델링 : 실질적으로 물리적 DB로...
데이터 독립성
- 데이터 종속성의 반대. 뭔가 독립적으로 각각의 고유 기능을 유지시키며 그 기능을 극대화시키는 것
데이터 베이스 3단계 구조
- 외부 스키마 : 겉 DB? View 단계 여러개의 사용자 관점으로 구성. 그냥 각각 사용자의 관점에서 겉에서 보는 DB 정의
- 개념 스키마 : 이제 조금 더 넓게 봐서 모든 사용자 관점을 통합한 "조직 전체의 DB"
- 내부 스키마 : 심도깊게 물리적 장치에서 데이터가 어떻게 실제적으로 저장되는지..
두 영역의 데이터독립성
- 논리적 독립성 : 외부스키마와 개념스키마의 사이. 개념 스키마가 바뀌어도 외부스키마에는 영향 안미치도록 해줌.
- 물리적 독립성 : 개념스키마와 내부스키마의 사이. 내부 스키마가 바뀌어도 외부/개념 스키마에는 영향 안미치도록 해줌.
데이터 모델링의 세 가지 요소
- 것(Things), 성격(Attributes), 관계(Relationships)
데이터 모델링은 DBA 가 모델링을 전적으로 하는 예가 없고.. 그냥 정보 시스템을 구축하는 모든 사람들은
모두 알고 있어야 한다. (개발자, DBA, 전문 모델러, 현업업무전문가, 등..)
ERD (Entity Relationship Diagram) 작업 순서
- 1. 엔터티 그리기 (네모난 박스)
2. 엔터티 배치 (가장 중요한 엔터티는 왼쪽 상단부터 밑으로 ...)
3. 관계 설정 (엔터티간 선 긋기)
4. 관계명 기술 (무슨 관계인지 적기)
5. 참여도 기술 (까마귀발 같은 모양으로 그리는거)
6. 필수여부 기술 (까마귀발에 관계선에 원을 표현)
좋은 데이터 모델의 요소
- 1. 완전성 : 업무에 필요한 데이터들은 모두 모델에 정의되어있어야한다.
2. 중복배제 : 하나의 DB 내에 동일사실은 한번만!! (나이랑 생년월일..?)
3. 업무규칙 : 모든 기능들(업무규칙)을 적용해야.. 그래야 해당 데이터 모델을 사용하는 사용자가 동일한 판단을 한다
예를들어 급여 항목을 차등적으로 지급받는다는 업무 규칙이 있듯이
4. 데이터의 재사용 : 쓸수있는건 한번더 쓰자
5. 의사소통 : 도출되는 많은 업무규칙(기능) 들을 최대한 자세하게!!
예를들어 사원 테이블에는 어떤 사원구분을 가지고 있는지.. 정규직.. 계약직..
6. 통합성 : 동일한 데이터는 전체에서 한번만 정의하고 다른 영역에서 참조시켜 사용하자
반응형
글이 도움이 되셨다면 공감과 광고 클릭 한번 부탁드립니다! 💕
감사합니다 ✨
댓글
이 글 공유하기
다른 글
-
SQLD 1-5 ] 식별자
SQLD 1-5 ] 식별자
2016.02.14 -
SQLD 1-4 ] 관계
SQLD 1-4 ] 관계
2016.02.12 -
SQLD 1-3 ] 속성
SQLD 1-3 ] 속성
2016.02.12 -
SQLD 1-2 ] 엔터티
SQLD 1-2 ] 엔터티
2016.02.12