[정보처리기사_필기] 데이터 베이스 <1>
- Life Logs/Study Notes
- 2014. 1. 31. 21:58
■정보처리시스템과데이터베이스의개념
✔데이터:현실세계에서측정되는값
✔정보:자료를처리한사용자가원하는값
✔정보시스템:데이터를수집->처리->정보생성
✔자료처리시스템
-일괄처리시스템:급여계산,회계,세무
-온라인처리시스템:데이터처리요구시즉시처리
-분산처리시스템
✔데이터베이스
-파일시스템에서파일이프로그램에종속되므로중복이일어나는것을해결
-데이터값에의한검색이가능하다.
-정의:통합데이터,공용데이터,운영데이터,저장데이터
-특성:실시간접근성,내용에의한변화,동시공유
-장점:중복최소화,일관성,무결성
-단점:초기구축비용이비싸다.전문가가부족하다.서버부담이크다.
■DBMS(DatabaseManagementSystem)
✔정의
-데이터베이스를관리하기위해사용되는프로그램의집합
-사용자의쿼리에응답하는프로그램
-종속성과중복성의문제를해결하기위해제안된시스템
-응용프로그램과데이터사이에존재
✔장점
-데이터의보안보장이용이
-무결성과일관성유지
✔필수기능
-정의기능(DDL):데이터베이스생성(create),제거(drop)
-제어기능(DCL):데이터베이스를관리(보안,권한검사,무결성유지)
-조작기능(DML):데이터베이스검색(select),사용
✔스키마:데이터의구조,데이터의제약조건을명시
-개념스키마(ConceptualSchema):전체적인전문가용설계
-외부스키마(ExternalSchema):사용자에게보여줄모델하우스
-내부스키마(InternalSchema):물리적인구조
✔DBA(DataBaseAdministrator)의역할
-정의,관리,보안등총체적역할
-데이터에접근하기위한응용프로그램제작은프로그래머가한다.
-데이터에접근하는것을중앙통제하는사람
-응용프로그래머가데이터를수정보완하려면허락을맡어야하는사람
■데이터모델링및설계
✔데이터모델
-현실을컴퓨터로옮기는과정
-개념적데이터모델:약속된기호로설계
-구성요소:데이터구조,연산,제약조건,관계X,물리적구조X
-모델링과정:모델->스키마->인스턴스
✔개체관계(E-R)모델
-E-R모델
➤P.Chen이제안
➤개체와개체사이의관계를그림으로표현
➤개념적설계(무엇을데이터할것인가)에사용
-기본키:개체인스턴스를대표하는속성
-개체(Entity)
-관계(relation)
➤1:1관계
➤1:N관계
➤N:M관계
➤새발(crow-feet)표기법
-O:0을의미
-|:1을의미
-₭:1이상을의미
-확장된ER모델:기본키를●으로표시
-속성:개체를묘사하는특성
✔논리적데이터모델
-계층형DB:트리형태의자료구조
-망형DB:오너-멤버관계
-관계형DB:데이터베이스를테이블로표현하고서로의관계를정의
-객체지향형DB
■데이터베이스설계
1.요구조건분석
2.개념적설계(What?)
-개념스키마(ER도형)
-DBMS에독립적
3.논리적설계
-효율적인DB화(정규화):개체(Table)를분리
4.물리적설계
-Data크기,Type설정
5.데이터베이스구축
■정규화
✔이상현상을없에기위해서테이블을분리->중복의최소화
✔이상의종류
-삽입이상
-삭제이상
-갱신이상
✔정규화과정
-비정규->제1정규형->제2정규형->제3정규형->제BCNF정규형
-제1정규형:모든속성은원자값이면Pass아니면수행
-제2정규형:완전함수적종속이면""
-제3정규형:이행적함수종속이생겼는지
-BCNF정규형:모든결정자는후보키여야한다.
■관계형데이터베이스
✔관계데이터모델
-기본키와이를참조하는외래키로구성
-개체를테이블로사용,이들사이의관계를공통속성으로연결
-DBMS는레코드간의논리적인관계를표현하는2차원테이블집합
✔릴레이션구성요소
-Table=Entity
-열=컬럼(Colum),속성(Attribute)
-행=Row,Record,튜플
-차수(Degree):속성의수
-Cardinarity:튜플의수
-도메인:속성이취할수있는제한된선택값(ex:속성이성별일때:남,여)
✔릴레이션의특성
-한릴레이션에서튜플은상이
-한릴레이션에서튜플의순서는없다
-모든속성은원자값
-속성은릴레이션내에서유일한이름
관계데이터모델 | 파일시스템 | 비고 |
릴레이션 | 파일 | 테이블 |
튜플 | 레코드 | 행 |
속성 | 필드 | 열 |
릴레이션차수 | 속성의개수 | |
카디널리티 | 튜플의개수 |
-속성들간순서없음
✔키(Key)
-기본키
➤테이블에서유일한식별자
➤유일성:중복x
➤원자성:최소성
➤Null값(부재정보)이될수없다
➤외래키로참조된
-외래키(Foreignkey):참조키
➤두테이블을연결시켜주는속성
-후보키(candidatekey)
➤외래키가될수있는속성
-대체키(alternatekey)
➤후보키중에기본키로지정되지않은후보키
✔무결성(integrity)
-정확성,일관성
-한명이상의사용자가동시에같은데이터베이스를수정하지못하게제한
✔무결성제약조건
-개체무결성:기본키의속성값은널값이거나중복될수없다
-참조무결성:R1에서R2를참조할때참조되는튜플이반드시R2에존재해야함
■관계데이터언어
✔관계대수
-과정(절차적언어)
-연산규칙을제공
-순수관계연산자
➀프로젝션
➤선택된속성값을선택
➤π기호사용
➤중복열은제거하고보여준다
➁조인
➤공통된속성기준2개의테이블을하나로만듦
➤⑅기호사용
➂셀렉션
➤선택된튜플을선택
➤σ기호사용
-관계대수집합연산자
➤합집합
➤교집합
➤차집합
➤카디션곱:두릴레이션의모든행을연결하여3번째테이블을만든다.
✔관계해석:결과(선언적언어)