Upgrade to Pro — share decks privately, control downloads, hide ads and more …

MongoDB in Enterprise 2.0 (Enterprise Social So...

mongodb
January 03, 2012

MongoDB in Enterprise 2.0 (Enterprise Social Software) - Biren Gandhi & Raghurama Bhat, Cisco

Consumer social web is seeing lot of momentum and traction around various NoSQL solutions, including MongoDB. Enterprise world is not lagging too much behind this time around. A number of Enterprise Social Software (aka ESS or E2.0) systems are embracing MongoDB, node.js and other alternative stacks as a replacement for their traditional J2EE architectures. Biren Gandhi, an early architect at Facebook and Zynga will share his recent experiences with MongoDB as part of Cisco's Enterprise Collaboration Software - Quad.

mongodb

January 03, 2012
Tweet

More Decks by mongodb

Other Decks in Technology

Transcript

  1. Business Process Social Communication Content / Documents Conferencing Voice /

    Video Email IM Portals Content Development Intranets Content Management Customer Care Business Applications Workflow Vertical Applications Communities Profiles Networks Teams You
  2. Business Process Social Communication Content / Documents Open Standards &

    APIs to Integrate with Business Systems Built-In Integration to Real-Time Communications Built-In Integration with Content / Document Management Systems Out-of-Box Enterprise Social Software for the Desktop & Mobile Devices
  3. Content Management Social Tagging People, Communities, Information, Search Click to:

    Call, IM, Meet Personal Dashboard Directory Profile Blogs, Wikis, Forums Video Community Team Space UC-Enabled Browser Policy and Security Micro-Blogging A Comprehensive Collaboration Platform
  4. !   Quad Challenges •  Complex SQL Queries against normalized

    schema •  No horizontal scaling •  Difficult to evolve schema and migrate data from release to release !   Quad Specific Benefits of MongoDB •  Right balance between complex relational and pure key value •  Complex query capabilities, powerful shell (JavaScript) •  Atomic updates with modifiers •  Indexing (Unique, Compound, Geo) •  Aggregation and lightweight map reduce •  Capped collections •  Sharding and Replica Sets •  Very active open-source project with vibrant community and 10gen consulting/support for commercial deployments
  5. !   Technology Beliefs (and Religions) •  What? No ACID

    compliance? !   Adoption •  Management challenges (Have an Oracle DBA, but not MongoDB) !   Domain Expertise •  Where do I find MongoDB programmers? ! Interop •  How would it work with my other gazillion systems? !   Reporting & Analytics •  Do we have to build it from scratch?
  6. •  Security •  Consumer Domain – feature first, Enterprise Domain

    – guarantee first !   Deployment •  How can we patch/upgrade systems deployed on customers’ premises? Especially with fast moving technologies? !   Consistency/DR Problems •  Presence of multiple storage entities and keeping them in sync ! Misc Challenges •  How do I package it for on-premise deployments and as a shared service for the cloud? •  How do I scale the deployment dynamically from small (~500) users to the Fortune 50 (> 300k)? Both up & down? •  Customer comfort
  7. ! MongoDB Strengths •  Intuitive mapping – from domain model

    to JSON documents •  Built-in sharding/replication – easy to use •  Frequency of writes – and many times elements inside documents •  Elimination of Caching Layer to certain extent ! MongoDB in Cisco Quad •  Activity Feed •  Like •  Post Statistics •  Recommendations •  Metrics/Analytics
  8. !   End user numbers with Post Statistics panel • 

    Screenshot of Post Metrics •  RDBMS & MongoDB queries with their run times •  Plain denormalization doesn’t always work (list/set type data example) !   Activity Stream (common problem) solution •  Flow/Input Channels to mongoDB •  Schema of Activity Streams
  9. !   Quad Future •  need support for active/active setup

    •  Migrate more write-heavy features to MongoDB •  Analytics •  Mutli-storage consistency and DR solutions ! MongoDB Asks •  Lucene Integration •  Efficient Map-Reduce •  Multi-master Replication