Tony Tam from Wordnik describes their migration from MySQL to MongoDB. So why migrate from MySQL? Inserts on their MyISAMTables had approached 10 seconds an insert. They continued to produce workarounds. However, this led to an increase in system babysitting. Nothing than a fragile system to make those weeknights and weekends extra fun, right?
What are the results?
- Moved 5 Billion rows from MySQL to MongoDB
- Sustained 100,000 inserts/second
- Migration tool was the bottleneck (CPU Bound)
- Wordnik now reads from MongoDB very fast
- Read + create java objects @ 250,000/second
What about the advice of going live with MongoDB?
- Choose your use case carefully if migrating incrementally
- Scary no matter what
- Test your perf monitoring system first!
- Use your DAOs from migration
- Turn on MongoDB on one server, monitor, tune (rollback, repeat)
- Full switch over when comfortable
As a follow-up Wordnik discussed in a post that they are now hosting 9 billion documents. Read more at B is for Billion