Breaking Through Scaling Barriers with Bigtable
remesh.blog
remesh.blog
The big thing to remember which is covered by this article is your only real performant option to return multiple rows for BT is range scans so your keys should be setup to support this. If you need more than 1 index you are essentially shit out of luck - hence my preference to stay with PG as long as possible, even if that means sharding to multiple servers.
Would you use chain replication or a hash ring?
Spoken as a guy whose database did not support multi row transactions and was always told that.
IIRC, Spanner relies on precise timing to make certain guarantees, which is definitely relevant to our use case. I wonder how its write performance would stack up against Postgres and Bigtable.
It doesn't really matter, I suppose I just got nerd-sniped recalling the details of Spanner's internals and their (somewhat superficial) relevance to the issues of timekeeping mentioned in the blog post :)
So it might help with inserts but would struggle with larger queries.
One of our constraints that Bigtable met for us is native GCP support. I do see Yugabyte has a GCP provider though.