IT01 ::기출1 - 데이터베이스
*Locking : 트랜잭션 중에는 다른 데이터는 엑세스 할 수 없다.
Locking 과 병행성, 데이터베이스 공유도와 반비례 하다. 병행성은 수는 여러 계산을 동시에 수행하는 시스템이다.
*DML : 데이터 조작 언어
(Data Manipulation Language) , 질의어가 있다.
*이진트리 운행법
Preorder = 전위 : root -> left -> right
Inorder = 중위 : left -> root -> right
Postorder = 후위 : left -> right -> root
root를 기준으로 생각하면된다. 전위 중위 후위 어디에 있는지.
* A B C D Stack 자료구조에 넣고 뺄 수 있는 경우를 구해보자
P(push) P2(pop)
P-A, P2-A 출력 A
P-B, P2-B 출력 B
P-C, P2-C 출력 C
P-D, P2-D 출력 D
P-A, P-B, P-C, P-D
P2-D, P2-C, P2-B, P2-A
출력 DCBA
순서만 바꾸면 굉장히 많다. 두개만 해보는걸로..
* 데이터베이스의 정의
데이터 베이스는 다음의 특성을 갖는다. 통합된 데이터, 저장된 데이터, 운영데이터, 공용데이터를 갖는다.
* 트랜잭션 결과 관련 있는 모든 연산들은 완전히 실행되거나 전혀 실행되지 않아야 한다. = Atomicity.
* 데이터베이스의 특징
실시간 접근성, 계속적인 변화, 동시공유, 내용에 의한 참조 (주소에 의한 참조가 아니다.)
* 함수의 종속
쉽게 말해서 무엇에 의해서 무엇이 결정되는 결정이다.
ex) 학번->이름
* 데이터베이스 설계중에 물리적 설계가 있다.
데이터를 디스크 같은 물리적 저장장치에 저장하는것으로 이 단계에서 트랜잭션을 작성한다.
데이터베이스 설계 단계 중 응답시간, 저장 공간의 효율화, 트랜잭션 처리도와 밀접한 관계를 갖는 부분이다. 이외 개념적 설계, 논리적 설계가 있는데 또 나오면 보겠다.
* 스키마의 3계층에 대해서 작성해보려 한다.
총 3개로 나눠지는데 외부 스키마, 개념 스키마, 내부 스키마 이다. 각 스키마 마다 특징을 작성해보면
외부 스키마 = 데이터베이스의 논리적 구조, 일반 사용자는 SQL을 사용하여 DB 사용
개념 스키마 = 제약 조건, 무결성 규칙을 정의한다. 단순하다.
내부 스키마 = 물리적 저장장치와 밀접하다. 실제 저장하는 방법
문제 - only one it can exist per database -> 개념 스키마(데이터베이스 한개다.)
*
1 2 3 | DBA) GRANT SELECT ON STUDENT TO U0 WITH GRANT OPTION; U1)GRANT SELECT ON STUDENT TO U1; DBA) REVOKE SELECT ON STUDENT FROM U0 CASCADE; | cs |
* Entity : This is a "thing" in the real world an independent existence.
* 기본 키 : 튜플을 구분할 수 있다. NULL을 가질 수 없다. 중복은 있을 수 없다.
* NULL 은 부재 정보를 나타낸다. Missing information 을 의미한다.
* 시스템 카탈로그 : db에 변화가 있으면 dbms가 만들어낸다. 검색은 하지만 갱신할 수 없다. 스키마 및 객체에 관한
정보를 가지고 있는 시스템 db 이다. 정보를 유지 관리 한다. 여기서 Data-Dictionary 가 있는데 이는 메타 데이터를 포함한다.
* 정규화 : 잘못 설계된 관계형 스키마 들을 더 작은 속성으로 쪼개는 것이다.
정규형에는 제1정규형, 제2정규형, 제3정규형, BCNF형, 제4정규형, 제5정규형이 있다. 차수가 증가할수록 제약조건이 늘어난다.
=>정규화의 목적 : 어떤 릴레이션도 데이터베이스에 표현가능하다. 그리고 중복을 배제한다. 이로인한 삽입, 삭제, 갱신 이상 발생을 방지할 수 있다. 또한, 릴레이션을 재구성할 필요성을 줄일 수 있다.
* 선형자료구조와 비선형 자료구조
선형자료 구조는 큐, 선형 리스트 흔히 알고있는 배열, 스택 이런것들이 있고
비선형자료 구조는 그래프, 트리 이런것들이 있다.
* 릴레이션
릴레이션을 구성하는 튜플을 식별하기 위한 속성들을 키로 사용할 수 있다.
(*튜플은 속성의 모임이다. 때문에 튜플은 서로 다른 값을 가질 수 있다.)
* 버블정렬
4 3 4 9 2
라고 하면 1회전만 작성해보고자 한다.
3 4 4 9 2
가 된다.
각 자릿수를 index라고 하면 0번째 1번째
즉 n-1 번째 n 번째를 swap 하는 것이다. 단, 다음 번째 숫자가 더 크면 swap하지 않는다.
* View
View 란? 접근이 허용된 자료만 제한적으로 보여주는 것 , 가상테이블이다. 물리적으로 존재하지 않는다. 임시적인 작업을 위해 사용된다.
데이터를 안전하게 보호할 수 있다. 정의된 뷰는 다른 뷰의 정의에 기초가 된다. 하나 뷰를 지우면 기존의 뷰로 형성된 다른 뷰도 지워진다.
장점 => 데이터 관리를 간단하게 해주고 데이터 독립성 제공
단점 => 독립적인 인덱스를 가질 수 없다. (인덱스 : 데이터베이스에 원하는 레코드를 빠르게 찾아갈 수 있도록 만들어진 데이터 구조), 뷰의 정의를 변경할 수 없다.
'IT' 카테고리의 다른 글
IT06 :: 정보처리기사 (패킷 문제) (0) | 2020.08.15 |
---|---|
IT05 :: 정보처리기사 문제 정리 - 9급 전산직 컴퓨터일반 (0) | 2020.08.11 |
IT04 :: 200424 IT 스터디 (0) | 2020.04.24 |
IT03 :: 전산영어 (0) | 2019.10.08 |
IT02 :: [전자계산기구조]기출문제1회 (0) | 2019.03.01 |
댓글
이 글 공유하기
다른 글
-
IT05 :: 정보처리기사 문제 정리 - 9급 전산직 컴퓨터일반
IT05 :: 정보처리기사 문제 정리 - 9급 전산직 컴퓨터일반
2020.08.11 -
IT04 :: 200424 IT 스터디
IT04 :: 200424 IT 스터디
2020.04.24 -
IT03 :: 전산영어
IT03 :: 전산영어
2019.10.08 -
IT02 :: [전자계산기구조]기출문제1회
IT02 :: [전자계산기구조]기출문제1회
2019.03.01