Ordering of Records in Stream
<p>Here are some of the queries I have : </p>

<p>I have two different streams <code>stream1</code> and <code>stream2</code> in which the elements are in order. </p>

<p>1) Now when I do <code>keyBy</code> on each of these streams, will the order be maintained? (Since every group here will be sent to one task manager only ) 
My understanding is that the records will be in order for a group, correct me here. </p>

<p>2) After the <code>keyBy</code> on both of the streams I am doing co-group to get the matching and non-matching records. Will the order be maintained here also?, since this also works on <code>KeyedStream</code>. 
I am using <code>EventTime</code>, and <code>AscendingTimestampExtractor</code> for generating <code>timestamp</code> and <code>watermark</code>. </p>

<p>3) Now I want to perform the sequence check on the <code>matching_nonMatchingStream</code> I get from 2) using map/flatmap. 
Do I need to again perform the <code>keyBy</code> here , or if I keep in chain will the <code>matching_nonMatchingStream</code> run in same <code>TaskManager</code>? 
My understanding here is that the chain will work here, correct me , getting confused. </p>

<p>4) <code>slotSharingGroup</code> - can you please describe more about this 
according to the doc : Sets the slot sharing group of this operation. Parallel instances of operations that are in the same slot sharing group will be co-located in the same <code>TaskManager</code> slot, if possible. </p>