public class BagLeftOuterJoin extends BagJoin
The format for invocation is BagLeftOuterJoin(bag, 'key',....). This UDF expects that all bags are non-null and that there is a corresponding key for each bag. The key that is expected is the alias of the key inside of the preceding bag.
Example:
define BagLeftOuterJoin datafu.pig.bags.BagLeftOuterJoin();
-- describe data:
-- data: {bag1: {(key1: chararray,value1: chararray)},bag2: {(key2: chararray,value2: int)}}
bag_joined = FOREACH data GENERATE BagLeftOuterJoin(bag1, 'key1', bag2, 'key2') as joined;
-- describe bag_joined:
-- bag_joined: {joined: {(bag1::key1: chararray, bag1::value1: chararray, bag2::key2: chararray, bag2::value2: int)}}
BagJoin.JoinType| Constructor and Description |
|---|
BagLeftOuterJoin() |
exec, getOutputSchemagetBag, getBoolean, getDouble, getDouble, getFieldAliases, getFloat, getFloat, getInteger, getInteger, getLong, getLong, getObject, getPosition, getPosition, getPrefixedAliasName, getString, getString, outputSchemagetContextProperties, getInstanceName, getInstanceProperties, setUDFContextSignatureallowCompileTimeCalculation, finish, getArgToFuncMapping, getCacheFiles, getInputSchema, getLogger, getPigLogger, getReporter, getReturnType, getSchemaName, getSchemaType, getShipFiles, isAsynchronous, progress, setInputSchema, setPigLogger, setReporter, warn