This data store works as follows:
The StoreWriter struct maintains state to put more data in the store. It keeps track of the index and data file it’s currently working on so in the common case it can just append data. When it rolls over to a new shard, it will recreate itself.
Convenient function to read the first sample at timestamp or after timestamp in direction. Prefer directly using StoreCursor for sequential reads