The batcher has an opportunity to sort potentially-slightly-unordered-data (e.g. a user logging to the same entity path from multiple threads) at basically no extra cost, saving a lot of compute on the backend (OOO ingestion is painful for the store, the main cache, the secondary caches...).
We need to extract the swap-sorting logic from the store and expose it on DataTable so everything can benefit from it with no effort.
The batcher has an opportunity to sort potentially-slightly-unordered-data (e.g. a user logging to the same entity path from multiple threads) at basically no extra cost, saving a lot of compute on the backend (OOO ingestion is painful for the store, the main cache, the secondary caches...).
We need to extract the swap-sorting logic from the store and expose it on DataTable so everything can benefit from it with no effort.