목록정보처리기사 실기 (23)
Jeunwork space
데이터베이스 이중화 - 시스템 오류로 인한 DB 서비스 중단이나 물리적 손상 발생 시 이를 복구하기 위해 동일한 DB를 복제하여 관리하는 것 - 하나 이상의 DB가 항상 같은 상태를 유지하므로 DB에 문제가 발생하면 복제된 DB를 이용하여 즉시 문제 해결가능 - 여러 개의 DB를 동시에 관리하므로 사용자가 수행하는 작업은 DB이중화 시스템에 연결된 다른 DB에도 동일하게 적용됨 - 애플리케이션을 여러 개의 DB에서 분산 처리하므로 DB의 부하를 줄일 수 있음 - 손쉽게 백업 서버를 운영할 수 있음 - 분류 1. Eager 기법 · 트랜잭션 수행 중 데이터 변경이 발생하면 이중화된 모든 DB에 즉시 전달하여 변경 내용이 즉시 적용되도록 하는 기법 2. Lazy 기법 · 트랜잭션의 수행이 종료되면 변경 사실..
데이터베이스 용량 설계 - 데이터가 저장될 공간을 정의 - 데이터베이스 용량을 설계할 때 테이블에 저장될 데이터양과 인덱스, 클러스터 등이 차지하는 공간 등을 예측하여 반영해야 함 - 목적 · DB의 용량을 정확히 산정하여 디스크의 저장 공간을 효과적으로 사용하고 확장성 및 가용성을 높임 · 디스크의 특성을 고려하여 설계함으로써 디스크의 입,출력 부하를 분산시키고 채널의 병목현상 최소화 분산 데이터베이스 설계 - 논리적으로 하나의 시스템에 속하지만 물리적으로는 네트워크를 통해 연결된 여러 개의 사이트에 분산된 DB - 데이터의 처리나 이용이 많은 지역에 DB를 위치시킴으로써 데이터의 처리가 가능한 해당 지역에서 해결될 수 있도록 함 - 애플리케이션이나 사용자가 분산되어 저장된 데이터에 접근하게 하는 것을..
파티션(Partition) - 대용량의 테이블이나 인덱스를 작은 논리적 단위인 파티션으로 나누는 것 - 대용량 DB의 경우 몇 개의 중요한 테이블에만 집중되어 데이터가 증가되므로, 이런 테이블들을 작은 단위로 나눠 분산시키면 성능 저하를 방지할 뿐만 아니라 데이터 관리도 쉬워짐 - 데이터 처리는 테이블 단위로 이뤄지고, 데이터 저장은 파티션별로 수행됨 - 장점 · 데이터 접근 시 액세스 범위를 줄여 쿼리 성능이 향상 · 파티션별로 데이터가 분산되어 저장되므로 디스크의 성능이 향상 · 파티션별로 백업 및 복구를 수행하므로 속도가 빠름 · 시스템 장애 시 데이터 손상 정도를 최소화 · 데이터의 가용성 향상 · 파티션 단위로 입, 출력을 분산시킬 수 있음 - 단점 · 하나의 테이블을 세분화하여 관리하므로 세심..
뷰(View) - 사용자에게 접근이 허용된 자료만을 제한적으로 보여주기 위해 하나 이상의 기본 테이블로부터 유도된, 이름을 가지는가상 테이블 - 저장장치 내에 물리적으로 존재하지 않지만, 사용자에게는 있는 것처럼 간주됨 - 뷰를 통해서만 데이터에 접근하게 하면 뷰에 나타나지 않는 데이터를 안전하게 보호해 효율적으로 사용할 수 있음 - 뷰가 정의된 기본 테이블이나 뷰를 삭제하면 그 테이블이나 뷰를 기초로 정의된 다른 뷰도 자동으로 삭제됨 - 뷰를 정의할 때는 CREATE문, 제거할 때는 DROP문 사용 - 장점 · 논리적 데이터 독립성을 제공 · 동일 데이터에 대해 동시에 여러 사용자의 상이한 응용이나 요구를 지원해줌 · 사용자의 데이터 관리를 간단하게 해줌 · 접근 제어를 통한 자동 보안 공 - 단점 ·..
인덱스 - 데이터 레코드를 빠르게 접근하기 위해 쌍으로 구성되는 데이터 구조 - 레코드가 저장된 물리적 구조에 접근하는 방법을 제공함 - 파일의 레코드에 빠르게 액세스할 수 있음 - 레코드의 삽입과 삭제가 수시로 일어나는 경우에는 인덱스의 개수를 최소로 하는 것이 효율적임 - 종류 · 트리 기반 인덱스 : 인덱스를 저장하는 블록들이 트리 구조를 이루고 있는 것 · 비트맵 인덱스 : 인덱스 컬럼의 데이터를 Bit값인 0 또는 1로 변환하여 인덱스 키로 사용하는 방법 · 함수 기반 인덱스 : 컬럼의 값 대신 컬럼에 특정함수나 수식을 적용하여 산출된 값을 사용하는 것 · 비트맵 조인 인덱스 : 다수의 조인된 객체로 구성된 인덱스 · 도메인 인덱스 : 개발자가 필요한 인덱스를 직접 만들어 사용하는 것 - 종류2..
트랜잭션 - 데이터베이스의 상태를 변환시키는 하나의 논리적 기능을 수행하기 위한 작업의 단위 또는 한꺼번에 모두 수행되어야 할 일련의 연산들 - 데이터베이스 시스템에서 병행 제어 및 회복 작업 시 처리되는 작업의 논리적 단위로 사용 - 사용자가 시스템에 대한 서비스 요구 시 시스템이 응답하기 위한 상태 변환 과정의 작업 단위로 사용 - 특성 · 원자성(Atomicity) : 트랜잭션의 연산은 데이터베이스에 모두 반영되도록 완료(Commit)되던지 아니면 전혀 반영되지 않도록 복구(Rollback)되어야 함 · 일관성(Consistency) : 트랜잭션이 그 실행을 성공적으로 완료하면 언제나 일관성 있는 데이터베이스 상태로 변환함 · 독립성, 격리성, 순차성(Isolation) : 둘 이상의 트랜잭션이 동..