다음 <정보>를 이용하여 아래에 주어진 <관계 대수&g… | [7급 국가직 데이터베이스론] 25년 1회차 기출문제 상세 페이지
1[7급 국가직 데이터베이스론] 25년 1회차
다음 <정보>를 이용하여 아래에 주어진 <관계 대수>를 세미조인(semijoin) 방식으로 처리하고자 할 때, 가장 먼저 수행되는 연산은? (단, 속성 이름의 괄호 안 숫자는 바이트 크기를 나타낸다)<정 보>
○ ‘EMP’와 ‘DEPT’ 테이블이 분산 저장되어 있다.
○ 사이트 1에 ‘EMP’ 테이블이 저장되며, SSN(10), NAME(30), DNO(5), ADDR(55)의 속성값으로 구성된 100 바이트 크기의 투플 10,000 개를 포함한다.
○ 사이트 2에 ‘DEPT’ 테이블이 저장되며, DNUM(5), DNAME(25), MGRSSN(10), DATE(10)의 속성값으로 구성된 50 바이트 크기의 투플 100 개를 포함한다.<관계 대수>
1
2
3
4
해설
가장 먼저 수행되는 연산은 DEPT의 조인 속성 DNUM 투영이다.
세미조인은 작은 릴레이션의 조인 속성만 상대 사이트로 보내 조인에 참여할 투플만 골라낸다.
DEPT는 투플 100개로 작아 DNUM 투영은 5바이트×100개=500바이트에 불과하므로, 이를 사이트 1로 보내 EMP 중 조인되는 투플만 걸러낸다.
- EMP의 DNO 투영: 투플 10,000개인 큰 EMP 쪽에서 시작하면 작은 DEPT로 큰 EMP를 줄이는 세미조인의 이점을 살릴 수 없다.
- EMP의 DNO·NAME 투영: 조인 속성 외의 NAME까지 보내 전송량이 커지므로 세미조인의 첫 단계가 아니다.
- DEPT의 DNUM·DNAME 투영: DNAME은 조인 판정에 필요 없어 첫 전송 대상에 넣을 이유가 없다.
오류나 개정된 내용이 보이면 알려주세요