정보시스템 감리 기출해설/데이터베이스 해설

(제 22회) 데이터베이스 / (55)~(56) 해설

아이티신비 2024. 11. 25. 09:00

55. SQL 뷰(view)에 대한 설명 중 옳은 것으로만 짝지어진 것은?

 

 
가. 뷰에 대한 투플의 삽입은 시스템에 의해 거부 될 수 있다.
나. 원본과의 불일치 문제로 인해 뷰 생성 시 GROUP BY절을 사용할 수 없다.
다. 집계(aggregation)함수에 의해 생성된 뷰의 경우 일반적으로 갱신을 허용하지 않는다.
라. 실체화된 뷰(materialized view)를 생성할 경우에는 CREATE VIEW 구문을 사용하고, 그렇지 않은 뷰를 생성할 경우에는 CREATE TABLE 구문을 사용한다.

 

① 가, 나 ② 가, 다

③ 나, 라 ④ 다, 라

 

▣ 뷰에서 변경 연산이 허용되지 않는 경우

① 뷰의 열이 상수나 산술 연산자 또는 함수가 사용된 산술 식으로 만들어질 경우

② 집계 함수(COUNT, SUM, AVG, MAX, MIN)가 관련되어 정의된 경우

③ DISTING, GRUOP BY, HAVING 이 사용되어 정의된 경우

④ 두 개 이상의 테이블이 관련되어 정의된 경우

⑤ 변경할 수 없는 뷰를 기초로 정의된 경우

 

● 문제풀이

가. 뷰에 대한 투플의 삽입은 시스템에 의해 거부 될 수 있다.

나. 원본과의 불일치 문제로 인해 뷰 생성 시 GROUP BY절을 사용할 수 없다.

→ 사용할 수 있다. 단, 집계함수가 사용되는 경우는 변경 연산이 허용되지 않는다.

다. 집계(aggregation)함수에 의해 생성된 뷰의 경우 일반적으로 갱신을 허용하지 않는다.

라. 실체화된 뷰(materialized view)를 생성할 경우에는 CREATE VIEW 구문을 사용하고, 그렇지 않은 뷰를 생성할 경우에는 CREATE TABLE 구문을 사용한다.

→ 실체화된 뷰는 CREATE MATERIALIZED VIEW, 그렇지 않는 뷰는 CREATE VIEW 문장을 사용한다.

 

정답 : ②

 

 

56. 조인 연산은 질의 처리에서 가장 많은 비용이 소요되는 연산 중 하나이다. 다음 중 조인 연산을 구현하는 방법과 가장 거리가 것은?

 

① k-최근접 이웃 조인(k-nearest neighbor join)

② 중첩 루프 조인(nested loop join)

③ 정렬-합병 조인(sort-merge join)

④ 분할-해시 조인(partition-hash join)

 

▣ 처리 유형에 따른 조인의 분류

1) Nested - Loop 조인

  • 기준 테이블의 처리 범위를 하나씩 엑서스 하면서 그 추출된 값을 상수 조건으로 이용하여 참조 테이블을 조인하는 방법

 

2) Sort-Merge 조인

  • 양쪽 테이블의 처리범위를 각자 엑세스하여 정렬한 결과를 차례로 스켄하면서 연결조건이 일치하는 행동을 병합하여 추출하는 방식
특징
Nested - Loop
Sort - Merge
처리범위
기준 테이블에 종속됨
각자에 주어진 조건에 의해 독립적
테이블 연결수단
연결 조건에 의해 수행되므로 연결 조건의 인데스 유무에 따라 수행 속도가 좌우됨
연결 조건에 의해 정렬된 후에 순차 비교하므로 인덱스 사용 안함
처리우선 순위
엑세스 테이블의 우선순위가 매우 중요
처리 우선순위 중요하지 않음

 

3) Hash 조인

  • 적은 테이블의 조인 컬럼을 해시 함수 적용하여 해시 테이블 생성
  • 동일 버킷인 경우 결과 리턴, 대량 데이터일 때 좋은 효과(Equi 조인)

 

정답 : ①

 

 



 

공감과 댓글은 아이티신비에게 큰 힘이 됩니다.

블로그 글이 유용하다면 블로그를 구독해주세요.♥