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

A MongoDB use case at Telefonica Digital

Pablo E
July 05, 2013

A MongoDB use case at Telefonica Digital

A success story migrating from Oracle to MongoDB. The same than https://speakerdeck.com/pablito56/from-oracle-to-mongodb and https://speakerdeck.com/pablito56/from-oracle-to-mongodb-real-uses-cases-fib-upc but more business oriented and less technical details.

Pablo E

July 05, 2013
Tweet

More Decks by Pablo E

Other Decks in Technology

Transcript

  1. 2 Telefonica Digital Executive summary •  We built the Personalisation

    Server using Oracle 11g •  We had performance issues with Oracle •  We built a new version with MongoDB in 4 months half the team •  We obtained great benefits §  Performance boost (one order of magnitude), predictable scaling §  Low time to market and better extensibility §  New opportunities for other products and services 01
  2. 4 Telefonica Digital Who we are •  Telefonica §  Fourth

    largest telecommunications company in the world §  Operations in Europe (7 countries), USA and Latam (15 countries) §  315M of customers with Movistar, O2, Vivo, Terra… •  Telefonica Digital §  “Beyond connectivity”, division for web and mobile services & contents §  Jajah, Tokbox, Terra, TU, OWD / Firefox OS… 01
  3. 5 Telefonica Digital Who we are •  Telefonica Product Development

    and Innovation unit •  Around 70 different on going projects §  1 year, 6 months, 3 months or even 10 days projects 01
  4. 7 Telefonica PDI Personalisation Server. Why? •  We were storing

    profile data of millions of customers. However… 01
  5. 8 Telefonica PDI Personalisation Server. Why? •  We were storing

    profile data of millions of customers. However… §  Each service had its own internal storage §  Customers profile was scattered across a variety of different DBs §  In some cases stored in a DWH, others in isolated DBs §  No homogeneous interfaces or data structure §  Repeated or out-dated information 01
  6. 9 Telefonica PDI Personalisation Server. Why? •  We were storing

    profile data of millions of customers. However… Customers data was neither shared nor usable 01
  7. 11 Telefonica PDI Personalisation Server. Why? •  Personalisation Server as

    master customer’s data storage §  Operational storage, real-time access §  Flexible customer’s profile structure, classified in services §  Data sharing across all services §  Massive off-line batch interface §  Authentication and fine grained authorization §  Fault tolerance and high availability §  Inexpensive solution, low hardware requirements 01
  8. 13 Telefonica PDI Oracle-based solution •  20 people involved (7

    developers) in 14 – 15 months •  Oracle 11g Standard or Enterprise •  Three instances deployed •  Three iterations, focusing on performance enhancements 01
  9. 14 Telefonica PDI After three iterations •  Three successful deployments,

    but… §  Oversized storage requirements §  Performance below expectations Still not scaling enough 04
  10. 15 Telefonica PDI The fourth deployment arrived •  Everything went

    fine until one month before deploying •  New performance requirements appeared §  40% more data to be stored and processed §  Reload the whole DWH (22M customers) daily in small time window •  Servers already purchased 01
  11. 16 Telefonica PDI Huge improvement needed •  Reduce storage to

    a half •  Enhance performance up to 3 times •  Only 4 months with a reduced team Fourth iteration with Oracle or move to a new technology? 01
  12. 18 Telefonica PDI Why MongoDB •  Seemed to be mature

    enough •  Several features matching our requirements §  Dynamic schema §  Fault tolerance and high availability §  Official drivers §  Production support §  Reduced costs •  We did some tests and performed very well 06
  13. 19 Telefonica Digital MongoDB-based solution •  We built a new

    version of the PS with MongoDB 2.0 •  Half the team (3 – 4 developers) •  One fourth of the time (4 months) •  We even enhanced some features or added new ones 01
  14. 20 Telefonica Digital MongoDB performance •  Performance boost of more

    than one order of magnitude •  Lower storage requirements (one third) •  Simple, extensible and maintainable schema 01 MONGODB ORACLE
  15. 23 Telefonica PDI Lessons learned •  Awesome performance boost with

    MongoDB •  Really fast and agile development •  New technology, understand how to use it •  Beat the fear of the unknown. It was mature enough for us •  Great ecosystem & tools, great support •  Lots of new solutions and use cases 06
  16. 24 Telefonica PDI Results for Telefonica •  Better products performance

    •  Faster and easier development •  Increased customer satisfaction •  Decreased costs, increased revenue •  Opportunities for new products and services §  Firefox OS push notifications §  Telefonica Machine-to-machine solutions 06
  17. How MongoDB Helps Telefonica Digital, Pablo Enfedaque Next Sessions at

    2:50 5th Floor: West Side Ballroom 3&4: Data Modeling Examples from the Real World West Side Ballroom 1&2: Growing Up MongoDB Juilliard Complex: Business Track: MetLife Leapfrogs Insurance Industry with MongoDB-Powered Big Data Application Lyceum Complex: Ask the Experts: MongoDB Monitoring and Backup Service Session 7th Floor: Empire Complex: How We Fixed Our MongoDB Problems SoHo Complex: High Performance, High Scale MongoDB on AWS: A Hands On Guide