title: How to avoid unnecessary Firestore reads with Cache
body: <p>I have a list of trips data (Large Sets) ordered by date.</p>
  
  <p><strong>Existing Behaviour</strong></p>
  
  <p>I store all the trips data into SqlLite Db. For every new data added, I used to get a fcm notification and I synced only the new added data using last updated time concept. This way when ever an cx opens the app, he will always read the data from my DB, Hence saving <strong>read</strong> and <strong>network</strong> operations.</p>
  
  <p><strong>How could i achieve the same with Firestore?</strong></p>
  
  <p>Few problems to consider:</p>
  
  <ul>
  <li>Firestore get() always tries to get the data first from SERVER, even if i add CACHE to my query, how can i synced only the updated document</li>
  <li>In my Recyler View I want the data to be order by a field <strong>date</strong> not by lut(last-modified-time)</li>
  <li>With FireStore Snapshot Listener i can't query such a large record set.</li>
  </ul>