ABOUT ME

-

Today
-
Yesterday
-
Total
-
  • 정보처리기사 데이터베이스 용어정리
    정보처리기사/필기 2020. 2. 12. 19:10

     

     

    데이터베이스의 정의 : 업무를 수행하는데 필요한 데이터의 모임

    ○ 통합된 데이터(Integrated Data): 자료의 중복을 최소화된 데이터

    ○ 저장된 데이터(Stroed Data): 컴퓨터가 접근할 수 있는 저장 매제에 저장된 데이터

    ○ 운영 데이터(Operational Data): 업무 수행에 꼭 있어야만 하는 데이터

    ○ 공용 데이터(Shared Data): 응용 시스템들이 공동으로 소유, 유지

     

    DBMS(DataBase Managment System): DB(데이터베이스)와 사용자에 있어 사용자의 요구에 따라 정보를 관리하는 소프트웨어

    DBMS필수기능

    정의(Definition)기능: 응용 프로그램과 데이터베이스에 명시하는 기능

    조작(Manipulation)기능: 검색, 갱신, 삭제, 삽입와 같이 사용자와 데이터베이스 사이의 인터페이스 수단

    제어(Control)기능: 데이터베이스의 무결성, 보안(Security)유지와 권한(Authority)을 검사, 데이터베이스의 병행제어(Concurrency Control)

     

    데이터베이스 설계 시 고려사항

    ○ 무결성 - 삽입,삭제,갱신 후에도 정해진 제약조건 만족

    ○ 일관성 - 질의에 대한 응답이 변함없이 일정

    ○ 회복 - 시스템 장애시 원래의 상태로 복구

    ○ 보안 - 데이터의 노출또는 손실로부터 보호

    ○ 효율성 - 응답시간, 생산성, 저장공간 등

     

     

    데이터베이스 설계 순서 

    데이터 모델 : 현실에서 사용하는 정보를 컴퓨터로 표현하기 위해 추상화 하여 만든 모델

    구성요소 : 개체, 속성, 관계   * 속성 = Field = Item, 항목 이라고 불립니다.

    데이터 모델 종류 : 개념적, 논리적, 물리적 데이터모델

    표시할 요소 : 구조, 연산, 제약조건

     

     

    개념적 데이터모델  : E-R모델

    논리적 데이터모델 : 일반적 데이터 모델 = 논리적 데이터모델, 관계모델(Table), 계층모델(Tree), 네트워크모델(Graph) = 망모델

     

     

    ERD(Entity-Relationship Modelling)

    개체(Entity) : 사람이 생각하는 개념이나 정보

    ○ 파일 시스템의 레코드와 같다

    ○ 유일한 식별자(UID)로 식별

    ○ 다른 개체와 하나 이상의 관계(Relationship)

    ○ 개체는 속성을 갖는다

     개체 인스턴스 : 각 속성들의 구체적인 값

     

     

    DFD와 ERD 도형 차이

     

    속성(Attribute) : 가장 작은 논리적 단위,  개체가 가지는 특성

    ○ 항목 또는 데이터필드

    ○ 속성으로 개체를 구성

    ○ 속성의 수 = 디그리 = 차수

     

    속성의 종류 

    기본 속성 : 업무 분석을 통해 정의

    설계 속성 : 속성을 새로 만들거나 변형하여 정의

    파생 속성 : 다른 속성의 영향을 받아 생성

     

    관계(Relationship) : 개체와 개체의 연결, 개체와 속성의 연결

    개체와 개체의 연결 (점선)

    개체와 속성의 연결 (실선)

     

    관계의 형태

    1 : 1 (일대일)

    ○ 1 : N (일대다)

    ○ N : M (다대다)

     

    식별 관계 : 기본키이면서 외래키를 수행하는 경우 식별 관계라고한다.

    식별관계

    식별 관계 : 외래키가 기본키가 아닌 경우 비식별 관계라고한다.

     

    식별자(Identifier) : 하나의 개체 안에서 유일하게 구분 할 수 있는 구분자

     

     

    관계형 데이터베이스 

    ○ Table의 형태로 표현

    ○ 스키마와 인스턴스로 구성된다

     

    스키마 -  

    인스턴스 - 개체의 속성에서 구체적인 데이터 값을 가지고 있는 것

    튜플 - 속성 Table에서의 한 행

    도메인 - 속성이 가질 수 있는 값의 범위

    카디널리티 - 튜플의 수 

    디그리 - 속성의수 

     

    튜플 

    ○ 튜플들은 모두 상이하다

    ○ 튜플은 순서가 없다

     

    속성

    ○ 속성은 순서가 중요하지 않다(순서가 없다)

    ○ 속성값은 원자값만을 갖는다

    ○ 속성은 동일한 값이 있을 수 있다.

     

    키( KEY )

    1. 후보키(Candidate Key)

     튜플을 유일하게 식별

     기본키로 사용할 수 있는 것

    유일성과 최소성 만족

     

    2. 기본키(Primary Key)

     후보키 중에서 선정된 Key( 주키 - Main Key)

    유일성과 최소성 만족

    중복값을 가질 수 없다.

    Null 값을 가질 수 없다.

     

    3. 대체키(Alternate Key)

    ○  후보키중에서 기본키를 제외한 나머지

    ○ 대체키 = 보조키

     

    4. 슈퍼키(Super Key)

    ○ 속성들의 집합으로 구성

    유일성 만족 , 최소성 만족 X

     

    5. 외래키(Foreign Key)

      다른 릴레이션의 기본키를 참조 

     

    수강과목은 학생을 참조하고 있으며 이때의 외래키는 학번(FK)이다

     

     

    무결성

    ○ 무결성 = 정확성

     

    무결성의 종류 

    개체 무결성 : 어떤 속성도 Null값이나 중복값을 가질 수 없다.(기본키가 Null이면 안된다)

    도메인 무결성 : 속성값이 도메인에 속해야한다.

    참조 무결성: 외래키 값은 Null or 참조한 릴레이션의 기본키와 같아야한다.

     

     

    관계대수 : 데이터베이스에서 원하는 정보를 검색하기 위해 사용

     

    1. Select

    ○ 릴레이션의 행에 해당하는 튜플을 구한다.

    σ(시그마) 기호를 사용한다.

     

    2. Project

    ○ 릴레이션의 열에 해당하는 속성을 추출한다.

     π(파이) 기호를 사용한다.

     

    3. Join

    ○ 두 개의 릴레이션을 하나로 합쳐서 새로운 릴레이션을 만든다.

    ▷◁ 기호를 사용한다.

     

    4. Division 

     하나의 릴레이션에서 다른 릴레이션의 속성을 제외한 속성을 구할때 사용한다.

    ÷ 기호를 사용한다.

     

    5. Union

    ○ 두 릴레이션의 튜플의 합을 구할 때 사용한다.

    U 기호를 사용한다.

     

    6. InterSection

    ○ 두 릴레이션의 공통으로 존재하는 튜플을 구할때 사용한다.

    ∩ 기호를 사용한다.

     

    7. Difference

    ○ 하나의 릴레이션에서 다른 릴레이션의 값을 뺄때 사용한다.(공통된 속성을 뺀 나머지 값)

    ○ - 기호를 사용한다.

     

    8. Cartesian Product

    ○ 두 릴레이션에 있는 튜플들의 순서쌍을 구할때 사용한다.

    ○ X 기호를 사용한다.

     

    관계해석

    ○ 데이터의 연산을 표현하는 방법

    ○ 관계대수로 표현한것은 관계해석으로도 표현할 수 있다.

     

     

    정규화

    (추가 예정)

     

     

     

     

     

    물리 데이터 베이스 설계 : 논리적 구조를 물리적 구조의 데이터로 변환하는 과정

    ○ 여러 가지 타입의 레코드 집합

    ○ 반응시간이 짧을수록 좋다

    ○ 공간 활용도가 넓을수록 좋다

    ○ 트랜잭션 처리량이 많을수록 좋다

     

    테이블(Table): 로우(Row 행), 컬럼(Column 열)로 구성

    ○ 개체(Entity)와 대응된다

     

    클러스터드 인덱스 테이블(Clustered Index Table)

    ○ 기본키나 인덱스키의 순서에 따라 데이터가 저장된다.

     

    파티셔닝 테이블(Partitioning Table)

    ○ 대용량의 테이블을 파티션(Partiton)으로 나눈 테이블

    ○ 범위 분할, 해시 분할, 조합 분할이 있다.

     

    범위 분할 :  열의 값을 기준 분할

    해시 분할 : 해시 함수의 결과값에 따라 분할

    조합 분할 : 범위 분할과 해시붐할을 적용하여 분할

     

    외부테이블(External Table)

    ○ 일반 테이블처럼 사용 가능한 외부파일

     

    데이터웨어하우스(Data Ware-House)

    ○ 주체적, 통합적, 시간적 데이터의 집합체

     

    테이블스페이스(Tablespace) :테이블이 저장되는 논리적인 영역

    ○ 논리적으로는 테이블스페이스에 저장, 물리적으로는 데이터 파일에 저장된다.

    ○ 테이블스페이스를 사용하면 투명성이 보장된다.

     

    투명성 : 사실의 존재 여부를 신경 안써도 되는 성질

     

    트랜잭션(Transaction): 데이터베이스의 상태를 변환 시키는 논리적 기능을 수행하는 작업 or 모두 수행 되어야하는 일련의 연산

    원자성(Atomicity) : 트랜잭션 연산이 전부 반영 되거나 전부 반영되지 않아야한다.

    ○ 일관성(Consistency) : 트랜잭션이 완료되면 언제나 일관성이 있어야한다.

    ○ 독립성(Isolation) : 트랜잭션 도중 다른 연산이 끼어들 수 없다.

    ○ 지속성(Durabilty) : 트랜잭션의 결과는 영구적으로 반영되어야한다.

     

    인덱스(Index) : 데이터 레코드에 빠르게 접근하기 위해 (키 값, 포인터)로 구성되는 데이터 구조

     

    Table Scan

    테이블에 있는 모든 레코드를 순차적으로 읽는 것

    ○ Full Table Scan이라고도 한다.

     

    클러스터드(Clustered) 

    ○ 데이터가 정렬되는 방식

     

    넌클러스트드(Non - Clustered)

    데이터가 정렬되지 않는 방식

     

    뷰(View) 

    가상의 테이블이다.

    제한적으로 보여주고 싶은 부분만 보여주기 위해 사용된다. (보안성이 높다)

    뷰로 또 다른 뷰를 만들 수 있다.

    뷰는 수정이 불가능하다.

    ○ 물리적 구현X

     

    분산 데이터베이스

    ○ 네트워크를 통해 여러개로 분산되어 있는 데이터베이스를 연결한다.

    ○ 위치 투명성 : 실제 위치를 알 필요가 없다.

    ○ 중복 투명성 : 여러곳에 데이터가 중복 되어 있더라도 하나의 데이터 처럼 사용한다.

    ○ 병행 투명성 : 다수의 트랜잭션들이 동시에 수행 되더라도 영향을 받지 않는다.

    ○ 장애 투명성 : 장애가 있더라도 트랜잭션을 정확하게 처리한다.

     

    분할(Fragment): 테이블의 데이터를 분산시키는 것

     

    데이터베이스 이중화(Database Replication)

    ○ 시스템 오류로 인한 데이터베이스 서비스 중단시 복구를 위해 데이터베이스를 복사 해 놓는것

    ○ 문제 발생시 즉시 해결 가능

    ○ 데이터베이스의 변화가 다른 데이터베이스에도 적용된다.

    ○ 데이터베이스의 부하 감소

    ○ Active - Standby 방법과 Active - Active 방법이 있다.

     

     

    클러스터링(Clustering): 두 개 이상의 서버를 하나처럼 운영

     

    데이터베이스 암호화

    ○ 정보보호를 위해 암호문으로 변환

     

    데이터베이스 복호화

    ○ 암호문을 원래의 정보로 변환

     

     

    개인키 암호화 (Private Key Encryption)

    암호화 = 복호화   - 같은 키로 데이터를 암호화하고 복호화 한다.

    대칭키, 비밀키, DES

     

    공개키 암호화(Public Key Encryption)

    암호화 ≠복호화 -서로 다른키로 데이터를 암호화하고 복호화 한다.

    ○비대칭키, 공개 공유키, RSA

     

    접근통제

    임의 접근통제(DAC)

     사용자의 신원에 따라 접근 권한 부여

    ○ GRANT(권한 부여), REVOKE(권한 취소)

     

    강제 접근통제(MAC)

    ○ 사용자의 등급을 비교하여 접근 권한 부여

    ○ 객체별로 보안 등급 부여 

    ○ 제 3자가 접근통제 권한 부여

     

     

     

     

     

     

     

     

     

     

     

    댓글

Designed by Tistory.