문제

나는 아주 새롭다 Hadoop 그리고 나는 현재 열쇠가있는 두 가지 데이터 소스에 가입하려고 노력하고 있습니다. 간격 ([날짜/데이트 엔드] 예 :). 예를 들어:

입력 1 :

20091001-20091002    A
20091011-20091104    B
20080111-20091103    C
(...)

입력 2 :

20090902-20091003    D
20081015-20091204    E
20040011-20050101    F
(...)

Key1이 Key2와 겹치는 모든 레코드를 찾고 싶습니다. Hadoop에서 가능합니까? 구현의 예는 어디에서 찾을 수 있습니까?

감사.

도움이 되었습니까?

해결책

Biostar에 대한 해결책이 제공되었습니다. http://biostar.stackexchange.com/questions/8821

다른 팁

필요한 모든 것은 hashcode ()와 equals ()가 원하는 것을하는 핵심 클래스라고 생각합니다. A 중첩 B (예 : A.Equals (B) == True), B 중첩 C가 C, C는 A와 겹치지 않는 문제가 발생할 수 있다고 생각합니다. A 등장 () 메소드를 구현하면 귀하는 귀하입니다. 아마도 이상한 행동을 취할 것입니다.

기본적으로, 당신은 세그먼트 트리 (즉, 간격 (p1.start, p1.end)의 모든 겹치는 간격 e에 대해 p1.start 및 p1.end에 대한 찌르는 쿼리를 수행하십시오).

그러나 기본적으로, 나는 당신의 질문에 대한 정답을 모른다. 그러나 아마도 쿼리 일 수도 있습니다 "세그먼트 트리"Hadoop 당신을 시작할 것입니다.

라이센스 : CC-BY-SA ~와 함께 속성
제휴하지 않습니다 StackOverflow
scroll top