2021/08 34

동시성제어_검사시점, 체크포인트(checkpoint) 회복 기법, 검사시점, UNDO, REDO

▣ 동시성제어_검사시점, 체크포인트(checkpoint) 회복 기법, 검사시점, UNDO, REDO - 트랜잭션 수행 도중 변경된 데이터를 로그파일에 기록하고, 일정 기간 단위로 로그와 버퍼를 디스크에 반영하고 로그파일에 검사시점(checkpoint)을 표시 - 로그기반 회복 기법의 단점을 보완하고 최적화 - 일정시간 간격으로 1) Log Buffer를 로그파일에 저장 2) DB Buffer 블록을 디스크에 저장 3) 체크포인트 시점 기록 - 검사시점 회복시 수행 알고리즘 UNDO list / REDO list 생성, 최종 Checkpoint 당시 모든 트랜잭션 UNDO list에 삽입 로그 순차 검색 이면 UNDO list로, 이면 UNDO list삭제, REDO list로 UNDO list 역순으로,..

데이터베이스 2021.08.25

데이터베이스 스키마 외부, 개념, 내부

▣ 데이터베이스 스키마 구분 설명 외부 스키마 (External Schema) - 개개 사용자나 특정 응용에 한정된 데이터베이스 정의 - 전체 데이터베이스의 한 논리적인 부분 - 서브스키마 혹은 뷰(View)라고도 함 개념 스키마 (Conceptual Schema) - 범 기관적 입장에서 데이터베이스를 정의 - 모든 응용시스템이나 사용자들이 필요로 하는 데이터의 통합한 조직 전체의 데이터베이스 구조 - 데이터베이스의 접근 권한, 보안 정책, 무결성 규칙 명세 - 단순히 스키마(Schema)라고도 함 내부 스키마 (Internal Schema) - 물리적 저장 장치 구조에 대한 데이터베이스가 저장하는 방법 명세 - 레코드 형식, 인덱스 유무, 데이터 항목의 표현방법, 레코드의 물리적 순서 등 명세 - 개념..

데이터베이스 2021.08.25

NoSQL 특징 및 제품 분류, CAP 이론, Consistency 일관성, Availability 가용성, Partition Tolerance 파티션 허용, 분할내성, 부분 결함 허용

▣ NoSQL 특징 및 제품 분류, CAP 이론, Consistency 일관성, Availability 가용성, Partition Tolerance 파티션 허용, 분할내성, 부분 결함 허용 1. CAP 이론 - Consistency(일관성) : 모든 사옹자는 같은 데이터의 뷰를 가짐 - Availability(가용성) : 모든 사용자는 항상 데이터 사용이 가능해야 함 - Partition Tolerance(파티션허용, 분할 내성, 부분 결함 허용) : 분산된 특정 노드에 장애가 발생해도 데이터 사용이 가능 * NoSQL : CAP 이론 중 CP or AP 즉, 가용성과 파티션 오류허용(부분 결함 허용)을 강조한 모델 * 관계형DB : CAP 이론에서 CA, 일관성과 가용성을 강조한 모델 2. NoSQL ..

데이터베이스 2021.08.25

회복과 동시성 제어_즉시갱신, 지연 갱신 회복 기법, 그림자 페이징 shadow

▣ 회복과 동시성 제어_즉시갱신, 지연 갱신 회복 기법 구분 즉시 갱신 회복 기법 (Immediate update) 지연 갱신 회복 기법 (Deferred update) 회복방법 트랜잭션 수행 과정의 변경 결과를 데이터베이스에 즉시 반영하고 로그파일에도 기록하는 방법 데이터베이스 변경을 Log에 기록 했다가 한꺼번에 실행하고, 트랜잭션의 부분완료 상태 전까지 모든 output 연산을 지연시키는 회복 기법 알고리즘 Undo -> Redo 필요 (Undo / No-Redo 알고리즘) Redo 연산만 필요 (No-Undo / Redo 알고리즘) 로그내용 Log Record : Log Record : 특징 구현이 복잡함 로그에 변경 전 값도 관리함 구현이 단순함 로그에 변경된 값만 관리함 ▣ 그림자 페이징(Sh..

데이터베이스 2021.08.25

논리 모델링_함수적 종속성(FD : Functional Dependency) 폐포(Closure) 후보키, 커버(Cover), BCNF, 정규화

▣ 논리 모델링_함수적 종속성(FD : Functional Dependency) 폐포(Closure) 후보키, 커버(Cover), BCNF, 정규화 1. 폐포(Closure) - 함수적 종속 관계의 집합 F에서 특정 속성 X가 함수적으로 결정하는 속성들의 집합(X+) - 후보키 찾기 - 폐포 알고리즘 2. 커버(Cover) - 어떤 함수종속 집합 F와 동등한 최소의 함수종속 집합을 의미 1) F의 모든 함수종속성들의 오른쪽 편 애트리뷰트가 하나이다. 2) F에서 X -> A를 X의 진부분집합 Y에 대하여 Y->A로 교체했을 때, F와 동등한 함수적 종속성들의 집합이 될 수 없다. (함수 종속성 왼쪽에 무의미하게 중된 애트리뷰트 제거) 3) F로부터 어떤 함수적 종속성을 제거했을 때, F와 동등한 함수적 ..

