The story of how Wordnik changed a monolithic platform to one based on Micro Services and the implications at the data layer (MongoDB):
To address this, we made a significant architectural shift. We have split our application stack into something called Micro Services — a term that I first heard from the folks at Netflix. […] This translates to the data tier as well. We have low cost servers, and they work extremely well when they stay relatively small. Make them too big and things can go sour, quickly. So from the data tier, each service gets its own data cluster. This keeps services extremely focused, compact, and fast — there’s almost no fear that some other consumer of a shared data tier is going to perform some ridiculously slow operation which craters the runtime performance. Have you ever seen what happens when a BI tool is pointed at the runtime database? This is no different.
Original title and link: Wordnik: Migrating From a Monolythic Platform to Micro Services ( ©myNoSQL)
If you’re wondering what kind of performance and scalability requirements forced these companies to MongoDB, and then to customize it so heavily, here are some statistics:
- 15 million users;
- 8 production MongoDB clusters;
- 8 shards of user data;
- 12 shards of check-in data;
- ~250 updates per second on user database, with maximum output of 46 MBps;
- ~80 check-ins per second on check-in database, with maximum output of 45 MBps;
- up to 2,500 HTTP queries per second.
- Tens of billions of documents with more always being added;
- more than 20 million REST API calls per day;
- mapping layer supports 35,000 records per second.
- More than 1,400 MongoDB instances (although “your eyes start watering after 30,” Stevens said);
- adding new instances every day, via a custom-built self-service portal, to test, stage and host new games.
Add to these Viber Media numbers:
- 30 million plus registered mobile users
- 18 million active users talking 11 million minutes every day
I have an exclusive interview with Viber Media people queued up for the next days.
Original title and link: MongoDB in Numbers: Foursquare, Wordnik, Disney ( ©myNoSQL)
Wordnik has shared their experience running MongoDB for 12 moths and now they are also sharing a set of in-house developed tools for managing MongoDB backups:
com.wordnik.system.mongodb.SnapshotUtil: taking backups
com.wordnik.system.mongodb.RestoreUtil: operates against either mongodump files or files made with the SnapshotUtil with either uncompressed or compressed bson files. Also supports inclusion/exclusion of files
com.wordnik.system.mongodb.IncrementalBackupUtil: queries a master server’s oplog and maintains a set of files which can be replayed against a snapshot of the database
com.wordnik.system.mongodb.ReplayUtil: takes a series of files created by the IncrementalBackupUtil and replays them
com.wordnik.system.mongodb.ReplicationUtil: tool to replicate from server to server
These can be found on Wordnik ☞ GitHub project.
Original title and link: Wordnik’s MongoDB Tools (NoSQL databases © myNoSQL)