holds a DataSegment with the temporary file path where the corresponding index zip file is currently stored
and the final path where the index zip file should eventually be moved to.
Determines appropriate ShardSpecs for a job by determining whether or not partitioning is necessary, and if so,
choosing the best dimension that satisfies the criteria:
SegmentInputRow serves as a marker that these InputRow instances have already been combined
and they contain the columns as they show up in the segment after ingestion, not what you would see in raw
data.