일 | 월 | 화 | 수 | 목 | 금 | 토 |
---|---|---|---|---|---|---|
1 | 2 | 3 | 4 | 5 | ||
6 | 7 | 8 | 9 | 10 | 11 | 12 |
13 | 14 | 15 | 16 | 17 | 18 | 19 |
20 | 21 | 22 | 23 | 24 | 25 | 26 |
27 | 28 | 29 | 30 |
- ssafy
- #삼성청년SW아카데미
- join
- 3과목
- employees
- #SSAFY입학
- 2과목
- 백준
- 파이썬
- 2309
- End
- cmd
- python
- #코딩교육
- 정보처리기사실기
- https://www.acmicpc.net/problem/1074
- 최대공약수와 최소공배수
- 2609
- BOJ
- 파이썬출력기본
- 괄호의 값
- 1과목
- Baekjoon
- 일곱난쟁이
- github
- 2504
- 정보처리기사
- 5과목
- combination
- 4과목
- Today
- Total
갈색붕어빵
[정보처리기사-실기] 3과목 핵심개념 본문
정보처리기사 실기 시험날 가져가려고 만들었던 3과목 오답노트 및 핵심개념이다.
2020년도 ~ 2022년도 기출문제를 직접 풀고 틀렸던 개념, 계속 틀렸던 개념, 많이 나오는 개념 위주로만 적었다.
지극히 주관적이고 개인적이라서 제목만 적고 내용을 안적은 것은 있고, 없는 문제나 개념들도 많지만 시험 볼 때 도움이 많이 되기도 했고, 나중에 공부할 때도 도움이 될 것 같아 적었다!
스키마 (20.3)
- 데이터베이스의 구조와 제약조건에 대해 명세를 기술한것
- 외부스키마 / 개념스키마 / 내부스키마
RDBMS 모델링 (21.1, 22.1)
속성 도메인 튜플 릴레이션
차수 (Degree) : 속성의 개수
기수 (Cardinality) : 튜플의 개수
키(key)
- 유일성 : 튜플을 유일하게 구분할 수 있는 성질
- 최소성 : 가장 적은 수의 속성으로 구성되는 성질
- 1. 후보키 - 유일성, 최소성을 만족 2. 기본키 - 튜플의 식별을 위해 지정된 키 3. 대체키 - 기본키 외 후보키 4. 슈퍼키 - 유일성은 만족하지만, 최소성은 만족하지 못함 / 두 개 이상의 속성의 집합 5. 외래키 - 관계뙨 다른 릴레이션의 기본키를 참조
무결성 제약사항
- 도메인 무결성
- 개체 무결성 - 기본키로 지정된 속성은 중복값과 Null값이 있어서는 안된다.
- 참조 무결성
데이터 모델링 (21.1)
정의 : 현실세계의 데이터를 디지털 세계의 데이터 구조로 변환하는 과정
구성요소 : 구조 연산 제약조건
절차 : 개념적 설계 - 논리적 설계 - 물리적 설계
관계스키마 이상현상 (20.4, 22. 1)
이상현상 : 잘못된 스키마 설계로 릴레이션에 이상현상이 발생하는 것
삭제이상 : 특정 튜플을 삭제할 때, 관련된 정보을 삭제하지 않으면 삭제되지 않는 현상
삽입이상 : 특정 튜플을 삽입할 때, 관련되지 않는 정보을 삽입하지 않으면 삽입되지 않는 현상
갱신이상 : 특정 데이터를 갱신할 때, 데이터 불일치가 발생하는 현상
확장 E-R다이어그램 객체지향 추상화(IS-A관계) (21.3)
is - a 관계 : `서브타입 is a 슈퍼타입 of things`
특수화(Specialization) : 하나의 개체 타입을 여러개의 하위 레벨 개체 타입으로 분리, 하향식 설계방식
일반화(Generalization) : 여러 개체 타입의 공통적인 특성을 상위 개체 타입으로 표현, 상향식 설계방식
상속(Inheritance) : 새로운 개체 타입을 설계할 때 기존의 개체 타입을 그대로 사용할 수 있다
집단화(Aggregation) : 각각의 관련있는 개체 타입을 통해 하나의 새로운 개체 타입을 만드는 것
분류화(Classification) : 개체 타입과 그 개체 타입의 개체 어커런스들의 관계를 표현
순수관계연산자 (SELECT, PROJECT, JOIN, DIVISION) (20.3)
SELECT
σ조건(R) : 릴레이션R에 포함되면서 조건을 성립하는 요소
PROJECT
π속성들(R) : 릴레이션R에 포함되면서 지정된 속성에 해당되는 요소
세타조인
R▷◁<조건> S : 릴레이션 R과 S의 속성이 포함된 조건을 성립하는 요소
자연조인
R▷◁NS : 두 릴레이션에 공통으로 포함되는 속성의 값이 동일한 요소
디비전
R÷S : 릴레이션 R에서 릴레이션 S의 속성의 데이터와 일치하는 요소 중 S속성을 제외한 요소
정규화 3과목 (21.2)
도 부 이 결 다 조
비정규형 : 전혀 정규화가 이루어지지 않은 경우
제 1 정규형 : 도메인이 원자성을 갖는 경우
제 2 정규형 : 부분 함수 종속 제거
제 3 정규형 : 이행적 함수 종속 제거
보이스코드정규형 : 결정자이면서 후보키아 아닌 함수 종속 제거
제 4 정규형 : 다치종속성 제거
제 5 정규형 : 조인종속성 제거
SQL 명령어
DDL(데이터 정의어) : 논리적, 물리적 데이터베이스를 생성, 수정할 목적으로 사용되는 명령어
구분명령어설명제약조건
생성 | CREATE | 데이터베이스 혹은 테이블 생성 | PRIMARY KEY, FOREIGN KEY, UNIQUE, NOT NULL, CHECK |
변경 | ALTER | 테이블 변경 | ADD, MODIFY, DROP <br />RENAME COLUMN원래이름TO바꿀이름,<br />ADD CONSTRAINT, ENABLE CONSTRAINT,<br />DROP CONSTRAINT, DISABLE CONTSTRAINT |
삭제 | DROP | 데이터베이스 혹은 테이블을 삭제 | CASCADE, RESTRICT |
삭제 | TRUNCATE | 테이블의 모든 튜플을 삭제 |
- 인덱스 생성
- `CREATE [UNIQUE] INDEX 인덱스명 ON 테이블명(필드[, ...])` - 중복값을 허용하지않는 인덱스생성
- `ALTER TABLE 테이블명 DROP INDEX 인덱스명` - 인덱스삭제
- `CREATE [UNIQUE] INDEX 인덱스명 ON 테이블명(필드[,...])` - 수정은 삭제 후 재생성
- `SHOW INDEX FROM 테이블명`
DML(데이터 조작어) : 데이터를 조회, 수정, 삽입, 삭제할 수 있는 명령어
구분명령어설명
삽입 | INSERT | INSERT INTO 테이블명 (필드[, ...]) VALUES (값[, ...]); |
수정 | UPDATE | UPDATE 테이블명 SET 필드=값 |
삭제 | DELETE | |
조회 | SELECT | DISTINCT, *, GROUP BY, HAVING BY, ORDER BY, AS, LIKE, .. |
DCL(데이터 제어어) : 다수의 사람들이 데이터를 공유할 수 있도록 병행제어를 수행하는 명령어
- GRANT : `GRANT [권한|ROLE] TO [사용자|ROLE|PUBLIC] [WITH GRANT/ADMIN OPTION]` - 사용자에게 권한 부여
DML (21. 2)
데이터 조작어
- INSERT 필드 삽입
- UPDATE 튜플 갱신 - `UPDATE 테이블명 SET 필드=값[, ...] WHERE 조건식`
- DELETE 튜플 삭제
- SELECT 조회
- DISTINCT : 중복제거
- \* : 모든 필드 조회
- GROUP BY : 지정된 필드의 데이터를 기준으로 튜플 조회
- HAVING BY : 그룹별 조건을 만족하는 튜플 조회
- ORDER BY : ASC , DESC
- AS
- AND , OR, IN, IS NULL, LIKE 정%, BETWEEN
- 정% : 정으로 시작하는 문자열 %정 : 정으로 끝나는 문자열 %정% : 정을 포함하는 문자열 정_ : 정으로 시작하는 2글자 정__ : 정으로 시작하는 3글자
- 서브쿼리
- 정렬
- 그룹화
- 조인 `SELECT * FROM 학생 JOIN 과목 ON 학생.과목코드 = 과목.과목코드`
- INNER : 교집합
- LEFT : 왼쪽 + 교집합
- RIGHT : 오른쪽 + 교집합
- CROSS : 전체 ( 왼 + 교 + 오)
DCL TCL (20.2)
DCL : 데이터 제어어 : 데이터를 공유할 수 있도록 병행 제어를 수행하는 명령어
- GRANT : `GRANT [권한|ROLE] TO [사용자|ROLE|PUBLIC] [WITH GRANT/ADMIN OPTION]`
- PUBLIC : 모든 사용자에게 권한 부여
- WITH GRANT OPTION : 부여된 권한을 또다른 사용자에게 권한 부여, 권한 회수 가능
- WITH ADMIN OPTION : 부여된 권한을 또다른 사용자에게 권한 부여, 권한 회수 불가능
- REVOKE : `REVOKE [권한|ROLE] FROM [사용자|ROLE|PUBLIC]`
- TO, FROM 으로 권한 부여, 회수를 구분
- COMMIT : 변경사항이 물리적인 디스크에 저장된다
- ROLLBACK : 이미 수행되었던 작업을 취소하고 원래 상태로 복구한다
- SAVEPOINT : 특정 지점을 정의하여 해당 지점부터 다시 시작할 수 있다
트랜잭션 특징 (20.1, 21.2)
- 원자성 : 트랜잭션의 연산은 모두 반영되거나 모두 반영되지 않아야 한다.
- 일관성 (무결성) : 트랜잭션을 마친 후에도 동일하게 오류가 발생하지 않아야 한다.
- 고립성 : 트랜잭션 실행 중 다른 트랜잭션의 영향을 받지 않아야 한다.
- 지속성 : 트랜잭션의 결과는 항상 유지, 보존되어야한다.
병행제어기법 (21.2)
- 로킹 : 하나의 트랜잭션에서 갱신하는 데이터를 다른 트랜잭션이 접근하지 못하도록 잠그는 행위 (고립성)
- 타임스탬프
- 낙관적 병행 제어
- 다중 버전 병행 제어
회복 (22.1)
어떤 장애 요인에도 데이터베이스의 일관성 유지에 제약이 걸렸을 때, 장애 이전의 상태로 복원하여 일관성을 유지하는 작업
- 로그를 이용한 회복 :
- 즉시갱신(Undo) - 로그를 이용해 오류내용을 취소하고 복구
- 지연갱신(Redo) - 이전으로 돌아가 실패전까지의 과정을 재실행
- 검사시점에 의한 회복
- 그림자 페이징 기법
반정규화 (20.1)
정의 : 정규화된 릴레이션의 성능향상 및 개발 운영 단순화를 위해 릴레이션을 중복, 통합,분리를 수행하는 데이터 모델링
<-> 정규화 목적 : 릴레이션의 중복 및 종속성에 의한 이상현상을 제거하기 위한 기법.
분산데이터베이스 목표
- 위치 투명성 : 데이터베이스의 실제 위치를 알 필요가 없고, 데이터베이스 논리적 명칭으로 엑세스할 수 있다.
- 중복 투명성 : 중복된 데이터 유무와 저장 위치에 대한 정보를 사용자가 알 필요가 없다
- 분할 투명성 : 전역 스키마의 분할과 관계없이 전역 질의를 여러 개의 단편 질의로 반환해주는 성질
- 장애 투명성 : 분산된 물리적 환경에서 장애가 발생해도 데이터 무결성이 보장되는 성질
- 병행 투명성 : 다수의 트랜잭션이 동시에 수행되더라도 트랜잭션의 결과는 영향을 받지 않는 성질
빅데이터 (20.1)
데이터웨어하우스 : 정보의 효율적인 분석과 신속한 의사결정을 위한 데이터베이스 환경
데이터마트 : 소규모 단일 주제에 대한 데이터웨어하우스 시스템
OLAP(Online Analytical Process) : 온라인으로 다양한 데이터 분석 정보를 실시간으로 제공하는 시스템
데이터마이닝 : 데이터웨어하우스에서 유용하고 가능성있는 정보 및 정보 패턴을 발견하는 기법
하둡 : 오픈소스 기반 분산 컴퓨팅 플랫폼, 맵리듀스 - 대용량 데이터 처리를 위한 병렬 처리 기법
'정보처리기사' 카테고리의 다른 글
[정보처리기사-실기] 5과목 핵심개념 (1) | 2023.05.25 |
---|---|
[정보처리기사-실기] 4과목 핵심개념 (0) | 2023.05.25 |
[정보처리기사-실기] 2과목 핵심개념 (1) | 2023.05.25 |
[정보처리기사-실기] 1과목 핵심개념 (1) | 2023.05.25 |
[정보처리기사-실기] 10일공부하고 시험보지마세요 (1) | 2023.05.25 |