본문 바로가기
T.I.L(Today I learned)/CS

220905 정보처리기사 실기 D-41

by Amy97 2022. 9. 5.
728x90

모의고사 14회

 

다차원 데이터베이스 관련 용어

MOLAP
(Multi-dimensional On-line Analytical Processing)
다차원 데이터베이스를 중심으로 다차원적인 분석을 하도록 만들어진 OLAP 구현방식의 시스템으로 데이터베이스가 물리적으로 여러 개의 차원을 갖고, 이 공간에 데이터를 저장하여 사용자가 각각의 차원 축들에 대한 값을 지정하여 필요한 데이터를 검색할 수 있는 특징이 있음

대용량의 시스템에 적합하지 않은 반면에 셀 단위의 데이터 비교가 가능하다는 장점이 있음
HMOLAP
(Hybrid On-line Analytical Processing)
데이터를 관계형 데이터베이스와 다차원 데이터베이스 둘 모두에 저장하고, 요구되는 처리 형태에 가장 잘 맞는 것을 사용하는 방식의 시스템으로 ROLAP의 대용량 데이터 저장능력과 
OLAP의 뛰어난 처리능력과 결합하기 위해 개발됨
OLAP
(On-line Analytical Processing)
기업의 고객 데이터 및 판매 데이터를 축적한 데이터베이스를 다차원적으로 분석하고 시각화하는 시스템
ROLAP
(Relational On-line Analytical Processing)
기업의 축적된 데이터베이스를 다차원적으로 분석하는 OLAP 시스템 형태의 하나로 서버 측의 관계형 데이터베이스에 저장된 데이터를 직접 검색/집계하고, 그 결과를 클라이언트에서 다차원 데이터로 구성하고 시각화하는 시스템

 

스턱스넷(Stuxnet)

독일 지멘스사의 원격 감시 제어 시스템의 소프트웨어에 침투하여 시스템을 마비하게 하는 악성코드 

원자력 발전소와 송/배전망, 화학공장, 송유/가스관과 같은 산업 기반 시설에 사용되는 제어시스템에 침투하여 오동작을 유도하는 명령 코드를 입력해서 시스템을 마비시킨다

 

오픈플로우(Openflow)

네트워크 장치의 컨트롤 플레인(Control Plane)과 데이터 플레인(Data Plane) 간의 연계 및 제어를 담당하는 개방형 표준 인터페이스

 

고가용성 유형

Hot Standby 상시 대기 방식 가동시스템과 백업시스템으로 구성되어서 평상 시에는 대기 상태를 유지하다가 장애 시 전환하는 방식
Mutual Take-Over 상호 인수 2개 시스템이 각각의 고유한 가동 업무 서비스 수행하다가 한 서버 장애 발생 시 상대 시스템의 자원을 Fail over하여 동시에 2개의 업무를 수행하는 방식
Concurrent Access 동시적 접근 여러 개의 시스템이 동시에 업무를 나누어 병렬처리하는 방식으로 HA에 참여하는 시스템 전체가 Active한 상태로 업무를 수행하여 시스템 장애 시에도 다른 시스템으로 Fail over하지 않고 가용성을 보장하는 방식

 

WHERE절 조건에서는 비교, 범위, 집합, 패턴, NULL, 복합조건이 있고, 범위를 찾기 위해서는 BETWEEN 사용

컬럼 BETWEEN 값1 AND 값 2 : 값1보다 크거나 같고, 값2보다 작거나 같은 데이터 조회

= 컬럼 >= 값1 AND <= 값2

 

Python

for i in range(0, 3) : 

0은 시작값, 3은 끝값 + 1

 

TCL(Transaction Control Language; 트랜잭션 제어 언어) 명령어

[커를체] 커밋 / 롤백 / 체크포인트

커밋 COMMIT 트랜잭션을 메모리에 영구적으로 저장하는 명령어
롤백 ROLLBACK 트랜잭션 내역을 저장 무효화시키는 명령어
체크포인트 CHECKPOINT ROLLBACK을 위한 시점을 지정하는 명령어

 

Bad code 사례

외계인 코드 Alien code 아주 오래되거나 참고문서 또는 개발자가 없어 유지보수 작업이 아주 어려운 코드
스파게티 코드 Spaghetti code 스파게티 코드는 컴퓨터 프로그램의 소스 코드가 복잡하게 얽힌 모습을 스파게티의 면발에 비유한 표현
작동은 정상적으로 하지만 사람이 코드를 읽으면서 그 코드의 작동을 파악하기는 어려운 코드
알 수 없는 변수명 변수나 메서드에 대한 이름 정의를 알 수 없는 코드
로직 중복 동일한 처리 로직이 중복되게 작성된 코드

 

맥케이브의 순환복잡도 측정 방법

구분 항목 설명
계산식 V(G)=E-N+2 복잡도 V(G)는 노드(N) 수와 간선(E) 수로 계산
V(G)=P+1 복잡도 V(G)는 조건 분기문(P)의 수로 계산
그래프 구성 O
Node
프로세싱 태스크 표현

Edge
태스크 간의 제어 흐름 표현

 

UPDATE는 데이터의 내용을 변경할 때 사용하는 명령어

UPDATE 테이블명 SET 속성명 = 데이터 WHERE 조건; UPDATE 명령문은 WHERE절을 통해 어떤 조건이 만족할 경우에만 특정 컬럼의 값을 수정하는 용도로 자주 사용됨

