정처기

ch3 데이터베이스

브리오 2024. 7. 11. 16:09

오답

-인덱스 : CREATE, DROP

-DB 레코드 양식 설계할때 트랜잭션 모델링 신경X->논리적 DB 설계 단계

-DDL(정의),DML(조작),DCL(관리)

-디비 개념 설계 : 스키마, 요구분석-개념-논리(트랜잭션)-물리(트랜잭션 처리량)-구현

-CONSTRAINT : 무결성, OPERATION : 표현된 값 처리

-기본키는 NOT NULL, 오직 하나만 존재해야 한다, 중복 불가

-정규형 정리

1.   전부 원자값

2.   부분적 종속x, 완전 함수 종속

3.   이행 종속 x

bc. 결정자=후보키 -> 결정자이면서 후보키 아닌거 제거

4. 다치 종속 제거

5. 모든 조인 종속이 후보키 통해서만 성립

-e-r모델

1.네모 : 개체

2.마름모 : 관계

3.동그라미 : 속성, 동그라미 2개 : 다중 속성

4.직선 : 개체 타입과 속성 연

-degree : 열 개수, cardinality : 행의 개수

-인덱스  : ddl, 열이름 변경 : dml

-비트윈 : 양쪽 포함

-dcl : 권한 부여

-union : 중복 제거, union all : 중복 제거x

-순수관계 연산자 : select,project,join,devision

-dml : create, alter, drop 

-ddl : insert,update,delete,select

-요구사항분석-개념-논리(정규화)-물리-구현

-x->y : x가 y를 정의

 

 

 

 

 

 

 

 

 

 

자료구조

-인덱스 : 데이터베이스에서 위치 찾기

-스택 가드 : 오버플로우 상태를 가정한 뒤 프로그램 실행을 중단 하는 기술

-언더 플로우 : 스택의 바닥 

-오버 플로우 : 스택이 넘칠때

-0-주소 인스트럭션 = 스택

비선형 구조

-트리 레벨 root =1

-차수 = 노드 중 가장 많은 자식을 가진 노드의 자식 수

-이진 트리 운행법 : 전위-중위-후위 ->root가 앞-중간-뒤

-수식 표기법 : 전위,중위,후위 = 연산자 위치 지정 -> 옮기고 괄호 제거 하기

-단말노드 : 각노드의 마지막 노드

-무방향 노드 최대 간선 수 = n(n-1)/2

정렬

-삽입정렬 : 2번째 부터 키라고 임명하고 앞의 수와비교<->선택 정렬과 비교

-버블정렬 : 계속 양옆 비교

-선택정렬 : o(n^2), 맨앞의 숫자를 배열의 모든 원소와 비교

-병합정렬 : 2개씩 계속 나누고 합치면서 정렬o(nlogn)

-퀵정렬 : o(n^2),o(nlogn)

-힙정렬 : o(nlogn)

검색과 해싱

-슬롯 : 레코드 1개 저장 하는공간

-충돌 : 레코드가 같은 버킷에 저장 -> 오버플로우 발생

 

-동의어 : 동일한 홈주소

-xor : 폴딩법

인덱스 구조와 파일 편성

-오버플로 영역 : 색인구성에 필요하다

-VSAM : 기본영역, 오버플로 영역 구분 하지 않는다

-직접파일 : 레코드키에 의한 주소 공간

-색인순차파일 : 오버플로 레코드가 많아지면 재편성 해야하는 공간

데이터베이스

-정의기능 : 테이블 만들기  

-조작기능 : DB 조정

-제어기능 : 무결성 유지

-장점 : 중복 및 종속성 최소화

-OLAP (자료 분석 도구) 연산종류 : 롤업,드릴다운,다이싱,슬라이싱

-하둡 : 작은 컴퓨터를 모아 빅데이터 처리

-데이터 마이닝 : 의미 채굴

-데이터 자바 오픈소스 : 하둡

db 구성

-스키마 : 외부,개념(얼마나 효율적인지),내부

-정의어(만들때),조작어(레코드를 사용할때),제어어(보호 or 병행 제어)

-데이터 모델(현실을 데이터로 변환) : 데이터 구조, 연산, 제약 조건

