Determining when to partition

There are some cases in which you will need to partition your data and others in which you will want to partition your data. You are required to partition for unordered data when a data object at a certain place in the data stream can be any number of types and each type has different definitions. Choose to partition for convenience, either to simplify mapping rules or to put additional logic into your data's definition.