| 일 | 월 | 화 | 수 | 목 | 금 | 토 |
|---|---|---|---|---|---|---|
| 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 | 31 |
- sql
- 마스킹
- resnet50
- channels
- 백준
- 가상환경
- 개발일지
- 파이썬
- 프로그래머스
- 2주차
- poetry
- 알고리즘
- 미니프로젝트
- 채팅
- vscode
- Git
- 정보처리기사
- 1주차
- github
- Commpot
- WHERE절
- js
- WIL
- 프로젝트
- 정보처리기사실기
- WebSocket
- 장고
- re-id
- REDIS
- Class
- Today
- Total
개발일기
[정보처리기사 실기 이론정리9] 패키징 & 데이터베이스 본문
1. 패키징 : 개발완료된 소프트웨어를 사용자에게 전달하기 위한 형태로 패키징
2. 배포 : 최종 사용자에게 소프트웨어를 전달하는 전체 과정
3. CI (Continuous Integration) : 지속적인 통합
4. CD (Continuous Delivery & Continuous Deployment) : 지속적인 서비스 제공 혹은 지속적인 배포
5. DRM(Digital Rights Management) : 디지털 콘텐츠의 불법 사용을 제한하고, 승인된 사용자에게만 콘텐츠 사용을 허용
- 콘텐츠 제공자(Contents Provider) : 콘텐츠를 제공하는 저작권자
- 콘텐츠 분배자(Contents Distributor) : 암호화된 콘텐츠 제공
- 패키저(Packager) : 콘텐츠를 메타 데이터와 함께 배포 가능한 단위로 묶는 기능
* 메타데이터 : 콘텐츠에 관한 구조적인 데이터 - 보안 컨테이너 : 원본 콘텐츠를 안전하게 유통하기 위한 전자적 보안 장치
- DRM 컨트롤러 : 배포된 콘텐츠의 이용 권한을 통제
- 클리어링 하우스(Clearing House) : 키 관리 및 라이선스 발급 관리
6. 워터마킹(WaterMarking) : 콘텐츠에 저작권 정보를 삽입, 불법 복제 방지, 최초 저작 시점에 삽입
7. 핑커프린팅 : 불법 유통 방지, 저작권 정보와 구매자 정보 삽입, 구매 시점마다 삽입
8. 데이터베이스
- 통합 데이터 : 중복이 최소화된 데이터 모임
- 저장 데이터 : 컴퓨터가 접근 가능한 매체에 저장된 데이터
- 운영 데이터 : 조직의 목적을 위한 필수 데이터
- 공유 데이터 : 여러 응용 프로그램들이 공동으로 사용하는 데이터
9. 데이터베이스 특징
- 실시간 접근성
- 계속적 변화
- 동시 공유
- 내용에 의한 참조
- 데이터의 독립성
10. 스키마 :
- 데이터의 구조, 제약조건, 속성, 관계를 포함한 전반적인 명세를 기술
- 개체란 여러 속성의 집합으로 이루어져 있으며, 개체들 사이에는 관계가 존재
- 스키마에 명세된 정보는 데이터 사전에 저장
11. 3계층 스키마

