2013-04-25 1 views
0

저는 Hadoop과 협력하여 가장 좋은 시나리오 인 두 개의 데이터 세트로 일부 interection 함수를 만들려고합니다. 하나를 메모리에로드 한 다음 다른 데이터 세트와 맵 함수에서 교차시킬 수 있지만 데이터 세트가 RAM 메모리에 비해 너무 큰 경우 솔루션이 아니며 사용자의 생각은 무엇입니까?두 개의 데이터 세트로 Hadoop 작업하기


감사 답변을, 나는 최선의 해결책 무엇을 보러 이러한 노력하겠습니다.

답변

0

그것은 하둡 API 주위 플랫폼의 다른 가족에 비해 MapRed에 교차로를 기동하기 힘든 설정합니다. 누군가가 이미 하이브 언급 (당신은 SQL 배경이있는 경우 교차로를 할 아주 쉽게),하지만 당신은 또한 고려할 수 :

  • PIG
  • Cascading

      (특히 CoGroup 메모리는 관심과 HashJoin 경우가 아닌 경우)
  • 0

    분산 캐시는 작은 데이터 집합에 적합하며 메모리에 캐시 할 수 있습니다. 데이터가 큰 경우 언급 한 것처럼 분산 캐시는 옵션이 아닙니다.

    Hadoop 프레임 워크는 큰 데이터 세트를 정렬 할 수 있지만 단계 수를 따라야 할 수 있으며 입력 데이터 세트를 조인하기 전에 정렬해야한다는 요구 사항 중 하나가 있습니다. 이를 위해 Apache Hive를 활용할 수 있습니다. 하이브가 배제되어있는 경우,이 링크에서 언급 된 단계는 용량이 큰 데이터를 시작하는 데 도움이 될 것입니다

    Configure Map Side join for multiple mappers in Hadoop Map/Reduce

    관련 문제