정처기 실기 용어정리 (2장)

모래사우르스
|2024. 10. 1. 10:46

데이터베이스(Database)

공중 통저운 - 공동으로 사용될 데이터를 중복을 배제하여 통합하고, 저장하여 사용할 수 있도록 하는 운영 데이터

 

DBMS의 필수 기능

정조제 - 정의(Definition) / 조작(Manipulation) / 제어(Control)

 

데이터의 독립성

논리적 독립성 : 데이터의 논리적 구조를 변경시키더라도 응용 프로그램은 영향을 받지 않음

물리적 독립성 : 디스크를 추가/변경 하더라도 응용 프로그램은 영향을 받지 않음

 

스키마(Schema) : 데이터베이스의 구조와 제약조건에 관한 전반적인 명세를 기술한 것

 

스키마의 종류

외내개 - 외부 / 내부 / 개념

외부 스키마 : 사용자나 프로그래머가 논리적 구조 정의한 것

개념 스키마 : 논리적 구조

내부 스키마 : 물리적 구조

 

데이터베이스 설계

요개논물 구 - 요구조건분석 -> 개념적 설계 -> 논리적 설계 -> 물리적 설계 -> 구현

 

데이터 모델 구성 요소

개속관 - 개체 / 속성 / 관계

개체(Entity) : DB에 표현하려는 것. <<사각형>>

속성(Attribute) : DB를 구성하는 가장 작은 논리적 단위 (기설파 - 기본 / 설계 / 파생) <<타원>>

관계(Relationship) : 개체와 개체 사이의 논리적인 연결 (종중재배 - 종속 / 중복 / 재귀 / 배타) <<마름모>>

 

데이터 모델에 표시할 요소

구연제  - 구조 / 연산 / 제약조건

구조(Structure) : 논리적으로 표현된 개체 타입들 간의 관계로, 데이터 구조 및 정적 성질 표현

연산(Operation) : DB에 저장된 실제 데이터를 처리하는 작업에 대한 명세

제약 조건(Constraint) : DB에 저장될 수 있는 실제 데이터의 논리적인 제약 조건 

 

데이터 모델 종류

개논물 - 개념적 데이터 모델(E-R 모델) / 논리적 데이터 모델 / 물리적 데이터 모델

 

관계형 데이터베이스 : 2차원적인 표를 이용해서 데이터 상호 관계를 정의하는 데이터베이스

관계형 데이터 모델 : (위랑 동일) ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ 모델

 

릴레이션을 구성하는 것들

튜플(Tuple)

속성(Attribute)

도메인(Domain) : 하나의 애트리뷰트가 취할 수 있는 같은 타입의 원자값들의 집합.

 

후보키 : 속성들 중 튜플을 유일하게 식별하기 위해 사용되는 속성들의 부분집합. 유일성&최소성

기본키 : 중복, NULL X

대체키 : 후보키가 둘 이상일 때 기본키를 제외한 나머지 키

슈퍼키 : 속성들의 집합으로 구성된 키. 유일성 O, 최소성 X

외래키 : 다른 릴레이션의 기본키를 참조하는 속성 또는 속성들의 집합

 

무결성 : DB에 저장된 데이터값과 현실 세계의 실제값이 일치하는 정확성

개체 무결성 : 기본키는 NULL 이나 중복값을 가질 수 없다

참조 무결성 : 릴레이션은 참조할 수 없는 외래키 값을 가질 수 없다

 

데이터 무결성 강화

애트제 - 애플리케이션 / 데이터베이스 트리거 / 제약 조건

 

대절해비 - 관계대수는 절차적 언어, 관계해석은 비절차적 언어

관계대수 : 원하는 정보와 그 정보를 검색하기 위해서 어떻게 유도하는가를 기술하는 절차적 언어

관계해석 : 관계 데이터의 연산을 표현하는 방법 (E.F.Codd)

 

이상(Anomaly) : 데이터의 중복으로 인해 테이블 조작 시 문제가 발생하는 현상

삽삭갱 - 삽입 / 삭제 / 갱신

삽입 이상 : 데이터를 삽입할 때 의도와는 상관없이 원하지 않는 값들로 인해 삽입할 수 없게 되는 현상

삭제 이상 : 연쇄 삭제 발생

갱신 이상 : 갱신할 때 일부 튜플의 정보만 갱신되어 정보에 불일치성이 생기는 현상

 

X->Y : 함수적 종속 (X는 결정자, Y는 종속자)

X->Y->Z : 이행적 함수적 종속 (Transitive Functional Dependency)

{a,b} 둘다 : 완전 함수적 종속 (Full Functional Dependency)

{a,b} 중 a 또는 b로 식별 : 부분 함수적 종속 (Partial Functional Dependency)

 

