모의고사 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에 의해 처리되는 사용자 프로그램, 시스템 프로그램, 즉 실행 중인 프로그램 |
스레드 | 프로세스보다 가벼운, 독립적으로 수행되는 순차적인 제어의 흐름이며 실행 단위임 |
'T.I.L(Today I learned) > CS' 카테고리의 다른 글
220909 정보처리기사 실기 D-37 (0) | 2022.09.13 |
---|---|
220906 정보처리기사 실기 D-40 (0) | 2022.09.06 |
220904 정보처리기사 실기 D-42 (0) | 2022.09.04 |
220830 정보처리기사 실기 D-47 (0) | 2022.08.30 |
220828 정보처리기사 실기 D-49 (0) | 2022.08.28 |
댓글