Export or edit this event...

Portland Ruby Brigade monthly meeting

Robert Half Technology, 2nd Floor Conference Room
222 SW Columbia St
Portland, OR 97201, US (map)
Public WiFi

The building entrance is on SW Columbia between 2nd and 3rd Avenue. The door may be locked, but there's a guard on site that will let you in and you can use the doorbell to summon them. Ask the guard nicely to let you up to the 2nd floor conference room, the elevators require them to use a key card. When you get to the 2nd floor, just follow the "pdxruby" signs. This meeting space is kindly offered to us by Robert Half Technology, a company that provides IT staffing services and positions: http://www.roberthalftechnology.com/

Website

Description

10gen: Intro to MongoDB and Schema Design

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.

ABOUT THE GROUP: The Portland Ruby Brigade is a user group for Ruby programmers in the Portland Oregon area. Join other developers for presentations and discussions about Ruby, libraries, tools and techniques. The group usually meets on the first Tuesday of the month, "Ruby Tuesday".

Share

Tags