정규화(Normalization) : 테이블의 속성들이 상호 종속적인 관계를 갖는 특성을 이용하여 테이블을 무손실 분해하는 과정

 

정규화 과정

원부이 결다조 - 원자값(1) / 부분 함수적 종속 제거(2) / 이행적 함수적 종속 제거(3) / 결정자 (BCNF) / 다치 값 제거(4) / 조인 종속성 이용(5)

제 1정규형 : 도메인(테이블의 모든 속성)이 원자값만으로 이루어짐

제 2정규형 : 부분 함수적 종속 제거

제 3정규형 : 이행적 함수적 종속 제거

BCNF : 모든 결정자가 후보키

제 4정규형 : 다치 종속 제거

제 5정규형 : 조인 종속성 이용

 

반정규화(Denormalization) : 정규화된 모델을 의도적으로 통합, 중복, 분리하여 정규화 원칙을 위배하는 행위

 

분할

수평 분할 : 레코드를 기준으로 테이블을 분할.

수직 분할 : 속성을 기준으로 테이블을 분할.

 

중복 테이블 추가

집진특 - 집계 테이블 추가 / 진행 테이블 추가 / 특정 부분만을 포함하는 테이블의 추가

 

시스템 카탈로그 : 다양한 객체에 관한 정보를 포함하는 시스템 DB. DBMS가 스스로 생성하고 유지함.

 

메타 데이터 : 시스템 카탈로그에 저장된 정보

 

데이터 디렉터리 : DD(데이터 사전)에 수록된 데이터에 접근하는 데 필요한 정보를 관리 유지하는 시스템

 

트랜잭션(Transaction) : 논리적 기능을 수행하기 위한 작업의 단위 또는 한꺼번에 모두 수행되어야 할 일련의 연산들을 의미함.

 

트랜잭션의 특성

ACID - Atomic / Consistency / Isolation / Durability

원자성(Atomic) : 트랜잭션의 연산은 모두 반영되도록 완료(Commit)되거나 전혀 반영되지 않도록 복구(Rollback)되어야 함

일관성(Consistency)

독립성(Isolation)

영속성(Durability)

 

CRUD 분석 : 프로세스와 테이블 간에 CRUD 매트릭스를 만들어서 트랜잭션을 분석하는 것

Create / Read / Update / Delete

 

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

트비함도클 - 트리 기반 / 비트맵 / 함수 기반 / 도메인 / 클러스터드

트리 기반 인덱스 : 인덱스를 저장하는 블록들이 트리 구조를 이룸

비트맵 인덱스 : 컬럼의 데이터를 0 또는 1로 변환하여 인덱스 키로 사용

함수 기반 인덱스 : 컬럼에 함수나 수식을 적용해서 산출된 값을 사용

도메인 인덱스 : 개발자가 필요한 인덱스를 직접 만들어 사용

클러스터드 인덱스 : 데이터가 정렬되어 저장되는 방식, 검색이 빠름

넌클러스터드 인덱스 : 키 값만 정렬되어 있음

 

뷰(View) : 사용자에게 접근이 허용된 자료만을 제한적으로 보여주기 위해 존재하는 가상 테이블

CREATE로 정의, DROP로 삭제. 인덱스 X

 

클러스터(Cluster) : 동일한 성격의 데이터를 동일한 데이터 블록에 저장하는 물리적 저장 방법

처리 범위가 넓음 -> 단일 테이블 클러스터링

조인이 많이 발생함 -> 다중 테이블 클러스터링

 

파티션(Partition) : 대용량의 테이블이나 인덱스를 작은 논리적 단위인 파티션으로 나누는 것

 

파티션 종류

범해조 - 범위 / 해쉬 / 조합

범위(Range) 분할 : 열 기준

해쉬(Hash) 분할 : 해쉬 함수 적용 (근데 얘도 열 기준이긴 함)

조합(Composite) 분할 : 범위+해쉬

 

분산 데이터베이스의 목표 [투명성(Transparency)의 종류]

위중병장 - 위치 / 중복 / 병행 / 장애

위치(Location) 투명성 : 위치 몰라도 논리적인 명칭만으로 액세스 가능

중복(Replication) 투명성 : 동일 데이터가 중복되어 있어도 사용자는 하나의 데이터만 존재하는 것처럼 사용

병행(Concurrency) 투명성 : 트랜잭션들이 동시에 실현되더라도 결과는 영향을 받지 않음

장애(Failure) 투명성 : 장애에도 불구하고 트랜잭션을 정확히 처리

 

데이터베이스 이중화의 분류

이거지~(Eagerzy) - Eager / Lazy

