title: Dataflow Sliding Window vs Global window with trigger usecase?
body: <p>I am designing a basket abandoning system for an Ecommerce company. The system will send a message to a user based on the below rules:</p>
  
  <ul>
  <li>There is no interaction by the user on the site for 30 minutes.</li>
  <li>Has added more than $50 worth of products to the basket.</li>
  <li>Has not yet completed a transaction.</li>
  </ul>
  
  <p>I use Google Cloud Dataflow to process the data and decide if a message should be sent. I have couple of options in below:</p>
  
  <ol>
  <li>Use a Sliding window with a duration of 30 minutes.</li>
  <li>A global window with a time based trigger with a delay of 30 minutes.</li>
  </ol>
  
  <p>I think Sliding Window might work here. But my question is, can there be a solution based on using a global window with a processing time based trigger and a delay for this usecase?
  As far as i understand the triggers based on Apache Beam documentation =>
  Triggers allow Beam to emit early results, before a given window is closed. For example, emitting after a certain amount of time elapses, or after a certain number of elements arrives.
  Triggers allow processing late data by triggering after the event time watermark passes the end of the window.</p>
  
  <p>So, for my use case and as per the above trigger concepts, i don't think the trigger can be triggered after a set delay for each and every user (It is mentioned in above -  can emit only after a certain number of elements it is mentioned above, but not sure if that could be 1). Can you confirm?</p>