-
SQLD 자격검증실전문제 146번 문제<자격증>/[SQLD] 2023. 3. 19. 17:10728x90
146. 다음 중 Join 기법에 대한 설명으로 가장 적절한 것은?
1 NL Join은 선택도가 낮은(결과 행의 수가 적은) 테이블이 선행 테이블로 선택되는 것이 일반적으로 유리하다.
2 Sort Merge Join은 동등 Join(Equi Join)에서만 사용할 수 있으므로 제약이 존재한다.
3 Hash Join은 결과 행의 수가 큰 테이블을 선행 테이블로 사용하는 것이 성능에 유리하다.
4 Hash Join은 Sort Merge Join보다 항상 우수한 성능을 보장한다.답: 1
선택도가 낮은 테이블이 선행 테이블로 선택되면 NL Join은 좀 더 효과적으로 수행될 수 있습니다. 이는 대부분의 데이터베이스 시스템에서 성능상의 이점을 가져오기 때문입니다. 그러나 이것이 항상 최상의 전략은 아닐 수 있으며 데이터의 분포와 쿼리에 따라 적절한 조인 전략을 선택해야 합니다. 다른 선택지들도 각각의 상황에 따라 더 나은 결과를 보장할 수 있습니다.
- NL Join NL Join은 Nested Loop Join의 약자로, 중첩 반복문을 이용한 Join 기법입니다. NL Join은 가장 간단하고 직관적인 Join 기법으로, 각 행을 하나씩 비교해가면서 조건을 만족하는 경우 Join을 수행합니다. 선택도가 낮은(결과 행의 수가 적은) 테이블을 선행 테이블로 선택하는 것이 일반적으로 유리합니다. NL Join은 작은 테이블과 작은 범위의 Join에 적합합니다.
- Sort Merge Join Sort Merge Join은 각 테이블을 미리 정렬한 다음, 정렬된 결과를 병합해 Join을 수행하는 기법입니다. 정렬 단계에서 비교 및 정렬이 이루어지므로 선행 작업으로 인해 Overhead가 발생할 수 있습니다. Sort Merge Join은 동등 Join(Equi Join)에서만 사용할 수 있으므로 제약이 존재합니다.
- Hash Join Hash Join은 각 테이블에서 지정된 Join 조건을 만족하는 행들을 해시 함수를 이용해 메모리에 해시 테이블을 생성한 후, Join을 수행하는 기법입니다. 결과 행의 수가 큰 테이블을 선행 테이블로 사용하는 것이 성능에 유리합니다. Hash Join은 메모리에 해시 테이블을 생성해야 하므로, 메모리가 충분하지 않은 경우에는 디스크 기반으로 동작할 수 있습니다.
- Merge Join vs Hash Join Sort Merge Join과 Hash Join은 각각의 장단점이 있으며, 어떤 Join 기법이 더 우수한지는 상황에 따라 달라집니다. 일반적으로 Sort Merge Join은 메모리에 데이터를 로드하고 정렬하는 과정에서 Overhead가 발생하지만, 대용량 데이터를 처리할 때 메모리 효율이 높습니다. 반면, Hash Join은 해시 테이블을 생성하는 과정에서 Overhead가 발생하지만, 메모리에 맞게 해시 테이블을 조정하면 대용량 데이터 처리에도 뛰어난 성능을 보입니다.
728x90728x90'<자격증> > [SQLD]' 카테고리의 다른 글
SQLD 자격검증실전문제 116번 문제 (0) 2023.03.19 SQLD 자격검증실전문제 117번 문제 (0) 2023.03.19 SQLD 자격검증실전문제 143번 문제 (0) 2023.03.19 SQLD 자격검증실전문제 138번 문제 (0) 2023.03.19 SQLD 자격검증실전문제 130번 문제 (0) 2023.03.19