728x90
1장. 논리 데이터 베이스 설계
1-0. 데이터베이스 설계
- 사용자의 요구를 분석하여 그것들을 컴퓨터에 저장할 수 있는 DB의 구조에 맞게 변형한 후 특정 DBMS로 데이터베이스를 구현하여 일반 사용자들이 사용하게 함.
- 데이터베이스 설계시 고려사항
- 무결성 : 삽입, 삭제, 갱신 등의 연산 후에도 DB에 저장된 데이터가 정해진 제약조건을 항상 만족해야함.
- 일관성 : DB에 저장된 데이터들 사이나, 특정 질의에 대한 응답이 처음부터 끝까지 변함없이 일정해야함.
- 회복 : 시스템 장애 발생시 직전의 상태로 복구 할 수 있어야 한다.
- 보안 : 불법적인 상황에 대하여 보호할 수 있어야 한다.
- 효율성 : 응답시간 단축, 시스템 생산성 등
- DB 확장 : DB 운영에 영향을 주지 않으면서 지속적으로 데이터 추가
1-1. 데이터베이스 설계 순서
- 요구조건 분석 -> 개념적 설계 -> 논리적 설계 -> 물리적 설계 -> 구현
- 요구조건 분석 : 데이터 베이스를 사용할 사람들로부터 필요한 용도를 파악
- 개념적 설계(정보모델링) : 정보의 구조를 얻기 위하여 현실 세계의 무한성과 계속성을 이해하고, 현실세계에 대한 인식을 추상적 표현
- 논리적 설계(데이터모델링) : 현실세계에서 발생하는 자료를 컴퓨터가 이해하고 처리할 수 있는 물리적 저장장치에 저장할 수 있도록 변환하기 위해 특정 DBMS가 지원하는 논리적 자료구조로 변환
- 물리적 설계(데이터 구조화) : 논리적 설계 단계에서 논리적 구조로 표현된 데이터를 디스크 등의 물리적 저장장치에 저장할 수 있는 물리적 구조의 데이터로 변환하는 과정
1-2. 데이터 모델
- 데이터, 데이터의 관계, 데이터 의미 및 일관성, 제약조건 등을 기술하기 위한 개념적 도구들의 모임
- 데이터 모델 구성요소 : 개체, 속성, 관계
- 개체 : DB에 표현하려는 것, 사람이 생각하는 개념
- 속성 : 데이터의 가장 작은 논리적 단위( ex) 기본속성, 설계속성, 파생속성)
- 관계 : 개체 간의 관계 or 속성 간의 논리적 연결( ex) 종속관계, 중복관계, 재귀관계, 배타관계)
- 데이터 모델 종류 : 개념적, 논리적, 물리적
- 데이터 모델 표시요소 : 구조, 연산, 제약조건
1-3. 식별자
- 하나의 개체 내에서 각각의 인스턴스를 유일하게 구분할 수 있는 구분자로, 모든 개체는 한 개 이상의 식별자를 가져야함.
- ex) 주식별자/보조식별자, 내부식별자/외부식별자, 단일식별자/복합식별자, 원조식별자/대리식별자
1-4. E-R(개체-관계) 모델
- 개체와 개체 간의 관계를 기본 요소로 이용. 개념적 논리 데이터를 표현.
- 데이터를 개체, 관계, 속성으로 묘사함.
1-5. 관계형 데이터베이스
- 관계형 데이터베이스를 구성하는 개체나 관계를 모두 릴레이션 이라는 표로 표현한다.
- ex) 학생 릴레이션
학번 | 이름 | 학년 | 신장 | 학과 |
20171000 | 홍길동 | 3 | 175 | 컴퓨터공학과 |
20181001 | 이순신 | 2 | 180 | 정보보호학과 |
20191005 | 유관순 | 1 | 160 | 컴퓨터공학과 |
20141006 | 안창호 | 4 | 170 | 정보보호학과 |
- 튜플 : 릴레이션을 구성하는 각각의 행, 튜플의 수를 카디널리티 또는 기수 라고함.
- 속성 : 데이터베이스를 구성하는 가장 작은 논리적 단위, 속성의 수를 디그리라고 함.
- 도메인 : 하나의 애트리뷰트가 취할 수 있는 같은 타입의 원자 값들의 집합
- 키 : DB에서 조건에 만족하는 튜플을 찾거나 순서대로 정렬할 때 튜플들을 서로 구분할 수 있는 기준이 되는 속성
- 후보키 : 릴레이션을 구성하는 속성들 중에서 유일성과 최소성을 만족하는 키
- 기본키 : 후보키 중에서 선정된 주키로, 중복된 값을 가질 수 없다.
- 대체키 : 후보키가 둘 이상일 때 기본키를 제외한 나머지 후보키
- 슈퍼키 : 한 릴레이션 내에 있는 속성들의 집합으로 구성된 키로, 유일성은 만족하지만 최소성은 만족 X
- 외래키 : 다른 릴레이션의 기본키를 참조하는 속성 또는 속성들의 집합
- 무결성 : DB에 저장된 데이터 값과 그것이 표현하는 현실세계의 실제 값이 일치하는 정확성을 의미.
- 개체무결성 : 기본 테이블의 기본키를 구성하는 어떤 속성도 NULL 값이나 중복값을 가질 수 없다는 규정
- 도메인무결성 : 주어진 속성 값이 정의된 도메인에 속한 값이어야 한다는 규정
- 참조무결성 : 외래키 값은 NULL이거나 참조 릴레이션 기본키 값과 동일해야 한다
- 관계대수 : 관계형 DB에서 원하는 정보와 그 정보를 검색하기 위해서 어떻게 유도하는 가를 기술하는 절차적 언어
- 순수관계 연산자 : SELECT(σ), PROJECT(π), JOIN(▷◁), DIVISION(÷)
- 일반관계 연산자 : UNION, INTERSECT, DIFFERENCE, CARTESIAN PRODUCT
- 일반집합 연산자 : 합집합, 교집합, 차집합, 교차곱
- 관계해석 : 관계 데이터의 연산을 표현하는 방법, 원하는 정보를 정의할 때는 계산수식을 이용
- 정규화 : 함수적 종속성 등의 종속성 이론을 이용하여 잘못 설계된 관계형 스키마를 더 작은 속성의 세트로 쪼개어 바람직한 스키마로 만들어가는 과정
- 이상의 개념 및 종류
- 정규화를 거치지 않으면 데이터들이 불필요하게 중복되어 예기치 못한 곤란한 현상이 발생. 이 현상
- 삽입이상 : 데이터 삽입 시 원하지 않는 값들도 함께 삽입
- 삭제이상 : 한 튜플을 삭제할 때 상관 없는 값들도 함께 삭제
- 갱신이상 : 속성 값을 갱신할 때 일부 정보만 갱신
- 정규화과정
- 도 부 이 결 다 조
- 1NF : 도메인이 원자값
- 2NF : 부분적 함수 종속성 제거
- 3NF : 이행적 함수 족속성 제거
- BCNF : 결정자 이면서 후보키가 아닌 것 제거
- 4NF : 다치 종속성 제거
- 5NF : 조인 종속성 제거
- 이상의 개념 및 종류
- 반정규화
- 시스템의 성능 향상, 개발 및 운영의 편의성 등을 위해 정규화된 데이터 모델을 통합, 중복, 분리하는 과정으로, 의도적으로 정규화 원칙을 위배하는 행위이다.
- 반정규화 방법
- 테이블 통합 : 두 개의 테이블이 조인되는 경우가 많아 하나의 테이블로 통합
- 테이블 분할 : 수평분할, 수직분할
- 중복 테이블 추가 : 데이터를 추출해서 사용하거나, 다른 서버에 저장된 테이블 이용시 중복 테이블을 추가하여 작업의 효율성 향상
- 중복 속성 추가 : 조인해서 데이터를 처리할 때 경로를 단축하기 위해서 속성을 하나 더 추가
- 시스템 카탈로그
- 시스템 자체에 관련이 있는 다양한 객체에 관한 정보를 포함하는 시스템 데이터 베이스
- 시스템 카탈로그에 저장된 정보를 메타 데이터라고함.
728x90
'정보처리기사 필기' 카테고리의 다른 글
3과목 : 데이터베이스 구축(3장. SQL 응용 : 주요 키워드 정리) (0) | 2022.08.02 |
---|---|
3과목 : 데이터베이스 구축(2장. 물리 데이터 베이스 설계 : 주요 키워드 정리) (0) | 2022.08.02 |
2과목 : 소프트웨어 개발 (4장. 인터페이스 구현 : 주요 키워드 정리) (0) | 2022.08.01 |
2과목 : 소프트웨어 개발 (3장. 애플리케이션 테스트: 주요 키워드 정리) (0) | 2022.08.01 |
2과목 : 소프트웨어 개발 (2장. 통합구현 & 소프트웨어 패키징 : 주요 키워드 정리) (0) | 2022.08.01 |