데이터베이스( Database )
특정 조직의 업무를 수행하는 데 필요한 상호 관련된 데이터들의 모임
DBMS( DataBase Management System, 데이터베이스 관리 시스템 )
사용자와 DB 사이에서 사용자의 요구의 따라 정보를 생성해주고, DB를 관리해주는 소프트웨어
- DBMS의 필수 기능
- 정의 기능( Definition )
: 모든 응용 프로그램들이 요구하는 데이터 구조를 지원하기 위해
DB에 저장될 데이터의 형(Type)과 구조에 대한 정의, 이용방식, 제약 조건 등을 명시하는 기능 - 조작 기능( Manipulation )
: 데이터 검색, 갱신, 삽입, 삭제 등을 체계적으로 처리하기 위해 사용자와 DB 사이의 인터페이스 수단 제공 - 제어 기능( Control )
: DB를 접근하는 갱신, 삽입, 삭제 작업이 정확하게 수행되어 데이터의 무결성이 유지되도록 제어 기능
- 정의 기능( Definition )
- DBMS의 종류
- 계층형 DBMS
: 트리(Tree) 구조를 이용해서 데이터의 상호관계를 계층적으로 정의한 DBMS
개체 타입 간에는 상위(Owner)와 하위(Member) 관계가 존재하며, 일 대 다(1:N) 대응 관계만 존재 - 망형 DBMS
: 그래프를 이용해서 데이터 논리 구조를 표현한 DBMS로, 상위(Owner)와 하위(Member) 레코드 사이에서
1:1, 1:N, N:M 대응 관계를 모두 지원 - 관계형 DBMS
: 계층형과 망형 DBMS의 복잡한 구조를 단순화시킨 가장 널리 사용되는 DBMS
파일 구조처럼 구성한 2차원적인 표(Table)를 하나의 DB로 묶어서 테이블 내에 있는 속성들 간의
관계(Relationship)를 설정하거나 테이블 간의 관계를 설정하여 이용
- 계층형 DBMS
분산 데이터베이스( Distributed Database )
논리적으로는 같은 시스템에 속하지만 물리적으로는 컴퓨터 네트워크를 통해 분산되어있는 DB
- 분산 데이터베이스 목표
- 1. 위치 투명성( Location Transparency )
: 접근하려는 데이터베이스의 실제 위치를 알 필요 없이 단지 DB의 논리적인 명칭만으로 접근할 수 있음 - 2. 중복 투명성( Replication Transparency )
: 동일한 데이터가 여러 곳에 중복되어 있더라도 사용자는 마치 하나의 DB만 존재하는 것처럼 사용할 수 있음 - 3. 병행 투명성( Concurrency Transparency )
: 분산 데이터베이스와 관련된 다수의 트랜잭션들이 동시에 실행되더라도 그 트랜잭션들의
수행 결과를 서로 영향을 받지 않는다 - 4. 장애 투명성( Failure Transparency )
: 트랜잭션은 DBMS, 네트워크, 컴퓨터 장애에도 불구하고 트랜잭션은 정확하게 수행됨
- 1. 위치 투명성( Location Transparency )
고급 데이터베이스
- 데이터 웨어하우스( Data Warehouse )
: 급증하는 다량의 데이터를 효과적으로 분석하여 정보화하고, 이를 여러 계층의 사용자들이
효율적으로 사용할 수 있도록 한 DB - 데이터 마트( Data Mart )
: 데이터 웨어하우스로부터 특정 주제나 부서 중심으로 구축된 소규모 단일 주제의 데이터 웨어하우스 - 데이터 마이닝( Data Mining ) 실기기출
: 데이터 웨어하우스에 저장된 데이터 집합에서 사용자의 요구에 따라 유용하고 가능성 있는 정보를 발견하는 기법 - OLAP( Online Analytical Processing )
: 다차원으로 이뤄진 데이터로부터 통계적인 요약 정보를 분석하여 의사결정에 활용하는 방식 - OLTP( Online Transaction Processing )
: 온라인 업무 처리형태의 하나. 네트워크상의 여러 이용자가 실시간으로 DB의 데이터를
갱신하거나 검색하는 등의 단위 작업을 처리하는 방식
ER( Entity Relationship )모델
개념적 데이터 모델의 가장 대표적인 모델
- 관계 및 관계 타입
- 차수( Degree ) : 관계에 참여하는 개체 타입( 속성,Attribute )의 개수
- 카디널리티( Cardinality ) : 관계에 참여하는 개체(튜플, Tuple)의 개수
- 차수에 따른 관계 종류
- 단항 관계 : 관계에 참여하고 있는 개체 타입이 1개인 관계
- 이항 관계 : 관계에 참여하고 있는 개체 타입이 2개인 관계
- 삼항 관계 : 관계에 참여하고 있는 개체 타입이 3개인 관계
- n항 관계 : 관계에 참여하고 있는 개체 타입이 n개인 관계
- 카디널리티에 따른 관계 종류
- 1:1 관계 : 두 개체 타입이 모두 하나씩의 개체 카디널리티를 갖는 관계
- 1:N 관계 : 개체 타입 중 한 개체타입은 여러 개의 개체 카디널리티를 갖고, 다른하나는 1개의 개체 카디널리티
- N:M 관계 : 두 개체 타입 모두 여러 개의 개체 카디널리티를 가질 수 있는 관계
관계 데이터베이스의 Relation 구조 실기기출
릴레이션은 데이터들의 표(Table)의 형태로 표현한 것
- 릴레이션 스키마 : 구조를 나타냄
- 릴레이션 인스턴스 : 실제 값들
- 튜플( Tuple )
- 릴레이션을 구성하는 각각의 행
- 속성의 모임으로 구성
- 파일 구조에서 레코드(Record)와 같은 의미
- 튜플의 수 = 카디널리티(Cardinality)
- 속성( Attribute )
- 릴레이션을 구성하는 각각의 열
- DB를 구성하는 가장 작은 논리적 단위
- 파일 구조 상의 데이터 항목 또는 데이터 필드에 해당
- 개체의 특성을 기술
- 속성의 수 = 차수(Degree)
- 도메인( Domain )
- 하나의 속성(Attribute)이 취할 수 있는 같은 타입의 원자값(Atomic)들의 집합
- 실제 속성(Attribute)값이 나타낼 때 그 값의 합법 여부를 시스템이 검사하는데 사용
- 인스턴스( Instance )
- 속성들에 데이터 타입이 정의되어 구체적인 데이터 값을 갖고 있는 것
ER모델을 관계형 데이터 모델로 변환
ER 모델을 -> ( 논리적 데이터 모델인 ) 릴레이션 스키마로 변환. 매핑(Mapping)한다고도 한다.
키( Key )의 개념 및 종류
키( Key )는 DB에서 조건에 만족하는 튜플을 찾거나 순서대로 정렬할 때 기준이 되는 속성
- 슈퍼키( Super Key )
: 한 릴레이션 내에 있는 속성들의 집합으로 구성된 키. 릴레이션을 구성하는 모든 튜플에 대해
유일성( Unique )은 만족하지만, 최소성( Minimality )은 만족하지 못함 - 후보키( Candidate Key )
: 릴레이션을 구성하는 속성들 중에서 튜플을 유일하게 식별하기 위해 사용되는 속성들의 부분집합
유일성과 최소성을 모두 만족함 - 기본키( Primary Key )
: 후보키 중에서 특별히 선정된 키. 중복된 값과 NULL값을 가질 수 없음 - 대체키( Alternate Key )
: 기본키를 제외한 나머지 후보키 - 외래키( Foreign Key )
: 다른 릴레이션의 기본키를 참조하는 속성 또는 속성들의 집합. 릴레이션 간의 관계를 표현할 때 사용
무결성( Integrity )
DB에 저장된 데이터 값과 그것이 표현하는 현실세계의 실제값이 일치하는 정확성을 의미
- 1. 개체 무결성( Entity Integrity ) : 기본 테이블의 기본키를 구성하는 어떤속성도 Null 값이나 중복값 가질수 없다.
- 2. 도메인 무결성( Domain Integrity ) : 주어진 속성 값이 정의된 도메인에 속한 값이어야 한다.
- 3. 참조 무결성( Referential Integrity ) : 외래키 값은 Null이거나 참조 릴레이션의 기본키 값과 동일해야 함
- 4. 사용자 정의 무결성( User-Defined Integrity ) : 속성 값들이 사용자가 정의한 제약조건에 만족해야 함
728x90
반응형
'정보처리기사 > 실기고사 이론정리' 카테고리의 다른 글
[Chapter 11] 제품 소프트웨어 패키징 (0) | 2020.10.16 |
---|---|
[Chapter 10] ★ 응용 SW 기초 기술 활용 [ 네트워크 편 ] ★ (0) | 2020.10.15 |
[Chapter 10] ★ 응용 SW 기초 기술 활용 [ 운영체제 편 ] ★ (0) | 2020.10.15 |
[Chapter 9] 소프트웨어 개발 보안 구축 (0) | 2020.10.14 |
[Chpater 8] ★ SQL 응용 ★ (0) | 2020.10.08 |