목록DB (25)
솜은 코튼
2023.06.02 - [DB] - [DB] 트랜잭션 [DB] 트랜잭션 트랜잭션 . 트랜잭션은 하나의 논리적 기능을 수행하기 위한 작업의 단위로서 데이터베이스의 일관된 상태를 또 다른 일관된 상태로 변환시킨다. 트랜잭션이 가져야 될 특성은 아래와 같다. 원 sommda.tistory.com 로그 이용 회복 . 앞에서 설명한 트랜잭션에서 부분 완료 상태에 들어간 트랜잭션은 다시 실패되지 않는다는 것을 보장받을 때 완료 단계로 들어간다. 이러한 보장을 해주는 기법을 알아보자. 데이터베이스 로그 . 로그 레코드는 다음과 같은 유형으로 구분될 수 있다. 트랜잭션 Ti가 실행 시작 트랜잭션 Ti가 데이터 아이템 Xj의 값을 V1에서 V2로 변경 트랜잭션 Ti가 실행 완료 로그는 데이터베이스가 갱신될 때마다 만들어..
트랜잭션 . 트랜잭션은 하나의 논리적 기능을 수행하기 위한 작업의 단위로서 데이터베이스의 일관된 상태를 또 다른 일관된 상태로 변환시킨다. 트랜잭션이 가져야 될 특성은 아래와 같다. 원자성 자기의 연산을 전부 또는 전무 실행만이 있지 일부 실행으로 기능을 갖는 것은 아니다. 일관성 실행을 성공적으로 완료하면 언제나 일관성 있는 데이터베이스 상태로 변환한다. 격리성 트랜잭션이 실행 중에 있는 연산의 중간 결과는 다른 트랜잭션이 접근할 수 없다. 영속성 실행을 성공적으로 완료하면 그 결과는 영속적이다. 트랜잭션 실행의 시작에서부터 성공적으로 마칠 때까지 한 단위로 해서 일관성을 검사하는 것이 원자성이다. 원자성을 위한 연산은 'Commit(완료)'와 'Rollback(복귀)' 연산이 있다. Commit 연산..
장애와 회복 . 회복이란 장애가 일어났을 때 데이터베이스를 장애 발생 이전의 일관된 상태로 복원시키는 것이다. 장애란 정해진 명세대로 시스템이 작동하지 않는 상태를 말한다. 장애는 아래 세 가지 유형으로 구분할 수 있다. 1. 트랜잭션 장애 트랜잭션내의 논리적 오류나 내부 조건(입력 데이터의 불량, 데이터의 불명 등)으로 정상적인 실행을 계속할 수 없는 상태 2. 시스템 장애 하드웨어 오작동으로 메인 메모리에 있는 정보의 손실이나 교착 상태 발생으로 더 이상 실행할 수 없는 상태 3. 미디어 장애 디스크 헤드 붕괴나 고장으로 인해 저장장치의 데이터베이스 일부 또는 전부가 손상된 상태 이러한 장애에 대한 회복을 위해 DBMS는 회복 관리자로 대비하고 있다. 회복 관리자는 장애 발생을 탐지하고 탐지된 장애로..
데이터베이스 관리 시스템 . 데이터 공용을 할 수 없는 화일 시스템에서 가장 큰 문제점은 데이터 종속성과 데이터 중복성이다. 데이터 종속성 응용 프로그램과 데이터 간의 상호 의존관계 예로, 인덱스된 순차 화일 구조로 된 데이터 화일을 순차 화일 구조로 변경시킨다면 이 화일을 접근하는 모든 응용 프로그램도 동시에 변경시켜 주어야 한다. 데이터 중복성 한 시스템 내에 내용이 같은 데이터가 중복되게 저장 관리되는 것 데이터의 중복성은 다음과 같은 문제점이 있다. 1. 일관성 동일성을 유지하기 어려워 데이터 간에 불일치가 일어나 내부적으로 데이터 일관성이 없게 된다. 2. 보안성 같은 내용의 데이터는 똑같은 수준의 데이터 보안이 유지되어야 하는데 여러 곳에 중복되어 저장되어 똑같은 수준의 보안을 유지하는 건 힘..
데이터베이스의 개념적 구성요소 . 데이터베이스를 구성하는 요소는 크게 사용자 관점에서의 논리적 또는 개념적 구성요소와 시스템 관점에서의 물리적 구성요소로 나눌 수 있다. 사용자 측면에서 데이터베이스는 개념적으로 '개체'와 '관계'로 구성되어 있다. 개체 . 개체 또는 엔터티라고 하는 것은 현실 세계에 대해 사람이 생각하는 개념이나 정보의 단위로서 의미를 가지고 있다. 위의 그림에서 '학번', '이름', '학과'는 개별적으로 정보를 제공해 주지 못하지만 이것들이 모여 '학생'이라는 개체를 구성해 큰 의미를 제공한다. 한 '학생' 개체를 나타내는 는 학생 개체의 한 값으로 볼 수 있는데 이것을 '개체 인스턴스' 또는 '개체 어커런스'라고 하며, 이 인스턴스들의 집합을 '개체 집합'이라 한다. 반면 '학번',..
데이터베이스의 정의 . 데이터베이스란 어느 한 조직의 여러 응용 시스템들이 공용할 수 있도록 통합, 저장된 운영 데이타의 집합이다. 데이터베이스 정의가 함축하고 있는 의미는 다음과 같다. 1. 통합 데이터 똑같은 데이터가 원칙적으로 중복되어 있지 않다는 것을 말하며 일부 데이터의 중복을 허용하기도 한다. 이러한 의도적 중복은 항상 파악할 수 있고 관리할 수 있는 특징이 있다. 2. 저장 데이터 자기 디스크나 테이프와 같이 컴퓨터가 접근할 수 있는 저장 매체에 저장된 데이터를 말한다. 3. 운영 데이터 반드시 유지해야 될 데이터가 있기 마련인데 조직의 존재 목적이나 기능을 수행하는 데 없어서는 안 될 데이터의 집합이다. 4. 공용 데이터 조직에 있는 여러 응용 시스템들이 공동으로 소유하고 유지하며 이용하는..
기본 정규형 . 릴레이션이 어떤 특정의 제약 조건을 만족할 때 그 제약조건을 요건으로 하는 정규형에 속한다고 말한다. 제 1 정규형에서 제 5 정규형까지 있고, 차수가 높아질수록 만족시켜야 할 제약조건이 가중된다. 제 1 정규형 . 릴레이션 R에 속한 모든 도메인이 원자 값만으로 되어 있다. 단순히 어떤 릴레이션이 항상 원자 값만 포함하게 되어 있으면 '1NF'인 것이다. 즉, 모든 정규화 릴레이션은 제 1정규화에 속한다. 예로 아래 수강지도 릴레이션이 있다. 수강지도(학번, 지도교수, 학과, 과목번호, 성적) 기본 키 : {학번, 과목번호} 이 수강지도 릴레이션의 제약조건은 아래와 같다. {학번, 과목번호} -> 성적 학번 -> 지도교수 학번 -> 학과 지도교수 -> 학과 위의 다이어그램은 아래 릴레이..
2023.05.28 - [DB] - [DB] 관계 데이터 모델 (릴레이션) [DB] 관계 데이터 모델 (릴레이션) 릴레이션 . 도메인 한 애트리뷰트에 나타날 수 있는 값들의 집합이다. 관계 데이터 모델은 원잣값을 가지며 복합 애트리뷰트나 다치 애트리뷰트는 허용되지 않는다. ex) 김창섭, 박영권, .. 등의 sommda.tistory.com 기본 키 . 후보 키는 투플을 유일하게 식별할 수 있는 집합이며, 유일성과 최소성을 보장해야 한다. 유일성은 모두 상이하고 유일하다는 뜻이고, 최소성은 꼭 필요한 애트리뷰트들로만 구성되어야 한다. 위에서 학생 릴레이션의 후보키는 '학번'이다. 두 애트리뷰트 집합 {이름, 학과}로 식별할 수 있으면 후보키가 될 수 있다. 만약 '이름'만으로 모든 투플들을 식별할 수 있..
데이타 처리 시스템 . 데이타 처리 시스템은 데이타의 처리 형태, 즉 데이타가 조직되고 접근되는 방법에 따라 일괄 처리, 온라인 처리, 분산 처리 시스템으로 구분된다. 1. 일괄 처리 시스템 일괄 처리란 유사한 트랜잭션을 한데 모아 일정 시간에 한꺼번에 처리한다. 트랜잭션은 논리적 작업 단위로 하나의 단위로 처리되어야 하는 분리될 수 없는 연산 그룹을 말한다. 일괄 처리 방식은 일정 기간마다 주기적으로 처리하거나 그룹별 성질을 가지고 있으며, 순차 접근 방법을 사용할 수 있는 업무에 적합하다. 이러한 특성으로 각 트랜잭션 당 처리 비용이 적게 들고, 단위 시간당 처리되는 작업 수가 많아 시스템 성능을 높일 수 있다. 하지만 즉시 처리되지 않아 대기해야 하고 사전 준비 작업을 거쳐야 한다는 단점이 있다. ..
정보 처리 시스템 . 정보 처리란 컴퓨터가 정보를 생성하기 위해 데이타를 처리하는 작업이며, 데이타베이스 시스템은 이러한 정보 처리 시스템이 효과적으로 수행할 수 있게 하는 도구이다. 정보와 데이타(자료)는 엄연히 다르다. 데이타는 단순한 관찰이나 측정을 통해 수집된 값이며 텍스트, 이미지, 그래픽 등이 포함된다. 정보는 지식으로서 데이타의 해석이나 상호간의 관계를 말하는 것으로 데이타를 처리해서 얻어진 결과이다. 정보가 의사 결정에 유용하게 할 수 있기 위해서 필요시에는 컴퓨터를 통해 언제라도 이용할 수 있도록 수집, 조직 , 저장되어 있어야 한다. 이렇게 필요시에 처리해서 의사 결정에 유효한 정보를 생성하여 분배하는 수단을 '정보 시스템'이라고 한다. 정보 시스템은 과거, 현재, 미래 상황에 대한 정..