Hadoop:interval和JOIN

我是Hadoop的新手,我正在尝试加入两个数据源,其中键是间隔 (比如[date-begin / date-end])。 例如:

输入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不重叠A.如果你实现这样的equals()方法,你会可能会有奇怪的行为。

基本上,您希望执行类似于在段树上查询查询的操作(即,对于间隔(p1.start,p1.end)的所有重叠间隔E,执行针对p1.start和p1.end的插入查询)。

但基本上,不,我不知道你的问题的正确答案。 但也许查询“Segment tree”hadoop会让你入门。