본문 바로가기

정보처리기사 실기/데이터베이스14

SQL - 고급 데이터베이스 고급 데이터베이스 분산 데이터베이스(Distributed Database) 분산 데이터베이스는 논리적으로 같은 시스템에 속하지만 물리적으로는 컴퓨터 네트워크를 통해 분산되어 있는 데이터베이스. 분산 데이터베이스 시스템의 구성 요소 분산 처리기 : 자체적으로 처리 능력을 가지며 지리적으로 분산되어 있는 컴퓨터 시스템을 말한다. 분산 데이터베이스 : 지리적으로 분산되어 있는 데이터베이스로서 해당 지역의 특성에 맞게 데이터베이스가 구성된다. 통신 네트워크 : 분산 처리기들을 통신망으로 연결하여 논리적으로 하나의 시스템처럼 동작할 수 있도록 하는 네트워크 분산 데이터베이스의 목표 위치 투명성(Location Transparency) : 접근하려는 데이터베이스의 실제 위치를 알 필요 없이 단지 데이터베이스의 논리.. 2018. 9. 12.
SQL - 튜닝 튜닝 튜닝(Tuning)의 개요 데이터베이스 튜닝이란 데이터베이스 응용 프로그램, 데이터베이스 자체, 운용체제 등의 조정을 통하여 데이터베이스 관리 시스템의 성능을 향상시키는 작업을 말한다. 데이터베이스 튜닝을 통해 데이터베이스 관리 시스템이 높은 작업 처리량과 짧은 응답 시간을 갖도록 하는 것이 중요하다. 인덱스 튜닝 인덱스 종류 B-트리 인덱스 일반적으로 사용되는 인덱스 방식으로, 루트 노드에서 하위 노드로 키 값의 크기를 비교해 나가면서 단말 노드에서 찾고자 하는 데이터를 검색한다. 데이터 양에 상관없이 모든 데이터의 인덱스 탐색 시간이 동일하다. 비트맵 인덱스 인덱스 컬럼의 데이터를 Bit 값인 0 또는 1로 변환하여 인덱스 키로 사용하는 방법이다. 분포도가 좋은 컬럼에 적합하며, 데이터가 Bit.. 2018. 9. 12.
SQL - 병행제어 병행제어 다중 프로그램의 이즘얼 활용하여 동시에 여래 개의 트랜잭션을 병행 수행할 때 실행되는 트랜잭션들이 데이터베이스의 일관성을 파괴하지 않도록 트랜잭션 간의 상호 작용을 제어하는 기술. 병행성이란 여러 개의 트랜잭션들이 동시에 인터리빙하게 실행되는 것을 의미 (인터리빙 : 트랜잭션들이 번갈아가며 조금씩 자신이 처리해야 할 일을 처리하는 것) 병행 제어의 목적 데이터베이스의 공유도 최대화 시스템의 활용도 최대화 사용자에 대한 응답 시간을 최소화 단위 시간당 트랜잭션 처리 건수를 최대화 데이터베이스의 일관성 유지 병행 제어의 필요성 문제점 의미 갱신분실 (Lost Update) 2개 이상의 트랜잭션이 같은 데이터를 공유하여 갱신할 때 갱신 결과의 일부가 없어지는 현상 모순성 (Inconsistency) .. 2018. 9. 12.
SQL - 트랜잭션 트랜잭션 데이터베이스에서 하나의 논리적 기능을 수행하기 위한 일련의 연산 집합으로 작업의 단위 데이터베이스 관리 시스템에서 회복 및 병행 수행 시 처리되는 작업의 논리적 단위 하나의 트랜잭션은 정상적으로 종료될 경우 COMMIT연산이 수행되고, 비정상적으로 종료될 경우 ROLLBACK 연산이 수행된다. COMMIT 트랜잭션 처리가 정상적으로 종료되어 트랜잭션이 수행한 변경 내용을 데이터베이스에 반영하는 연산. 내용을 변경한 트랜잭션이 완료되면 그 트랜잭션에 의해 데이터베이스는 새롭게 일관된 상태로 변경되며, 이 상태는 시스템에 오류가 발생하더라도 취소되지 않는다. ROLLBACK 하나의 트랜잭션 처리가 비정상으로 종료되어 데이터베이스의 일관성이 깨졌을 때 트랜잭션이 행한 모든 변경 작업을 취소하고 이전 .. 2018. 9. 12.