튜닝의 정의 특정한 응용을 시스템 성능을 향상시키기 위해 다양한 파라미터들과 설계 선택들을 조정하는 것 데이터베이스 응용 프로그램, 데이터베이스 자체, 운영체계 등의 조정을 통해 데이터베이스 관리 시스템의 성능을 향상시키는 작업 병목 현상을 찾아서 제거함으로써 튜닝을 잘 수행할 수 있음 튜닝의 기대 효과 작업 처리량과 응답 속도의 향상 장재적인 시스템 장애 방지 유지보수 비용 절감 하드웨어 증설에 대한 투자비 절감 개발자 능력 향상 튜닝의 목표 데이터베이스에 접근하는 SQL문의 실행 시 디스크 블록에 대한 접근 횟수를 최소화 데이터가 포함된 디스크를 적절히 분산시켜 디스크 입.출력이 집중되는 것을 막음 디스크 블록에서 한 번 읽어온 데이터는 가능하면 메모리 영역에 보관하여 다시 그 데이터가 필요할 때 메..
하드웨어 튜닝 5-분(5-Minute) 규칙 렌덤하게 접근되는 페이지가 5분내에 한 번 이상 빈번하게 사용된다면, 이것은 메모리 내에 유지되어야 함(충분한 메모리를 구입) 1-분(1-Minute) 규칙 순차적으로 접근되는 페이지가 1분 내에 한 번 이상 빈번하게 사용된다면 이것은 메모리 내에 유지되어야 함(충분한 메모리를 구입) RAID 수준 선택 기록이 드물고 데이터가 매우 큰 경우에는 RAID 5가 좋고, 다른 경우에는 RAID 1 이 바람직함 데이터베이스 설계 튜닝 스키마 튜닝 가장 빈번하게 접근되는 데이터를 분리하기 위해 릴레이션들을 수직으로 분할(오직 필요한 정보만 가져옴) 비정규화된 릴레이션을 저장함으로써 성능을 향상시킴 빈번하게 요구되는 조인에서 부합되는 레코드를 같은 디스크 페이지에 함께 ..
비즈니스 규칙(Business Rule) 튜닝 실제로 데이터베이스 관리자(DBA)들이 직면한 성능 문제들은 실제로 시스템의 설계와 구현에 대한 정확하지 않은 분석이나 부적절한 비즈니스 규칙에 의해 유발 비즈니스 규칙 조정 시, 많은 동시 사용자들이 존재하는 환경에 근거하여 현실적인 기대치를 고려해야 함 데이터 설계(Data Design) 튜닝 구현된 응용 프로그램에서 필요한 데이터가 무엇인지 정확히 파악해야 함 데이터 간의 관계와 속성을 잘 파악한 후에 정보의 구조화 작업을 수행하는 것이 필요 응용 프로그램(Application Design) 튜닝 동일 시스템을 접근하는 응용 프로그램이라도 구현 목적에 따라 상이한 설계가 가능 각 프로세스의 성능을 조사하여 부하기 발생하는 시점에서 해당 응용 프로그램 실..
TPC(Transaction Processing Performance Council) 성능 평가 TPC는 데이터베이스 시스템의 성능 평가에 관한 표준들을 정의 1989년에 발표한 TPC 성능 평가 A 모델(TPC-A)을 시작으로 TPC-B, TPC-C, TPC-D 등 4 종류의 표준규격이 결정되었으며, 최근에는 TPC-H, TPC-R, TPC-w 등이 새로이 규격화됨 TPC 성능 평가를 공표하기 위해서는 TPC 위원회에 완전 공개 보고서)FDR; Full Disclosure Report)를 제출하여 승인 받아야 함 FDR에는 테스트를 실시한 시스템 구성이나 가격이 명시되어야 함 TPC 성능 평가는 네트워크를 포함하는 하드웨어 성능과 운영체제(OS)를 포함하는 소프트웨어 성능을 종합해서 평가할 수 있음 T..
장애의 개념 및 종류 장애의 개념 시스템의 내적 또는 외적 문제로 시스템이 정상적으로 동작할 수 없는 상태를 의미 장애의 종류 실행 장애(Action Failure) 사용자의 실수, 무결성 규정 위반 등으로 인해 질의 실행이 실패하는 경우 트랜잭션 장애(Transaction Failure) 입력 데이터 오류, 시스템 자원 요구의 과다, 데드락 발생으로 활성 트랜잭션의 강제 종료 등으로 인해 트랜잭션 실행이 실패하는 경우 시스템 장애(System Failure) 소프트웨어(운영체제나 DBMS 등) 오류, 하드웨어 오동작, 정전 등으로 인해 시스템이 동작하지 않게 되는 경우로, 데이터베이스는 손상되지 않음 미디어 장애(Media Failure) 저장 장치인 디스크 블록의 손상이나 디스크 헤드의 충돌 등에 의..
로그 기반 회복 기법 지연 갱신 회복 기법 구분 내용 개념 트랜잭션이 부분 완료 상태에 이르기까지 발생한 모든 변경 내용을 로그 파일에만 저장하고, 데이터베이스에는 Commit이 발생할 때까지 저장을 지연하는 기법 특징 데이터베이스 회복 과정에서 UNDO는 필요 없음 : 트랜잭션 복구 시 로그 파일 내용만 폐기 UNDO가 필요 없기 때문에 로그 레코드는 형식을 가짐 구현 트랜잭션 단위가 종료될 때까지 디스크에 기록하는 출력 연산을 지연시키고, 데이터베이스 변경 내역을 로그에 보관 트랜잭션 완료(Commit) 시 로그를 이용해 지연된 출력 연산 수행 회복 시 UNDO 연산을 수행할 필요 없이 REDO 연산만 실행 트랜잭션 실행 중 시스템이 붕괴되거나 트랜잭션이 복구되면 로그에 있는 정보는 그냥 버리고 무시..
트랜잭션의 정의 전부 완료되거나 또는 전부 복구되어야 하는 작업의 논리적 단위 한번에 수행되어야 할 데이터베이스 연산들의 일련의 연속으로써 Read와 Write 연산들로 구성 동시성 제어와 회복을 위한 기법들의 근본임 트랜잭션의 특성 데이터 무결성을 보장하기 위해 DBMS는 다음의 ACID 성질을 유지해야 함 원자성(Atomicity) 트랜잭션의 모든 연산 수행 결과가 모두 데이터베이스에 반영(All)되거나 또는 전혀 반영되지 않아야(Nothing) 하는 특성 COMMIT 트랜잭션의 성공적인 완료로, 이 결과 트랜잭션의 변경 작업이 데이터베이스에 영구적으로 반영됨 ROLLBACK 트랜잭션을 처음 상태로 복구하는 것으로, 이 결과 데이터베이스에 대한 트랜잭션 변경 작업이 취소됨(Undo) 일관성(Consi..
동시성 제어의 개요 정의 데이터베이스 일관성의 파괴를 막기 위해 병행 트랜잭션 들 간의 상호 작용을 제어하는 것을 의미 여러 개의 데이터베이스 트랜잭션들이 동시에 성공적으로 실행될 수 있도록 지원하는 것을 의미 목적 프로세스와 디스크 활용(즉, 시스템 활동도)의 증가 트랜잭션 처리도(Throughput) 증가, 즉 단위 시간당 트랜잭션 처리 건수의 증가 트랜잭션의 평균 응답 시간의 감소 데이터베이스 공유도의 최대화 보장 동시성 제어의 필요성 동시성 제어가 실패하는 경우 발생하는 오류 현상 갱신 분실(Lost Update) 2개 이상의 트랜잰션이 같은 데이터를 공유하여 갱신할 때, 한 트랜잰션이 갱신한 내용이 다른 트랜잭션의 갱신에 의해 잃어버리게 되는 현상 불일치성(Inconsistency) 다수의 사용..
데이터 무결성의 개요 데이터 무결성의 정의 의미적 측면에서 데이터가 정확하고 완전함을 의미 데이터베이스 관리자나 응용 프로그램 개발자가 결정한 대로 미리 정의된 일련의 규칙에 따라 데이터가 관리됨 무결성 제약의 개념 데이터 무결성을 보장하기 위해 데이터에 적용되는 일련의 규칙 데이터베이스에 저장된 데이터의 정확성을 보장하기 위해, 정확하지 않은 데이터가 데이터베이스 내에 저장되는 것을 방지하기 위한 제약 조건 데이터 무결성 제약의 유형 도메인 무결성 제약 주어진 속성의 값이 그 속성이 정의된 도메인에 속한 값이어야 한다는 것을 규정한 것 도메인이란, 하나의 속성에서 취할 수 있는 모든 가능한 원자값들의 집합 예) 성별의 도메인은 {남자, 여자}이고,대학교 학년의 도메인은 {1,2,3,4}임 릴레이션 무결..
데이터베이스 보안의 개념 데이터베이스 보안의 정의 조직의 데이터베이스 내의 데이터를 불법적인 폭로, 변경 또는 파괴하는 행위로부터 데이터베이스를 보호하는 것 조직의 데이터베이스에 대해 권한이 없는 사용자가 무단으로 사용하거나 변경 또는 파괴하는 행위로부터 보호하는 것 데이터베이스 보안의 요구 사항 데이터베이스 사용자를 유일하게 식별하는 사용자 인증 부장한 접근으로부터 보호 및 정당한 사용자의 데이터베이스 접근 지원 기밀 데이터의 관리 및 보호, 비기밀 데이터에서 기밀 정보를 얻어내는 집계 및 추론 방지 집계(Aggregation) 낮은 보안 등급의 정보 조각을 조합하여 높은 등급의 정보를 알아냄 개별 데이터 항목보다 종합 데이터의 보안 등급이 높은 경우 심각한 문제를 야기 추론(Inference) 비인가..
내 블로그 - 관리자 홈 전환 |
Q
Q
|
---|---|
새 글 쓰기 |
W
W
|
글 수정 (권한 있는 경우) |
E
E
|
---|---|
댓글 영역으로 이동 |
C
C
|
이 페이지의 URL 복사 |
S
S
|
---|---|
맨 위로 이동 |
T
T
|
티스토리 홈 이동 |
H
H
|
단축키 안내 |
Shift + /
⇧ + /
|
* 단축키는 한글/영문 대소문자로 이용 가능하며, 티스토리 기본 도메인에서만 동작합니다.