Eager : 변경 발생 시 즉시 전달, 즉시 적용

Lazy : 수행 종료 시 변경 사실을 새로운 트랜잭션에 작성

 

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

고가 병처리 - 고가용성 / 병렬 처리

고가용성 클러스터링 : 장애 발생 시 다른 노드(서버)가 받아 처리

병렬 처리 클러스터링 : 하나의 작업을 여러 서버에서 분산하여 처리

 

RTO(Recovery Time Objective) : 목표 복구 시간

RPO(Recovery Point Objective) :목표 복구 시점

 

접근통제 기술

임강역 - 임의 / 강제 / 역할기반

임의 접근통제(DAC - Discretionary) : 사용자의 신원에 따라 접근 권한 부여

강제 접근통제(MAC - Mandatory) : 등급을 비교하여 접근 권한 부여

역할기반 접근통제(RBAC - Role Based) : 역할에 따라 접근 권한 부여

 

로그 파일 : 상태 변화를 시간의 흐름에 따라 모두 기록한 파일. 과거로 복귀(UNDO)시키거나 현재로 재생(REDO)시킴.

UNDO : 시작과 완료에 대한 기록이 있는 작업을 재작업. 이전값->이후값

REDO : 시작은 있지만 완료가 없는 기록을 취소함. 이후값->이전값

 

스토리지(Storage) : 대용량의 데이터를 저장하기 위해 서버와 저장장치를 연결하는 기술

다나스 - DAS / NAS / SAN

DAS(Direct Attached Storage) : 직접 연결

NAS(Network Attached Storage) : 네트워크를 통해 연결

SAN(Storage Area Network) : DAS+NAS. 광 채널(FC) 이용.

 

엔티티(Entity)를 테이블로 변환

(논리적 설계) - (물리적 설계)

엔티티 - 테이블

속성 - 컬럼

주 식별자 - 기본키

외부 식별자 - 외래키

관계 - 관계

 

Primary UID - 기본키

Secondary UID - 유니크키

 

배열 : 크기와 형(Type)이 동일한 자료들이 순서대로 나열된 자료이 집합

 

연속 리스트(Contiguous List) : 배열과 같이 연속되는 기억장소에 저장되는 자료구조

연결 리스트(Linked List) : 자료들을 임의의 기억공간에 기억시키되, 순서에 따라 노드의 포인터 부분을 이용하여 서로 연결시킨 자료구조

 

방향 그래프 최대 간선 수 : n(n-1)

무방향 그래프 최대 간선 수 : n(n-1)/2

 

선형 구조 : 리스트, 스택, 데크, 큐

비선형 구조 : 트리, 그래프

 

트리 : 노드와 선분으로 이루어져있고 정점 사이에 사이클이 형성되어 있지 않은 비선형 구조.

디그리(차수) : 자식의 수 (손주는 안셈!)

트리의 디그리 : 노드들의 디그리 중 가장 많은 수

단말 노드 : 자식이 하나도 없는 노드

 

이진 트리 : 차수가 2 이하인 노드들로 구성된 트리

Preorder(전위), Inorder(중위), Postorder(후위)

 

정렬(Sort)

삽입(Insertion) 정렬 : 이미 순서화된 파일에 새로운 하나의 레코드를 순서에 맞게 삽입시켜 정렬하는 방식

선택(Selection) 정렬 : 최소값을 찾아 앞의 레코드 위치에 놓는 것을 반복하여 정렬하는 방식

버블(Bubble) 정렬 : 인접한 두 개의 레코드 키 값을 비교하여 위치를 교환하는 정렬 방식

쉘(Shell) 정렬 : 어떤 매개변수의 값으로 서브 파일을 구성하고 각 서브 파일을 삽입 정렬 방식으로 순서 배열하는 과정을 반복하는 정렬 방식

퀵(Quick) 정렬 : 키를 기준으로 작은 값은 왼쪽, 큰 값은 오른쪽 서브파일에 분해시키는 과정을 반복하는 정렬 방식

힙(Heap) 정렬 : 전이진 트리를 이용한 정렬 방식

합병(Merge) 정렬 : 이미 정렬되어 있는 두 개의 파일을 한 개의 파일로 합병하는 정렬 방식

기수(Radix) 정렬 : 큐를 이용하여 자릿수(Digit)별로 정렬하는 방식

 

'TIL > 기타' 카테고리의 다른 글

정처기 실기 용어정리 (4장)  (3) 2024.10.09
정처기 실기 용어정리 (3장)  (0) 2024.10.01
정처기 실기 용어정리 (1장)  (1) 2024.09.18
9. 정보처리기사 필기 & CS 용어 공부  (1) 2024.04.24
8. 응급처치 교육  (0) 2024.04.24