all rows from client_id can grow infinitely compared to a single node when hashing by client_id
Re: [pingcap/tidb] Performance comparison between TiDb and Vitess(#7160)
Because of the range-sharding, many joins/inserts/updates/deletes become cross-node, which is slow/inneficient. I'm assuming all the fast stuff that Vitess does are when querying/joining data that resides on the same node (so partitioned by same key). This works the same with CitusDB for example.
Assuming TiDB will introduce hash partitioning, it should be able to do the same. Currently, range-sharding offers better scalability (all rows from client_id can grow infinitely compared to a single node when hashing by client_id).
—