Upload
mongodb
View
2.889
Download
2
Tags:
Embed Size (px)
Citation preview
MongoDB NYC 2013
A MongoDB use case at Telefonica Digital
Pablo Enfedaque @pablitoev56
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
Título del capítulo Máximo 3 líneas
01 Telefonica Digital. Who we are?
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
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
Título del capítulo Máximo 3 líneas
02 Personalisation Server. Why?
7 Telefonica PDI
Personalisation Server. Why?
• We were storing profile data of millions of customers. However…
01
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
9 Telefonica PDI
Personalisation Server. Why?
• We were storing profile data of millions of customers. However…
Customers data was neither shared nor usable
01
10 Telefonica PDI
Personalisation Server. Why? 01
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
Título del capítulo Máximo 3 líneas
03 Oracle-based solution
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
14 Telefonica PDI
After three iterations
• Three successful deployments, but…
§ Oversized storage requirements
§ Performance below expectations
Still not scaling enough
04
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
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
Título del capítulo Máximo 3 líneas
04 MongoDB-based solution
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
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
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
21 Telefonica PDI
MongoDB-based solution 01
Título del capítulo Máximo 3 líneas
05 Conclusions
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
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
Q & A
Thanks!
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