Is it surprising that Pinterest is on MySQL? Has Postgres finally usurped the position of default DB for startups?
Sharding Pinterest: How we scaled our MySQL fleet
21–30 of 87 posts
Re: Sharding Pinterest: How we scaled our MySQL fleet
#22Re: Sharding Pinterest: How we scaled our MySQL fleet
#23Re: Sharding Pinterest: How we scaled our MySQL fleet
#24Nice article and good explanations. But I still wonder why some people store blobs in a database rather then simple files on a file-system!?
For "small" blobs, say 1MB blobs: http://research.microsoft.com/pubs/64525/tr-2006-45.pdf
Re: Sharding Pinterest: How we scaled our MySQL fleet
#25This looks like a big hack to compensate for using the wrong tool. Cassandra would have been a better solution IMO. With Cassandra, you can set replication factors, speed up the writes, and automatically shard the data without having to manage your own "mapping tables".
Re: Sharding Pinterest: How we scaled our MySQL fleet
#26This looks like a big hack to compensate for using the wrong tool. Cassandra would have been a better solution IMO. With Cassandra, you can set replication factors, speed up the writes, and automatically shard the data without having to manage your own "mapping tables".
>Support asking for N number of Pins in a board in a deterministic order (such as reverse creation time or user specified ordering). Same for Pinner to likes, Pinner to Pins, etc.
This can be a pain to model in Cassandra. It would require denormalizing for every key you wanted to order on, and it generally makes updating data a pain.
Re: Sharding Pinterest: How we scaled our MySQL fleet
#27It seems mysql (and hopefully postgresql sometime soon) with custom sharding logic in the app layer still hits the sweet spot for scaling to the order of 100M users. With some thoughts going into designing an appropriate data model and sharding logic, certain join queries can be delegated to the databases too.
Hi, at Zalando, we are scaling all of our core businesses with PostgreSQL. Depending on your dataset, it can be fairly easy to shard your data for a horizontal scale-out (think of independent customer datasets). We have lots of databases that we scale horizontally to much bigger numbers. But, we also developed several tools that makes working with shards mostly transparent. Did not find a better source but one way we…
Re: Sharding Pinterest: How we scaled our MySQL fleet
#28Is this the guy that's going to reddit?
Re: Sharding Pinterest: How we scaled our MySQL fleet
#29I know nothing about scaling databases but this reminds of Amazon's Dynamo DB object store but without the consistent hashing trick .
Re: Sharding Pinterest: How we scaled our MySQL fleet
#30This looks like a big hack to compensate for using the wrong tool. Cassandra would have been a better solution IMO. With Cassandra, you can set replication factors, speed up the writes, and automatically shard the data without having to manage your own "mapping tables".
Even today I'm not sure I'd recommend Cassandra for his use case. A stated requirement he needed was: > Support asking for N number of Pins in a board in a deterministic order (such as reverse creation time or user specified ordering). Same for Pinner to likes, Pinner to Pins, etc. This can be a pain to model in Cassandra. It would require denormalizing for every key you wanted to order on, and it generally makes upd…