e.g)  UPDATE 직원 SET 부서 = '경영' WHERE 이름 = 'James';

 

Java

Enhanced for 문 for (타입 변수이름 : 배열이나컬렉션이름) {
    배열의 길이만큼 반복적으로 실행하고자 하는 명령문;
}

 

EAI 구축 유형

[포허메하] 포인트 투 포인트 / 허브 앤 스포크 / 메시지 버스 / 하이브리드

포인트 투 포인트 Point-to-Point 가장 기초적인 애플리케이션 통합 방법으로 1:1 단순 통합 방법
허브 앤 스포크 Hub & Spoke 단일한 접점의 허브 시스템을 통하여 데이터를 전송하는 중앙 집중식 방식
허브 장애 시 전체 장애 발생
메시지 버스 Message Bus 애플리케이션 사이 미들웨어(버스)를 두어 연계하는 미들웨어 통합 방식
뛰어난 확장성과 대용량 데이터 처리 가능
하이브리드 Hybrid 그룹 내부는 허브 앤 스포크 방식을 사용하고, 그룹 간에는 메시지 버스 방식을 사용하는 통합 방식

 

페르소나(Persona) 

잠재적 사용자의 다양한 목적과 관찰된 행동 패턴을 응집시켜 놓은 가상의 사용자

 

사용자 요구사항 도출 세부 활동

페르소나 정의 잠재적 사용자의 다양한 목적과 관찰된 행동 패턴을 응집시켜 놓은 가상의 사용자를 정의
콘셉트 모델 정의 여러가지 추상적인 콘셉트들 사이의 관계를 보여주는 다이어그램을 정의
사용자 요구사항 정의 리서치 및 페르소나 결과물을 토대로 요구사항을 도출하고 우선순위를 정함
UI 컨셉션 정리된 요구사항을 구체화하는 단계로 화면 디자인 단계 전에 대표 화면 설계를 진행하는 단계

 

기본 경로 커버리지 테스트 
= 경로 커버리지 테스트(Base Path Coverage)
화이트 박스 테스트 유형 중 하나로 수행 가능한 모든 경로를 테스트하는 기법
비교 테스트 블랙박스 테스트 유형 중 하나로 여러 버전의 프로그램에 같은 입력값을 넣어서 동일한 결과 데이터가 나오는지 비교해 보는 테스트 기법

 

CUBE는 결합 가능한 모든 값에 대해 다차원 집계를 생성하는 그룹 함수

연산이 많이 시스템에 부담을 준다

CUBE 함수 문법

SELECT 컬럼1, 컬럼2, ..., 집계 함수
    FROM 테이블명
[WHERE ...]
GROUP BY [컬럼 ...] CUBE (컬럼명 a, ...)
[HAVING ...]
[ORDER BY ...]
ROLLUP은 소계, 중간 집계를 나타내 주지만, CUBE는 결합 가능한 모든 값에 대해 다차원 집계 생성
CUBE는 세분화된 소계가 구해짐

 

ROLLUP(학년, 반)
*11회 15번(60쪽)
1학년, 2학년일 때 각각 나올 수 있는 모든 경우
CUBE(학년, 반)
*14회 16번(72쪽)
반과 학년으로 나올 수 있는 모든 경우
GROUPING SETS(학년, 반)
*15회 10번(76쪽)
학년, 반 별로 따로 결과 도출

 

대칭 키 알고리즘

SEED 1999년 국내 한국인터넷진흥원(KISA)이 개발한 블록 암호화 알고리즘으로 128bit 비밀키로부터 생성된 16개의 64bit 라운드 키를 사용하여 총 16회의 라운드를 거쳐 128bit의 평문 블록을 128bit 암호문 블록으로 암호화하여 출력하는 방식
AES
(Advanced Encryption Standard)
2001년 미국 표준 기술 연구소(NIST)에서 발표한 블록 암호화 알고리즘으로 블록 크기는 128bit이며 키 길이에 따라 128bit, 192bit, 256bit로 분류되고 라운드 수는 10, 12, 14 라운드로 분류되며 한 라운드는 SubBytes, ShiftRows, MixColumns, AddRoundKey의 4가지 계층으로 구성

 

클래스 다이어그램 구성요소

클래스 Class 공통의 속성, 연산(메서드), 관계 의미를 공유하는 객체들의 집합
속성 Attribute 클래스의 구조적 특성에 이름을 붙인 것으로 특성에 해당하는 인스턴스가 보유할 수 있는 값의 범위를 기술
연산(Operation), 메서드(Method) 이름, 타입, 매개변수들과 연관된 행위를 호출하는 데 요구되는 제약사항들을 명시하는 클래스의 행위적 특징
객체에 요청하여 행동에 영향을 줄 수 있는 서비스
접근 제어자
Access Modifier
클래스에 접근할 수 있는 정도를 표현

- : 클래스 내부 접근만 허용(private)
+ : 클래스 외부 접근을 허용(public)
# : 동일 패키지/파생 클래스에서 접근 가능(protected)
~ : 동일 패키지 클래스에서 접근 가능(default)

 

프로세스 스레드는 CPU에 의해 처리되는 사용자 프로그램, 시스템 프로그램, 즉 실행 중인 프로그램
스레드 프로세스보다 가벼운, 독립적으로 수행되는 순차적인 제어의 흐름이며 실행 단위임
728x90