- 외부 스키마 - 사용자 뷰 : 사용자나 응용 프로그램의 관점에서 데이터베이스의 논리적 구조 정의
- 개념 스키마 - 전체적인 뷰 : 데이터베이스의 전체적인 논리적 구조를 나타내며, 전체 조직의 데이터 요구사항을 종합적으로 반영
- 내부 스키마 - 저장 스키마 : 물리적 저장장치 관점에서 데이터베이스의 구조를 정의
12. 데이터 독립성
- 논리적 독립성 : 응용프로그램에 영향을 주지 않고 데이터베이스 논리적 구조를 변경할 수 있는 능력
- 물리적 독립성 : 응용프로그램이나 데이터베이스의 논리적 구조에 영향을 미치지 않고 데이터의 물리적 구조를 변경할 수 있는 능력
13. DBMS : 데이터베이스를 효과적으로 관리하고 조작하기 위한 전용 소프트웨어
- 계층형 : 트리 구조로 데이터 간의 관계를 표현하며, 세그먼트(레코드) 단위로 데이터 관리
- 네트워크형 : 계층형의 단점을 보완하여, 데이터 간의 다대다 관계를 가능하게 하는 망형 모델
- 관계형 : 키와 값으로 이루어진 데이터들을 행과 열로 구성된 테이블 구조로 단순화시킨 모델
- 객체지향형 : 객체지향 프로그래밍 개념에 기반하여 만든 데이터베이스 모델, 정보를 객체의 형태로 표현
- 객체 관계형 : 관계형 데이터베이스에 객체지향 개념을 도입하여 만든 데이터베이스 모델
- NoSQL : Not Only SQL 줄임말로, SQL 뿐만 아니라 다양한 특성을 지원
14. 데이터베이스 설계 단계
- 개념적 설계 : 현실 세계의 요구사항과 데이터를 추상적인 관점에서 표현, 데이터베이스의 개념적 스키마를 구성
(E-R 다이어그램) - 논리적 설계 : 자료를 컴퓨터가 처리할 수 있도록 목표 DBMS의 논리적 자료 구조로 변환
- 물리적 설계 : 특정 DBMS의 물리적 구조, 저장구조, 데이터 타입의 특징, 인덱스 등을 고려하여 설계
15. 데이터모델 : 현실 세계의 복잡한 데이터 구조를 단순화, 추상화하여 체계적으로 표현한 개념적 모형
- 계층형 데이터 모델
- 네트워크(망)형 데이터 모델
- 관계형 데이터 모델
- 객체지향형 데이터 모델
- 개념적 데이터 모델 : 현실세계의 인식을 추상적 개념으로 표현, 개체-관계(E-R) 모델
- 논리적 데이터 모델 : 개념적 모델을 컴퓨터가 처리할 수 있는 구조로 변환
- 물리적 모델 : 데이터의 실제 저장 방법과 접근 경로를 표현
16. 데이터모델 표시해야 할 요소
- 구조 : 데이터 구조 및 개체 간 관계
- 연산 : 데이터 처리 방법
- 제약조건 : 데이터의 논리적 제약조건
17. 논리적 모델링 : 개념적 설계 단계에서 도출된 개체, 속성, 관계를 구조적으로 표현하는 과정
18. 데이터 베이스 정규화 : 관계형 데이터베이스의 설계에서 데이터 중복을 최소화하기 위한 과정
19. 이상현상 : 데이터 중복으로 인해 릴레이션 조작 시 발생하는 예기치 않은 문제점
- 삽입이상 : 데이터를 삽입할 때 불필요한 데이터가 함께 삽입
- 삭제 이상 : 한 튜플을 삭제할 때 연쇄 삭제 현상으로 인해 정보 손실
- 갱신 이상 : 튜플의 속성값을 갱신할 때 일부 튜플의 정보만 갱신되어 정보에 모순이 생기는 현상
20. 함수적 종속 : 어떤 릴레이션 R의 X와 Y를 각각 속성의 부분집합이라고 가정했을 때 X의 값을 알면 Y의 값을 바로 식별할 수 있고, X의 값에 Y의 값이 달라질 때, Y는 X에 함수적 종속이라고 함, X->Y
- 완전 함수적 종속
- 부분 함수적 종속

- 이행적 함수 종속 : X->Y, Y->Z 이러한 종속 관계가 있을 경우, X->Z 성립
21. 정규화 과정 (도부이결다조)

