Skip to content

[7주차] 맵사이드 조인 #42

@harrisleesh

Description

@harrisleesh

맵 사이드 조인

입력 데이터에 대해 특정 가정이 가능하다면 맵사이드 조인(map-side join) 기법을 사용해 조인을 더 빠르게 수행한다.

브로드캐스트 해시 조인

작은 데이터셋과 큰 데이터셋 을 조인하는 경우

  • 작은 입력을 인메모리 해시 테이블이나 로컬 디스크에 읽기 전용 색인으로 저장하여 사용한다.

파티션 해시 조인

맵 사이드 조인의 입력을 파티셔닝한다면 해시 조인 접근법을 각 파티션에 독립적으로 적용할 수 있다.

  • 해시 테이블에 저장할 양을 줄일 수 있다.
  • 버킷 맵 조인이라고도 한다.

맵사이드 병합 조인

입력 데이터 셋이 같은 방식으로 파티셔닝됐을 뿐 아니라 같은 키를 기준으로 정렬됐다면 변형된 맵사이드 조인을 적용할 수 있다.

  • 입력 크기가 메모리에 적재 가능한지고려할 필요가 없다.
  • 수행 과정에서 오름차순으로 양쪽 입력을 읽어 키가 동일한 레코드를 맞춰 병합 연산이 가능하기 때문이다.

Metadata

Metadata

Assignees

No one assigned

    Labels

    No labels
    No labels

    Type

    No type

    Projects

    No projects

    Milestone

    No milestone

    Relationships

    None yet

    Development

    No branches or pull requests

    Issue actions