10gen

Creators of MongoDB

Download MongoDB

Download the latest stable releases, or new nightly builds.

Download MongoDB

From our Customers

With foursquare's growing popularity, we were fast approaching the point where it would no longer be feasible to store user checkins on a single physical machine. MongoDB's auto-sharding capabilities enabled us to easily transition to a multi-node cluster that will enable us to continue to grow for the foreseeable future.

Harry Heymann Engineering Lead, foursquare

More from Customers

Schema Design: Data as Documents

Alvin Richards, Senior Director of Service and Enterprise Engineering

alvin10gen     @jonnyeight

Video

One of the challenges that comes with moving to MongoDB is figuring how to best model your data. While most developers have internalized the rules of thumb for designing schemas for RDBMSs, these rules don't always apply to MongoDB. The simple fact that documents can represent rich, schema-free data structures means that we have a lot of viable alternatives to the standard, normalized, relational model. Not only that, MongoDB has several unique features, such as atomic updates and indexed array keys, that greatly influence the kinds of schemas that make sense. Understandably, this begets good questions: Are foreign keys permissible, or is it better to represent one-to-many relations withing a single document? Are join tables necessary, or is there another technique for building out many-to-many relationships? What level of denormalization is appropriate? How do my data modeling decisions affect the efficiency of updates and queries? In this session, we'll answer these questions and more, provide a number of data modeling rules of thumb, and discuss the tradeoffs of various data modeling strategies.

Share This