22. 반정규화 : 데이터베이스 설계에서 정규화를 거친 후, 성능 향상이나 개발 및 운영의 편의성을 위해 의도적으로 중복을 허용하거나 데이터를 재구성하는 기법
23. 데이터베이스 이중화 : 장애에 대비하여 동일한 데이터베이스를 중복하여 관리하는 방식
- Eager 기법 : 트랜잭션 발생 시 즉시 모든 이중화 서버에 변경 사항 반영
- Lazy 기법 : 트랜잭션 완료 후 변경 사항을 트랜잭션 형태로 각 노드에 전달
- Active-Active : 모든 다중화된 장비가 활성화된상태
- Active-Stanby : 하나의 장비는 활성 상태, 다른 하나는 대기 상태
24. 데이터베이스 백업 : 중단 사태에 대비하여 데이터를 주기적으로 복사하여 보관
- 전체 백업
- 증분 백업(Incremental Backup) : 최근 전체 백업 이후 변경/추가된 데이터만 백업
- 차등 백업(Differential Backup) : 최근 전체 백업 이후 모든 변경/추가된 데이터를 백업
- 실시간 백업(RealTime Backup)
- 트랜잭션 로그 백업(Transaction Log Backup) : 실행된 SQL 문을 기록한 로그, REDO(다시 실행), UNDO(원상태로 복구) 작업을 통해 데이터베이스 복원, CHECK POINT는 트랜잭션이 디스크에 확실히 저장된 지점을 나타냄
- 합성 백업 : 기존의 전체 백업본과 여러 개의 증분 백업을 합하여 새로운 전체 백업을 만드는 작업
25. 복구 시간 목표(RTO) : 서비스가 중단된 후 서비스를 다시 복원할 때까지 허용되는 최대 시간, 서비스를 사용할 수 없는 상태로 허용되는 기간
26. 복구 시점 목표(RPO) : 마지막 백업 이후 허용되는 최대 데이터 손실 시간, 마지막 복구 시점과 서비스 중단 시점 사이에 허용되는 데이터 손실량
27. 파티셔닝 : 데이터베이스의 특정 부분(데이터)을 여러 섹션으로 분할
- 수평 분할 : 테이블의 행을 기준으로 분할
- 수직 분할 : 컬럼을 기준으로 분할
28. 샤딩(Sharding) : 거대한 데이터베이스나 시스템을 작은 조각(샤드)로 나누어 분산 저장 및 관리하는 기법
29. 분할 기준
- 범위 분할 : 파티션 키의 연속된 범위로 파티션을 정의, 파티션 키 위주로 검색이 자주 실행될 경우 유용
- 목록 분할 : 특정 파티션에 저장될 데이터에 대한 명시적 제어, 많은 SQL에서 해당 컬럼의 조건이 많이 들어오는 경우 유용
- 해시 분할 : 파티션 키 값에 해시함수를 적용하고, 거기서 반환된 값으로 파티션 매핑, 데이터가 모든 파티션에 고르게 분산되도록 DBMS 관리
- 라운드 로빈 분할 : 데이터를 균일하게 분배
- 합성 분할 : 위 기술들을 복합적으로 사용
30. 클러스터 : 자주 사용되는 테이블의 데이터를 디스크 상 동일한 위치에 저장하여 데이터 액세스 효율을 향상시키는 물리적 저장 방법
31. 인덱스 : 데이터베이스 테이블 검색 속도 향상을 위한 저장 공간 활용 자료구조
- 클러스터 인덱스 : 테이블당 1개만 허용, 해당 컬럼을 기준으로 테이블이 물리적으로 정렬, 비 클러스형 인덱스보다 속도 빠르나 데이터의 입력, 수정 삭제 시에는 느림
- 넌클러스터 인덱스 : 레코드의 원본은 정렬되지 않고, 인덱스 페이지만 정렬, 클러스터형보다 검색 속도는 더 느리지만 데이터의 입력, 수정, 삭제는 더 빠름
- 밀집 인덱스 : 데이터 레코드 각각에 대해 하나의 인덱스가 만들어짐
- 희소 인덱스 : 레코드 그룹 또는 데이터 블록에 대해 하나의 인덱스가 만들어짐
32. 뷰
- 기본 테이블에서 유도된 이름이 있는 가상 테이블
- 물리적 구현 없는 가상 테이블
- 기본 테이블/뷰 삭제 시 관련 뷰도 자동 삭제
- 생성은 'CREATE', 삭제는 'DROP'로 가능, 변경은 'ALTER'로 불가
33. 시스템 카탈로그 : 데이터베이스의 모든 데이터 개체들에 대한 정보를 저장한 시스템 테이블, 데이터 사전이라고도 함, 메타데이터라고 함
'정보처리기사 도전기' 카테고리의 다른 글
| [정보처리기사 실기 이론정리11] 병행제어 & 운영체제 (0) | 2024.07.27 |
|---|---|
| [정보처리기사 실기 이론정리10] 데이터베이스(2) & SQL (0) | 2024.07.27 |
| [정보처리기사 실기 이론정리8] 테스트 (0) | 2024.07.27 |
| [정보처리기사 실기 이론정리7] 객체 지향 설계 (0) | 2024.07.27 |
| [정보처리기사 실기 이론정리6] 인터페이스 (0) | 2024.07.27 |