Why MongoDB Never Worked Out at Etsy

jieforest發表於2012-12-28
In 2010ish, we tried to roll out a feature (Treasury) using MongoDB. It was an interesting experience. I learned quite a bit in the process. I wrote about what I was thinking at the time here. But for the most part it was an abject failure and Ryan Young wound up porting the entire thing to the MySQL shards which had come to maturity in the meantime.

Before you get too excited, the reason for the failure is probably not any of the ones you're imagining. Mainly it's this: adding another kind of production database was a huge waste of time.

If you want to make Mongo your only database, it might work out well for you. I can't personally say it will definitely work out. I know that there's plenty of talk on the internet about Mongo's running-with-scissors-as-default and lack of single-server durability and rumors about data loss or what have you, but, none of that ever affected us. Those concerns may or may not have merit, but I personally have no experience with them.

But what I can say is that if you are considering Mongo plus another database like MySQL, then in all likelihood you shouldn't do it. The benefits of being schemaless are negated by the pain you will feel sorting out:

Logging.

Monitoring.

Slow query optimization.

init scripts.

Graphing.

Replication.

Sharding strategy.

Rebalancing strategy.

Backups.

Restoration.


來自 “ ITPUB部落格 ” ,連結:http://blog.itpub.net/301743/viewspace-751817/,如需轉載,請註明出處,否則將追究法律責任。

相關文章