데이터베이스 2021.08.24

EE-R 모델, 확장 ER 제약 조건_분리 제약, 완전 제약, exclusive, disjoint, joint, overlap, total, partial, EER(Enhanced ER) 다이어그램, 수퍼타입, 서브타입

▣ EE-R 모델, 확장 ER 제약 조건_분리 제약, 완전 제약, exclusive, disjoint, joint, overlap, total, partial, EER(Enhanced ER) 다이어그램, 수퍼타입, 서브타입 분리제약 완전제약 배타 (Exclusive, disjoint) 중복 (joint, overlap) 전체 (Total) 부분 (Partial) 서브 타입간 중복 허용 여부로 구분 직원 -> 정규직, 계약직(배타) 직원 -> 본사근무자, 장기근속자(중복가능) 서브타입 엔티티가 모두 존재하면 전체, 일부 서브타입은 엔티티가 없으면 부분 2013년 60번 정답 : 2번 EMPLOYEE의 한 인스턴스는 이 세분화에서 최대 1개의 서브클래스에만 속할수 있음 -> disjoint (베타) 어느 서..

데이터베이스 2021.08.23

E-R모델링 연결함정(Connection Trap) Fan Trap, Chasm Trap, N:1:1:N, 1:N:1:N

▣ E-R모델링 연결함정(Connection Trap) 3항 관계이상의 관계성이 발생하면 각 릴레이션간의 의미 확인 과정을 통해 의미의 모호성이 없는지 검증 부채꼴 함정(Fan Trap) : 관계 잘못 도출 -> 한 개의 개체집합이 둘 이상의 1:N 관계성 집합을 갖는 경우 균열 함정(Chasm Trap) : 관계 누락 -> 개체 집합들이 부분 관계성 집합으로 연결된 경우 2013년 61번 정답 : 2번, 4번 문제는 STAFF : DIVISION = N:1, DIVISION : BRANCH = 1:N -> N:1:1:N의 관계를 갖는 fan trap임 2)번 어느 STAFF 멤버가 어느 BRANCH에 속해 있는지를 알 수 없음 4)번 이러한 모델은 fan trap이라고 함 1) fan trap N:1:..

데이터베이스 2021.08.22

이진트리 순회(Binary Tree Traversal)_전위, 중위, 후위

▣ 이진트리 순회(Binary Tree Traversal)_전위, 중위, 후위 전위순회(Preorder) Root -> Left -> Right 중위순회(Inorder) Left -> Root -> Right 후위순회(Postorder) Left -> Right -> Root 전위순회의 A, B, D, E와 중위순회의 E, D, B, A의 순서가 완전 반대임 이는 중간에 분기되는 노드가 없고 순서대로 배열되어 있다는 것 오른쪽 트리에서 전위순회의 경우 C, F, G, H로 C 노드가 시작점이고, 중위순회의 경우 G, F, H, C노드가 가장 마지막이므로 가장상단은 C가 됨 중위순회가 G로 시작하였으므로 단말 노드의 시작점은 G임. 나머지 F, H 중 F는 전위/중위 모드 두 번째이므로 위치가 정해졌고, ..

데이터베이스 2021.08.22

고정길이 레코드_블록킹인수, 총 블록수, 순차 파일 이진탐색, 비순서(히프)파일 탐색

▣ 고정길이 레코드_블록킹인수, 총 블록수, 순차 파일 이진탐색, 비순서(히프)파일 탐색 2014년 54번 정답 : 2번 - 블록킹 인수(Blocking Factor) = (블록크기 - 블록헤드) / 레코드 길이 (4,096 - 40) / 200 = 20개 - 총 블록수 = 레코드수 / 블록킹 인수 20,000 / 20 = 1,000 개 - 순차 파일에서 이진탐색 시 접근 블록 수(Big O:시간복잡도) 순서(순차) 파일(sequential file)에서 이진탐색을 한다면 최악의 경우 10개의 블록 접근이 필요함 - 비순서(히프) 파일에서 특정 레코드를 찾기 위한 탐색 평균 탐색 블록 수 히프 파일(heap file)에서는 레코드 탐색 시 최적 1개 블록, 최악 1,000개 블록 탐색이 필요하므로 (1+..

데이터베이스 2021.08.22