Skip to content

cmu-db/mongodb-d4

Folders and files

NameName
Last commit message
Last commit date

Latest commit

 
 
 
 
 
 
 
 
 
 
 
 
 
 
 

Repository files navigation

mongodb-d4

D4 is an automated tool for a generating distributed document database designs for applications running on MongoDB. This tool specifically targets applications running highly concurrent workloads, and thus its designs are tailored to the unique properties of large-scale, Web-based applications. It can also be used to assist in porting MySQL-based applications to MongoDB.

Using a sample workload trace from a either a document-oriented or relational database application, D4 will compute the best a database design that optimizes the throughput and latency of a document DBMS. The three design elements that D4 can select for an application are:

  • Sharding Keys
  • Indexes
  • Collection (De)normalization

For More Information: http://database.cs.brown.edu/projects/mongodb/

Dependencies

  • python-pymongo
  • python-yaml
  • python-MySQLdb (optional)

Authors

Past Contributors

Acknowledgements

This work is supported (in part) by an Amazon AWS Research Grant. Additional assistance is also provided by 10gen, Inc.