While not directly supported it is possible to use a composite key to identify processing units. However, because the batch streaming infrastructure itself encodes all the IDs for a chunk into a string (using a tab separator) care must be taken. The encoding used to turn the composite key into a string can not include tab characters or the elements separated by the tab will be passed separately into the processRecord method. It is also worth noting that the implementation of the processRecord method will need to decode the BatchProcessingID into the sub-elements of the composite key.