데이터베이스 70

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

정규화, 함수적 종속성_ 정규화의 목적, 제1정규형, 제2정규형, 제3정규형, BCNF분해

▣ 함수적 종속(Functional Dependency) 1) 완전 함수적 종속 릴레이션 R에서 애트리뷰트 X의 값 각각에 대해 항상 애트리뷰트 Y의 값이 하나만 연관되는 경우 2) 부분 함수적 종속 애트리뷰트 Y가 복합 애트리뷰트 X에 함수 종속이면서 X의 진부분 집합에는 함수 종속이 아닌 경우 3) 이행 함수 종속 종속관계 중 키가 아닌 다른 애트리뷰트도 결정자일 경우 ▣ 정규화 1) 제1정규형(1NF, First Noraml Form) 한 릴레이션을 구성하는 모든 도메인이 원자값으로 된 정규형 / 속성의 원자화 2) 제2정규형(2NF, Second Normal Form) 제1정규형을 만족하면서 릴레이션에 존재하는 부분 함수적 종속을 제거하여, 모든 속성이 기본키에 완전 함수 종속이 되도록 만들어진 ..

데이터베이스 2021.08.21

SQL _중복 릴레이션(테이블), 차수(degree)와 카디날리티(cardinality), Sailors, Reserves, boats

▣ SQL _중복 릴레이션(테이블), 차수(degree)와 카디날리티(cardinality) 2014년 73번 정답 : 2번 차수(degree)는 SID, SNAME 2개, 카디날리티(cardinality)는 총 3개 B1.color = 'red' AND B2.color = 'green'이므로 bid는 (102, 103) 혹은 (103, 104)이어야 하며 해당하는 bid인 sid는 31, 64, 74임 ----------------------------------------------------------------- -- 2014년 정보시스템감리사 DB 73번 CREATE TABLE SAILORS_73 ( SID INT , SNAME VARCHAR(20) NOT NULL , RATING INT , A..

데이터베이스 2021.08.21