嗨,我想用mapsidejoinstrategy类做一个mapsidejoin-in-crunch。对于内部联接,它工作正常,但是对于完全外部联接,它给出了以下错误:“join type full\u outer\u join not supported by mapsidejoinstrategy”
嗨,我想用mapsidejoinstrategy类做一个mapsidejoin-in-crunch。对于内部联接,它工作正常,但是对于完全外部联接,它给出了以下错误:“join type full\u outer\u join not supported by mapsidejoinstrategy”
1条答案
按热度按时间ioekq8ef1#
mapsidejoinstrategy无法执行右\u外\u连接,因此无法执行完全\u外\u连接。设计是不可能的。整个工作发生在Map器(没有减少阶段)。由于可以有多个Map器,因此无法确定右侧的哪个键在左侧没有匹配的键,因为单个Map器将看不到整个左侧数据。
对于完全连接,请使用defaultjoinstrategy。
我已经扩展了bloomfilterjoinstrategy来支持所有的连接类型。这里是pull request@github。