Interface SplittedUDF

All Superinterfaces:
UDF

public interface SplittedUDF extends UDF
The user of this interface has precise control over selecting indexing attributes with single value for each message that can be splitted.
Since:
0.1.0
See Also:
  • Method Details

    • getSplittedKeys

      Map<Map<String,Object>,byte[]> getSplittedKeys(Map<MetadataName,String> metadata, byte[] message)
      The purpose of this method is similar to SimpleUDF.getKeys(Map, byte[]) with following differences.

      For this method,

      • The developer should be able to deserialize the message and split it into multiple smaller messages.
      • For each smaller message, this indexing attributes should be retrieved.
      • The indexing attributes for each message will be the key of returned Map with each smaller message being its corresponding value. Each key (indexing attributes) is also represented as Map.
      • For each key Map, the constraints are same as defined for SimpleUDF.getKeys(Map, byte[]).
      Parameters:
      metadata - collection (Map) containing metadata information. Any metadata information can also be used to select one/more indexing attributes for the message. The keys of the metadata map can be found here MetadataName.
      message - message which should be splitted in smaller messages and for each smaller message, indexing attributes are supposed to be selected.

      The deserialized message can be used to retrieve any specific characteristic for indexing.

      Returns:
      the collection (Map) containing indexing attributes for splitted messages.