Color me skeptical, that looks like a pretty strange design to me, a database on top of a database [1].<p>[1] <a href="http://c2.com/cgi/wiki?GodTable" rel="nofollow">http://c2.com/cgi/wiki?GodTable</a>
I've been following these Uber engineering articles, and I think this is a very neat architecture. Append only + boring technology = solid stuff.<p>I'm curious to know how many shards per storage cluster they use and how this mapping is done. Is it fixed or can it change? I imagine a startup trying to use a similar setup could start with a few storage clusters, but then add more clusters as needs grow...<p>They say they use 4096 shards (presumably generated based on some part of `row_key` which is the trip id), but I'm not sure this is a generally-applicable strategy. e.g. if sharding in a social netowrk website is performed based on `user_id` then won't be able to do joins across `user_id`s.