Morning with MongoDB Milan Welcome! Wednesday, 24 October 12
Morning with MongoDB Bill Brooks - 10gen Norberto Leite - 10gen Rafaelle Cigni - Byte-Code And our guests... thank you Wednesday, 24 October 12
Agenda 09.00 - 09.30 - Reception and Breakfast 09.30 - 09.50 - Introduction to NoSQL / MongoDB 09.50 - 10:20 - MongoDB Fundamentals and Common Use Cases 10:20 - 11:00 - Case Studies: Leroy Merlin, Wellnet 11:00 - 11:20 - Coffee Break 11:20 - 11:40 - NoSQL / MongoDB in Italian market 11:40 - 12:10 - TechCorner: Nicola Iarocci 12:10 - 12:30 - MongoDB Roadmap and Futures 12:30 - 12:45 - 10gen Support and Services 12:45 - 13:00 - Roundtable Q&A 13:00 - 13:30 - Networking Wednesday, 24 October 12
Database Evolution: Store Everything in RDBMs Wednesday, 24 October 12
Specialized RDBMS for OLAP/BI Wednesday, 24 October 12
MongoDB = Operational 'Big Data' Wednesday, 24 October 12
Increasing Complexity & Cost Decreasing Productivity Wednesday, 24 October 12
Forcing Affecting Traditional RDBMS Agile Development • Iterative • Continuous Data Volume, Type & Use • Trillions of records • 100’s of millions of queries per second • Real-Time Analytics • Unstructured / semi- structured New Hardware Architectures • Commodity servers • Cloud Computing • Horizontal Scaling Wednesday, 24 October 12
NoSQL Really Means... non-relational, next-generation operational datastores and databases Wednesday, 24 October 12
NoSQL Really Means... non-relational, next-generation operational datastores and databases ... focus on the “non-relational” bit. Wednesday, 24 October 12
NOSQL Categories Key-Value Column Document Graph Redis Cassandra MongoDB Neo4j Wednesday, 24 October 12
Which one is the best? Wednesday, 24 October 12
Which one is the best? Wednesday, 24 October 12
Which one should I use for my use case? Wednesday, 24 October 12
• memcached scalability & performance •key/value • RDBMS depth of functionality Wednesday, 24 October 12
Why use MongoDB? • Easy to start • Open source • Drivers in every major language • Easy to develop • Schemaless document model • Flexible query language • Secondary indexes • Easy to scale • Built in sharding • Asynchronous replication Wednesday, 24 October 12
Terminology RDBMS MongoDB Table Collection Row(s) JSON Document Index Index Join Embedding & Linking Partition Shard Partition Key Shard Key Wednesday, 24 October 12
RDBMS view of the data Wednesday, 24 October 12
Application view of the data { _id : ObjectId("4c4ba5c0672c685e5e8aabf3"), author : "Hergé", date : "Sat Jul 24 2010 19:47:11 GMT-0700 (PDT)", text : "Destination Moon", tags : [ "comic", "adventure" ], comments : [ { author : "Kyle", date : "Sat Jul 24 2010 20:51:03 GMT-0700 (PDT)", text : "great book" } ], comments_count: 1 } Wednesday, 24 October 12
Schemas in MongoDB Design documents that simply map to your application post = {author: "Hergé", date: new Date(), text: "Destination Moon", tags: ["comic", "adventure"]} > db.posts.save(post) Wednesday, 24 October 12
What MongoDB solves Wednesday, 24 October 12

Intro to NoSQL and MongoDB

  • 1.
    Morning with MongoDB Milan Welcome! Wednesday, 24 October 12
  • 2.
    Morning with MongoDB Bill Brooks - 10gen Norberto Leite - 10gen Rafaelle Cigni - Byte-Code And our guests... thank you Wednesday, 24 October 12
  • 3.
    Agenda 09.00 - 09.30 - Reception and Breakfast 09.30 - 09.50 - Introduction to NoSQL / MongoDB 09.50 - 10:20 - MongoDB Fundamentals and Common Use Cases 10:20 - 11:00 - Case Studies: Leroy Merlin, Wellnet 11:00 - 11:20 - Coffee Break 11:20 - 11:40 - NoSQL / MongoDB in Italian market 11:40 - 12:10 - TechCorner: Nicola Iarocci 12:10 - 12:30 - MongoDB Roadmap and Futures 12:30 - 12:45 - 10gen Support and Services 12:45 - 13:00 - Roundtable Q&A 13:00 - 13:30 - Networking Wednesday, 24 October 12
  • 4.
    Database Evolution: Store Everything in RDBMs Wednesday, 24 October 12
  • 5.
    Specialized RDBMS forOLAP/BI Wednesday, 24 October 12
  • 6.
    MongoDB = Operational'Big Data' Wednesday, 24 October 12
  • 7.
    Increasing Complexity &Cost Decreasing Productivity Wednesday, 24 October 12
  • 8.
    Forcing Affecting Traditional RDBMS Agile Development • Iterative • Continuous Data Volume, Type & Use • Trillions of records • 100’s of millions of queries per second • Real-Time Analytics • Unstructured / semi- structured New Hardware Architectures • Commodity servers • Cloud Computing • Horizontal Scaling Wednesday, 24 October 12
  • 9.
    NoSQL Really Means... non-relational, next-generation operational datastores and databases Wednesday, 24 October 12
  • 10.
    NoSQL Really Means... non-relational, next-generation operational datastores and databases ... focus on the “non-relational” bit. Wednesday, 24 October 12
  • 11.
    NOSQL Categories Key-Value Column Document Graph Redis Cassandra MongoDB Neo4j Wednesday, 24 October 12
  • 12.
    Which one isthe best? Wednesday, 24 October 12
  • 13.
    Which one isthe best? Wednesday, 24 October 12
  • 14.
    Which one shouldI use for my use case? Wednesday, 24 October 12
  • 15.
    • memcached scalability & performance •key/value • RDBMS depth of functionality Wednesday, 24 October 12
  • 16.
    Why use MongoDB? • Easy to start • Open source • Drivers in every major language • Easy to develop • Schemaless document model • Flexible query language • Secondary indexes • Easy to scale • Built in sharding • Asynchronous replication Wednesday, 24 October 12
  • 17.
    Terminology RDBMS MongoDB Table Collection Row(s) JSON Document Index Index Join Embedding & Linking Partition Shard Partition Key Shard Key Wednesday, 24 October 12
  • 18.
    RDBMS view ofthe data Wednesday, 24 October 12
  • 19.
    Application view ofthe data { _id : ObjectId("4c4ba5c0672c685e5e8aabf3"), author : "Hergé", date : "Sat Jul 24 2010 19:47:11 GMT-0700 (PDT)", text : "Destination Moon", tags : [ "comic", "adventure" ], comments : [ { author : "Kyle", date : "Sat Jul 24 2010 20:51:03 GMT-0700 (PDT)", text : "great book" } ], comments_count: 1 } Wednesday, 24 October 12
  • 20.
    Schemas in MongoDB Design documents that simply map to your application post = {author: "Hergé", date: new Date(), text: "Destination Moon", tags: ["comic", "adventure"]} > db.posts.save(post) Wednesday, 24 October 12
  • 21.