<개체와 속성>
개체
개체의 정의
- 레코드에 대응하는 개념
- 독립적으로 존재
개체 타입
- 개체 스키마
- 유일한 식별자에 의해 식별 가능해야함
- 개체 타입에는 속성들이 포함되어 있어야 함
- 다른 개체 타입과 최소 한 개 이상의 관계가 있어야 함
개체 타입을 명명하는 일반적인 기준
- 실제 업무에서 사용하는 용어 사용
- 약어 사용하지 않는다
- 단수 명사 사용
- 이름은 유일해야함
- 의미에 따라 이름 부여
개체 어커런스 - 레크드의 값
개체 집합 - 개체 어커런스들의 집합
속성
- 더 이상 분리되지 않은 최소의 데이터 단위
- 필드
- 각각의 개체 타입은 속성의 집합으로 설명 가능
- 하나의 속성 : 하나의 개체 타입에만 존재
속성에 따른 분류
- 기본 속성
- 모든 속성
- 일반적, 많이 사용됨
- 다른 속성에 영향 받아 생성되는거 제외
- 설계 속성
- 설계를 하면서 도출되는 속성
- 새로 만들거나 변형하여 정의하는 속성
- 파생 속성(Derived Attribute)
- 다른 속성으로부터 변형되어 생성되는 속성
- 계산 된 값
개체 구성 방식에 따른 분류
- 기본키 속성
- 개체를 식별할 수 있는 속성
- 외래키 속성
- 다른 개체와 관계에 포함된 속성
- 일반 속성
- 개체에 포함 됨 || 외래키에 포함 안됨
속성 후보 선정 원칙
- 원시 속성으로 보이는 후보는 제거하지 않는다
- 다시 재현할 수 없는거
- 제거하면 정보가 소실됨
- 소그룹별로 후보군을 만들고, 가장 근접한 개체에 할당
- 모든 개체가 드러나지 않아서
식별자
- 각각의 개체 구분할 수 있는 결정자
- 모든 개체 타입에는 반드시 하나 이상의 식별자 있어야함.
식별자 구분
- 주 식별자, 보조식별자
- 주 : 개체 타입의 대표성을 나타내는 유일한 식별자
- 개체 타입이 하나에 한개
- 물리테이블 -> 기본키
- 보조 : 주 식별자 대신, 보조적으로 식별 가능
- 하나 이상 가능
- 주 : 개체 타입의 대표성을 나타내는 유일한 식별자
- 내부 식별자, 외부식별자
- 내부 : 스스로 생성되어 존재
- 외부: 다른 개체 타입과의 관계에 의해 주 식별자의 속성 상속받음,
- 주 식별자 영역에 포함될 수도, 일반 속성에 포함될 수도
- 연결자 역활
- 단일 식별자, 복합 식별자
- 단일 속성으로 식별 되는 가
- 단일 : 주 식별자의 구성이 한 가지 속성
- 복합 : 두 개의 이상의 속성으로 구성
- 원조(Artificial) 식별자, 대리(Surrogate)식별자
- 대체 여부에 따름
- 대리 : 주 식별자가 복합일 때, 여러개 속성 묶어 하나의 속성으로
후보 식별자 조건
- 각 인스턴스 유일하게 식별 O
- 나머지 직접 속성할 수 있어야 함
- 널 X
- 개념적으로 유일해야함
- 자주 변경하지 않는 것
인조 식별자 조건
- 최대한 범용적인 값
- 유리한 값 만들고 싶을 때
- 편의성, 단순성, 의미의 체계화, 내부적 사용시
개체 정의서
- 개체, 속성, 식별자가 모두 확정 -> 명세서 작성
개체 정의서 포함 항목
- 개체 타입명
- 개체 타입 설명
- 동의어/유의어
- 개체 타입 구분
- 관련 속성들
- 식별자
<정보 모델링과 데이터 모델링>
모델링
개념
- 정보 모델링 : 개체 -> 정보 구조로 표현하는 과정
- 데이터 모델링 : 정보 구조 -> 논리적인 데이터 구조 (컴퓨터가 이해O)
모델링 단계
- 현실 단계 : 개체 파악, 개체 실체 만들어냄
- 개념 단계 : 공통점 찾아 추상화 (그림으로 표현?)
- 논리 단계 : 데이터들의 관계로 구성 (레코드 필드,,)
데이터 모델링
구성요소
- 논리적 구조
- 연산
- 데이터 삽입, 삭제, 변경
- 제약조건
- 데이터 구조에서 허용할 수 있는 관계를 명세화
목적
- 정보 요구에 정확한 이해
- 효율적인 의사소통 수단
- 유지 보수 비용 감소 효과 기대
- 개발 기초
특성
- 업무 흐름 파악 용이
- 무결성 보장 O
- 데이터 공유를 통한 중복 제거, 일관성 있는 정보 제공 O
데이터 모델링 절차
데이터 모델링 절차
0. 요구사항
1. 개념(Conceptual) 데이터 모델링
- 정보 내용 만족
- 성능 목적 지원
- E-R모델
- 논리 데이터 모델의 기초
- 개념 모델링 2단계
- 개념 스키마 모델링
- E-R다이어그램
- 트랜잭션 모델링
- 고차원 명세로 기술
- 개념 스키마 모델링
2. 논리 데이터 모델링 (분석)
- 개념
- DB 개발 과정 첫 단계
- 가장 핵심
- 개념 구조 -> 논리적 구조
- DB 관리자가 사용
- 관계형 데이터 모델, 계층적 데이터 모델, 네트워크 데이터 모델
- 정규화하여 모델링함
- 완전하고 정확하게 표현
- 특정 DBMS로부터 독립적
- 논리적 데이터 모델링 3단계
- 논리적 DB구조로 매핑
- 트랜잭션 인터페이스 설계
- 스키마의 평가 및 정제(최적화)
- 특성
- 충분히 수집하지 않으면 비용 발생
- E-R모델 활용
- HW , SW에 독립적
3. 물리 데이터 모델링 (설계)
- 개념
- DB생성을 위한 물리 구조로 변환
- 레코드 양식, 응답시간, 저장공간 등 설계
- 3단계
- 레코드 분석 및 설계
- 저장 레코드들을 클러스터링 (데이터 하나로 집중 or 분산)
- 접근 경로 설계
- 오브젝트 추가
- 설계용 개체 타입 추가
- 설계용 속성 추가
- 성능을 고려한 조정
- DBMS 고려
- 개체 타입의 분리 or 통합 검토
- 반정규화
- 관계를 해체
- DBMS에 적합한 성능 조정
- 인덱스 추가 및 조정
- 테이블 스페이스 조정
- 인덱스 스페이스 조정
4. 데이터 베이스 구축 (개발)
- 개념
- 설계된 데이터 저장하기 위해 -> DBMS이용하여 DB생성
- 고려사항
- 무결성
- 일관성
- 회복성
- 보안성
- 호율성
- 확장성
5. 데이터베이스
관계
1. 종류
- 속성 관계
- 속성과 속성 사이의 관계
- 개체 내 관계
- 개체 관계
- 개체와 개체 사이 관계
- 개체 간의 관계
- 종속 관계 (Dependent Relationship)
- 식별 관계
- 외래 식별자-> 하위 개체의 주 식별자의 전체 or 일부로 존재
- 비식별 관계
- 외래 식별자 -> 하위 개체의 일반 속성으로
- 식별 관계
- 중복 관계 (Redundant Relationship)
- 두 개체 간 두 번 이상의 종속 관계 발생
- 재귀 관계 (Recursive Relationship)
- 자기 자신 개체를 다시 참조
- 배타 관계 (Exclusive Relationship)
- 데이터 통합
- AND, OR관계
2. 관계의 대응
- 1:1
- 반드시 한 개씩
- 1:0 or 1:1
- 한 개 : 한개 이하
- 1:1 or 1:N
- 반드시 한 개 : 한 개 이상
- 1:0 or 1:1 or 1:N
- 반드시 한 개 : 한 개 이상 or 없
- 1:N
- 반드시 한 개 : 반드시 한 개 이상
3. M:N 관계의 해소
- 구현 불가
- N : 1로 변경해야 함
- 논리적 완성, 부분집합 식별 능력 제한
- 정규화 x, 불안정, 문서화 적업 완료 X
4. 관계의 특징
- (1:1 - 1:0 ) or (1:1 - 1:1 ) : 개체 1, 개체 2는 주 식별자가 동일
- 성능 향상, 데이터 보안 목적
<E-R다이어 그램 작성>
E-R다이어 그램
1. 배경
2. 개념
- 개체와 관계로 현실 세계를 표현한 모델
- 기본 요소 : 개체, 관계, 속성
3. 특징
- 식별자, 상관관계, 속성 설명해줌
- 물리적 시스템 환경 고려 X
- 설계 변경이 거의 발생 X
- 논리 data 모델 -> 하나의 개체 != 하나의 테이블이나 세그먼트
E-R다이어그램 표기법
1. 개체 - 사각형
- 사물 or 사건
- 유일한 단어
2. 속성 - 동그라미
- 개체가 가지고 있는 요소 or 성질
- 속성명 != 개쳄여
- 속성 값이 NOT NULL인지, NULL인지 고려
3. 관계 - 마름모
4. E-R 모델 작성 기법
- 개체들을 정렬하며 배열
- 좌에서 우, 상에서 하
- 관계는 사선 X
- 교차선 X,
확장 E-R다이어그램 (ERD)
1. 슈퍼 타입, 서브 타입
- is-a 관계 가짐
- 서브 타입 -> 슈퍼 타입이 되어 -> 여러 개 서브 타입 가질 수 O
2. 특수화 (Specialization) ↓
- 여러 개로 분리
- 하향식 설계
3. 일반화 (Zeneralization) ↑
- 공통적인 특성 -> 상위객체로
- 클래스들 간의 개념적인 포함 관계
- 상향식
4. 상속 (inheritance)
- 하위 클래스는 상위 클래스 모든 것 상속 O
- 하나의 하위 클래스는 여러개의 상위 클래스 상속 O
5. 집단화(Aggregation)
- 여러 개체 타입을 묶어 -> 하나의 상위 객체 만들 수 있
- 중복될 수 있는 개체 -> 단순하게 표현 O
- 특수화, 일반화 -> 집단화 상속 관계 X
6. 분류화(Classification)
- 공통적인 성질을 갖는 멤버들 표현
- 상속 관계X
- root노드 유형
'자격증 > 정보처리기사' 카테고리의 다른 글
[2021 정보처리기사 실기] 정리 (0) | 2021.04.23 |
---|---|
[2-3] 제품 소프트웨어 패키징 (0) | 2021.03.06 |
<3-1> 데이터 베이스의 개요 (0) | 2021.03.04 |
2021 정보 처리기사 필기 정리 (0) | 2021.03.01 |