-개념적 모델 : e-r 다이어그램 ,사각형(객체),마름모(관계),타원(속성),실선(연결)

-논리적 모델 : 계층형(트리),네트워크(망형),관계,객체지향

-개념 스키마 : db의 논리적 구조 정의

-내부 스키마 : 물리적 저장

관계형 db 모델

-릴레이션 구조 : 속성, 튜플

-도메인 : 값의 범위

-카디널리티 : 튜플(행) 개수

-디그리 : 열의 개수

-릴레이션 특징 : 튜플 유일,무순서|속성 원자성, 무순서

-키 : 슈퍼키의 최소단위

-개체 무결성 : 기본키-널 불가

-참조 무결성 : 외래키, 원래도 없으면 참조에도 없다

-도메인 무결성 :

-후보키 : 유일성, 최소성 만족

db설계

-개념설계(현실을 e-r로)-논리설계(테이블 생성)-물리설계(하드에 저장)

-정규화의 목적 : 데이터 구조의 안정화,중복 최소화(개체 무결성,참조 무결성)

-함수적 종속 : 결정자->종속자 : 학번->이름

-이행 함수적 종속 : x->y->z

-이상현상 : 릴레이션 조작시 불필요하게 중복

정규화

-1차 정규형 : 모든 도메인은 원자값

-2차 정규형 : 부분 함수적 종속 제거,완전 함수적 조속 관계 만족

-3차 정규형 : 이행적 함수 종속 제거

-bcnf : 강한 3차 정규형

-4차 : 다치

-5차 : 조인

반정규화

-정규화를 단순화 한다(역 정규화)

-무결성과 반정규화는 대척점

관계 대수와 연산자

-대절버스(관계대수는 절차적 수다)

-순수관계 연산자의 종류

1.셀렉트 : 튜플집합

2.프로젝트 : 속성집합

3.조인 : 공통 연결

4.디비전 : 나누기

집합연산자

-카티션 프러덕트 : 교차 곱 -> 속성개수는 더하고(차수는 더하고), 튜플은 곱한다(카디널리티는 곱한다),순수 x

SQL,DDL

-ALTER

-뷰 : 사용자한테 보여주는 가상의 테이블, ALTER 불가, DROP만 가능, 뷰위에 뷰 가능

-시스템 카탈로그 : 자료에 대한 정보가 담고 있는것 = 데이터사전,메타데이터 사용자가 하는게 아니라 시스템이 분석

-UPDATE 없다

DML

-GROUP BY는 항상 HAVING과 함께 처리

-DISTINCT : 중복 생략

-INSERT INTO

-DELETE FROM

-UPDATE SET

-LIKE : 문자열 비교

-BETWEEN AND

-SEL,INSER,DEL,UPDATE

트랜잭션

-원자성 : 통으로 동작해야 한다, 반영하던지 안하던지

-일관성

-격리성 : 다른 동작에 영향 안받아야 한다

-영속성

-CRUD Matrix : db 분석 도구, 언제 어떤 동작 하는지,테이블간의 매트릭스

-즉각 갱신법 : 회복 작업을 위해서 별도 log 기록

-commit : 승인

-rollback: 

-recovery : 복구

-병행제어 : 공유하기 위해 동시에 수행되는 트랜잭션을 일관성있게 처리 하기 위한것

-로킹,최적병행수행,타임스탬프-직렬화를 미리 정하는것,다중버전

-로킹 : 로킹 단위가 커지면 로크의 수가 적어진다

-2단계 로킹 : 확장,축소 2개의 단계 존재

-로그파일 사용하는것 -즉각 갱신 방법

보안

-암호화=복호화 - >비밀키

-암호화=복호화 아닐때 -> 공개키

-grant on to 사용자에게 권한 부여

-DML(UPDATE,DELETE,INSERT,SELECT)

-REVOKE GRANT OPTION FOR 권한 ON 객체 FROM 사용자 CASCADE

-TRIGGER : 이벤트 마다 관련 작업 자동 수행 

분산데이터

-위치 투명성  : 위치 중요 X

-중복 투명성 : 중복되도 상관X

-병행 투명성 : 다중 사용자 공유가능

-장애 투명성 : 어디서 오류나도 알필요 없음