Hi,
Regarding 7. Data Sharding - could you please clarify why combination of epoch seconds and autoincrementing value is recommended solution?
If I understand well, this would result in writing into the same shard over and over again, which does not seem like a scalable approach - all but one shard would only be used at a time and writes will be limited by IO on single host. I’ve been looking around internet to find out more about using timestamp and key and it seems to be discouraged:
https://cloud.google.com/spanner/docs/whitepapers/optimizing-schema-design#anti-pattern_timestamp_ordering