Proud to be Polyglot - Riviera Dev 2015

Tugdual Grall
Tugdual GrallTechnical Evangelist at MapR
© 2014 MapR Technologies ‹#›© 2014 MapR Technologies
Proud to be Polyglot!
Tugdual Grall
@tgrall
June 11, 2015
© 2015 MapR Technologies ‹#›@tgrall
Modern Applications
• Modern Applications Must
• Manage any type of data
• Scale
• Be fault tolerant
• Adapt to change
© 2015 MapR Technologies ‹#›@tgrall
Current Architecture
• Mono-Technology
• Single “language/architecture”
• Single Database : RDBMS
• One size fits all approach
JSP/JSF
Services
Messaging
JTA
DAO/JPA
© 2015 MapR Technologies ‹#›@tgrall
Is it good for me?
• Many Files
• XML, Sources, Configuration, …
• Does Hibernate/JPA is good for all?
• Impedance mismatch
• Need to scale
• From 0 to 50 millions users in 6 weeks
• 1Tb of data each day
• How easy is to add new features?
• Changing code, updating data structure, …
• And all this for yesterday !
© 2014 MapR Technologies ‹#›@tgrall
One size does NOT fit all!
© 2014 MapR Technologies ‹#›@tgrall
Let’s look at our data…
6
© 2014 MapR Technologies ‹#›
Big Data
© 2014 MapR Technologies ‹#›
Big Users
http://www.theconnectivist.com/ & Cisco
© 2015 MapR Technologies ‹#›@tgrall
. . .
App Server
RDBMS
Application
Scale out
Add more “Web” servers
RDBMS
Scale Up
Get bigger server
Stay up!…. and Scale
© 2015 MapR Technologies ‹#›@tgrall
Scaling out RDBMS
• Run many RDBMS Servers
• Data could be partitioned
• Done by the application code
• Caching Layer
. . .
App Server
. . .
Memcached
. . .
MySQL
© 2015 MapR Technologies ‹#›@tgrall
NoSQL to Scale Out!
. . .
NoSQL
App Server
. . .
Application
Scale out
Add more “Web” servers
NoSQL
Scale Out
Add more servers
© 2015 MapR Technologies ‹#›@tgrall
Operational vs Analytics Databases
Warehouse,AnalyticsApplications, Interactions
© 2015 MapR Technologies ‹#›@tgrall
Polyglot Persistence
Big Data/Analysis NoSQL RDBMS
• Log Capture
• Recommendations
• Predictions
• Ad Campaign
• Products
• User Profiles
• Game Actions
• Sessions
• Shopping Cart
• Financial Data
• Reporting
© 2015 MapR Technologies ‹#›@tgrall
© 2015 MapR Technologies ‹#›@tgrall
Data Service Layer
• Wrap data call in Services
– loosely coupled
. . .
App Server
© 2015 MapR Technologies ‹#›@tgrall
Use Case : Personalization
WebSite / Application
Personalization Database
Data Processing
Logs
Application
Data
© 2015 MapR Technologies ‹#›@tgrall
Use Case : Mobile / API
PIM Database
• Legacy Application
• Product Information
NoSQL
• REST API
• Product Data
• Additional Metadata
© 2014 MapR Technologies ‹#›
Now What?
Now What?
© 2015 MapR Technologies ‹#›@tgrall
Why multiple languages?
• Sometimes we have no choice
• HTML/CSS/JavaScript + Server Side
• Mobile Native Applications
• Java/.Net are slow movers
• Java EE 5.0 is still mainstream (2006!!)
• Many languages and frameworks
• Scala, Clojure, Groovy, Dart, Go, Ruby, Python, F#, Erlang,
Node.js, Rails, Play!, Grails, ...
© 2015 MapR Technologies ‹#›@tgrall
Examples
• Realtime interaction with WebSockets :
• Wait for Java EE 7 to supported by your IT?
• Hack your app server and application with Continuation ?
• Use Node.js and Socket.io ?
• Data Collection and Treatment?
• Find a library?
• Create your library?
• Use Java 8 and Lambdas?
• Use Scala?
© 2015 MapR Technologies ‹#›@tgrall
Examples
• Simple CRUD Application
• Use the JavaEE stack with JPA and JSF?
• Use Spring ?
• Use tools like Play!, Grails, Rails, MEAN ?
© 2015 MapR Technologies ‹#›@tgrall
How to chose?
• Maturity/Supportability
• Features Set
• Learning Curve
• Productivity
© 2015 MapR Technologies ‹#›@tgrall
Use Case : Second Screen Experience
. . .
Node.js + Socket IO
Play! Application
Python Scripts
© 2015 MapR Technologies ‹#›@tgrall
Use Case : Recommendation
WebSite / Application
Machine Learning / Recommendation
Data Processing
UserActivity
Application
Data
© 2014 MapR Technologies ‹#›@tgrall
Demonstration
© 2015 MapR Technologies ‹#›@tgrall
Conclusion
• Use the good tool for the good task
• Do not try to “hack” something when you have a simpler
solution
• Think about your users first... so deliver and get feedback
• Learning is part of our job !
• And this will help you and your project
• What about maintenance?
• Do you think it is easier to maintain complex old code?
© 2014 MapR Technologies ‹#›
Questions
© 2014 MapR Technologies ‹#›© 2014 MapR Technologies
Proud to be Polyglot!
Tugdual Grall
@tgrall
June 11, 2015
1 of 28

Recommended

Lambda Architecture: The Best Way to Build Scalable and Reliable Applications! by
Lambda Architecture: The Best Way to Build Scalable and Reliable Applications!Lambda Architecture: The Best Way to Build Scalable and Reliable Applications!
Lambda Architecture: The Best Way to Build Scalable and Reliable Applications!Tugdual Grall
1.8K views51 slides
Big Data Journey by
Big Data JourneyBig Data Journey
Big Data JourneyTugdual Grall
844 views41 slides
Lambda architecture with Spark by
Lambda architecture with SparkLambda architecture with Spark
Lambda architecture with SparkVincent GALOPIN
1.3K views17 slides
Pulsar: Real-time Analytics at Scale with Kafka, Kylin and Druid by
Pulsar: Real-time Analytics at Scale with Kafka, Kylin and DruidPulsar: Real-time Analytics at Scale with Kafka, Kylin and Druid
Pulsar: Real-time Analytics at Scale with Kafka, Kylin and DruidTony Ng
6.3K views34 slides
Zeus: Uber’s Highly Scalable and Distributed Shuffle as a Service by
Zeus: Uber’s Highly Scalable and Distributed Shuffle as a ServiceZeus: Uber’s Highly Scalable and Distributed Shuffle as a Service
Zeus: Uber’s Highly Scalable and Distributed Shuffle as a ServiceDatabricks
1.7K views43 slides
IEEE International Conference on Data Engineering 2015 by
IEEE International Conference on Data Engineering 2015IEEE International Conference on Data Engineering 2015
IEEE International Conference on Data Engineering 2015Yousun Jeong
363 views15 slides

More Related Content

What's hot

Stsg17 speaker yousunjeong by
Stsg17 speaker yousunjeongStsg17 speaker yousunjeong
Stsg17 speaker yousunjeongYousun Jeong
2.4K views27 slides
Yahoo - Moving beyond running 100% of Apache Pig jobs on Apache Tez by
Yahoo - Moving beyond running 100% of Apache Pig jobs on Apache TezYahoo - Moving beyond running 100% of Apache Pig jobs on Apache Tez
Yahoo - Moving beyond running 100% of Apache Pig jobs on Apache TezDataWorks Summit
429 views48 slides
Real Time and Big Data – It’s About Time by
Real Time and Big Data – It’s About TimeReal Time and Big Data – It’s About Time
Real Time and Big Data – It’s About TimeMapR Technologies
1.9K views17 slides
Lambda architecture by
Lambda architectureLambda architecture
Lambda architectureSzilveszter Molnár
1.2K views32 slides
Implementing the Lambda Architecture efficiently with Apache Spark by
Implementing the Lambda Architecture efficiently with Apache SparkImplementing the Lambda Architecture efficiently with Apache Spark
Implementing the Lambda Architecture efficiently with Apache SparkDataWorks Summit
10K views51 slides
Overview of stinger interactive query for hive by
Overview of stinger   interactive query for hiveOverview of stinger   interactive query for hive
Overview of stinger interactive query for hiveDavid Kaiser
1.6K views23 slides

What's hot(20)

Stsg17 speaker yousunjeong by Yousun Jeong
Stsg17 speaker yousunjeongStsg17 speaker yousunjeong
Stsg17 speaker yousunjeong
Yousun Jeong2.4K views
Yahoo - Moving beyond running 100% of Apache Pig jobs on Apache Tez by DataWorks Summit
Yahoo - Moving beyond running 100% of Apache Pig jobs on Apache TezYahoo - Moving beyond running 100% of Apache Pig jobs on Apache Tez
Yahoo - Moving beyond running 100% of Apache Pig jobs on Apache Tez
DataWorks Summit429 views
Real Time and Big Data – It’s About Time by MapR Technologies
Real Time and Big Data – It’s About TimeReal Time and Big Data – It’s About Time
Real Time and Big Data – It’s About Time
MapR Technologies1.9K views
Implementing the Lambda Architecture efficiently with Apache Spark by DataWorks Summit
Implementing the Lambda Architecture efficiently with Apache SparkImplementing the Lambda Architecture efficiently with Apache Spark
Implementing the Lambda Architecture efficiently with Apache Spark
DataWorks Summit10K views
Overview of stinger interactive query for hive by David Kaiser
Overview of stinger   interactive query for hiveOverview of stinger   interactive query for hive
Overview of stinger interactive query for hive
David Kaiser1.6K views
Learnings Using Spark Streaming and DataFrames for Walmart Search: Spark Summ... by Spark Summit
Learnings Using Spark Streaming and DataFrames for Walmart Search: Spark Summ...Learnings Using Spark Streaming and DataFrames for Walmart Search: Spark Summ...
Learnings Using Spark Streaming and DataFrames for Walmart Search: Spark Summ...
Spark Summit1.5K views
Geospatial Analytics at Scale with Deep Learning and Apache Spark with Tim hu... by Databricks
Geospatial Analytics at Scale with Deep Learning and Apache Spark with Tim hu...Geospatial Analytics at Scale with Deep Learning and Apache Spark with Tim hu...
Geospatial Analytics at Scale with Deep Learning and Apache Spark with Tim hu...
Databricks929 views
MapR-DB – The First In-Hadoop Document Database by MapR Technologies
MapR-DB – The First In-Hadoop Document DatabaseMapR-DB – The First In-Hadoop Document Database
MapR-DB – The First In-Hadoop Document Database
MapR Technologies2.4K views
Real Time Interactive Queries IN HADOOP: Big Data Warehousing Meetup by Caserta
Real Time Interactive Queries IN HADOOP: Big Data Warehousing MeetupReal Time Interactive Queries IN HADOOP: Big Data Warehousing Meetup
Real Time Interactive Queries IN HADOOP: Big Data Warehousing Meetup
Caserta 7.4K views
SDM (Standardized Data Management) - A Dynamic Adaptive Ingestion Frameworks ... by DataWorks Summit
SDM (Standardized Data Management) - A Dynamic Adaptive Ingestion Frameworks ...SDM (Standardized Data Management) - A Dynamic Adaptive Ingestion Frameworks ...
SDM (Standardized Data Management) - A Dynamic Adaptive Ingestion Frameworks ...
DataWorks Summit1.1K views
The Azure Cognitive Services on Spark: Clusters with Embedded Intelligent Ser... by Databricks
The Azure Cognitive Services on Spark: Clusters with Embedded Intelligent Ser...The Azure Cognitive Services on Spark: Clusters with Embedded Intelligent Ser...
The Azure Cognitive Services on Spark: Clusters with Embedded Intelligent Ser...
Databricks903 views
Unlocking Your Hadoop Data with Apache Spark and CDH5 by SAP Concur
Unlocking Your Hadoop Data with Apache Spark and CDH5Unlocking Your Hadoop Data with Apache Spark and CDH5
Unlocking Your Hadoop Data with Apache Spark and CDH5
SAP Concur4.6K views
Operationalizing Big Data Pipelines At Scale by Databricks
Operationalizing Big Data Pipelines At ScaleOperationalizing Big Data Pipelines At Scale
Operationalizing Big Data Pipelines At Scale
Databricks586 views
Tugdual Grall - Real World Use Cases: Hadoop and NoSQL in Production by Codemotion
Tugdual Grall - Real World Use Cases: Hadoop and NoSQL in ProductionTugdual Grall - Real World Use Cases: Hadoop and NoSQL in Production
Tugdual Grall - Real World Use Cases: Hadoop and NoSQL in Production
Codemotion828 views
End-to-End Data Pipelines with Apache Spark by Burak Yavuz
End-to-End Data Pipelines with Apache SparkEnd-to-End Data Pipelines with Apache Spark
End-to-End Data Pipelines with Apache Spark
Burak Yavuz597 views
Big Telco - Yousun Jeong by Spark Summit
Big Telco - Yousun JeongBig Telco - Yousun Jeong
Big Telco - Yousun Jeong
Spark Summit4.3K views
AWS Customer Presentation - VMIX AWS Experience by Amazon Web Services
AWS Customer Presentation - VMIX AWS ExperienceAWS Customer Presentation - VMIX AWS Experience
AWS Customer Presentation - VMIX AWS Experience
Amazon Web Services1.5K views

Similar to Proud to be Polyglot - Riviera Dev 2015

Proud to be polyglot by
Proud to be polyglotProud to be polyglot
Proud to be polyglotTugdual Grall
963 views30 slides
IoT and Big Data - Iot Asia 2014 by
IoT and Big Data - Iot Asia 2014IoT and Big Data - Iot Asia 2014
IoT and Big Data - Iot Asia 2014John Berns
13.8K views49 slides
Self-Service BI for big data applications using Apache Drill (Big Data Amster... by
Self-Service BI for big data applications using Apache Drill (Big Data Amster...Self-Service BI for big data applications using Apache Drill (Big Data Amster...
Self-Service BI for big data applications using Apache Drill (Big Data Amster...Dataconomy Media
1.5K views24 slides
Self-Service BI for big data applications using Apache Drill (Big Data Amster... by
Self-Service BI for big data applications using Apache Drill (Big Data Amster...Self-Service BI for big data applications using Apache Drill (Big Data Amster...
Self-Service BI for big data applications using Apache Drill (Big Data Amster...Mats Uddenfeldt
238 views24 slides
PyData: The Next Generation by
PyData: The Next GenerationPyData: The Next Generation
PyData: The Next GenerationWes McKinney
22.2K views31 slides
Big Data Pipeline for Analytics at Scale @ FIT CVUT 2014 by
Big Data Pipeline for Analytics at Scale @ FIT CVUT 2014Big Data Pipeline for Analytics at Scale @ FIT CVUT 2014
Big Data Pipeline for Analytics at Scale @ FIT CVUT 2014Jaroslav Gergic
3K views23 slides

Similar to Proud to be Polyglot - Riviera Dev 2015(20)

IoT and Big Data - Iot Asia 2014 by John Berns
IoT and Big Data - Iot Asia 2014IoT and Big Data - Iot Asia 2014
IoT and Big Data - Iot Asia 2014
John Berns13.8K views
Self-Service BI for big data applications using Apache Drill (Big Data Amster... by Dataconomy Media
Self-Service BI for big data applications using Apache Drill (Big Data Amster...Self-Service BI for big data applications using Apache Drill (Big Data Amster...
Self-Service BI for big data applications using Apache Drill (Big Data Amster...
Dataconomy Media1.5K views
Self-Service BI for big data applications using Apache Drill (Big Data Amster... by Mats Uddenfeldt
Self-Service BI for big data applications using Apache Drill (Big Data Amster...Self-Service BI for big data applications using Apache Drill (Big Data Amster...
Self-Service BI for big data applications using Apache Drill (Big Data Amster...
Mats Uddenfeldt238 views
PyData: The Next Generation by Wes McKinney
PyData: The Next GenerationPyData: The Next Generation
PyData: The Next Generation
Wes McKinney22.2K views
Big Data Pipeline for Analytics at Scale @ FIT CVUT 2014 by Jaroslav Gergic
Big Data Pipeline for Analytics at Scale @ FIT CVUT 2014Big Data Pipeline for Analytics at Scale @ FIT CVUT 2014
Big Data Pipeline for Analytics at Scale @ FIT CVUT 2014
Jaroslav Gergic3K views
AGIT 2015 - Hans Viehmann: "Big Data and Smart Cities" by jstrobl
AGIT 2015  - Hans Viehmann: "Big Data and Smart Cities"AGIT 2015  - Hans Viehmann: "Big Data and Smart Cities"
AGIT 2015 - Hans Viehmann: "Big Data and Smart Cities"
jstrobl1.3K views
Knowledge Graph for Machine Learning and Data Science by Cambridge Semantics
Knowledge Graph for Machine Learning and Data ScienceKnowledge Graph for Machine Learning and Data Science
Knowledge Graph for Machine Learning and Data Science
Cloud expo june 2013: Building a Real Time Analytics Platform on Big Data in ... by Sanjay Sharma
Cloud expo june 2013: Building a Real Time Analytics Platform on Big Data in ...Cloud expo june 2013: Building a Real Time Analytics Platform on Big Data in ...
Cloud expo june 2013: Building a Real Time Analytics Platform on Big Data in ...
Sanjay Sharma3.9K views
Migrating from Oracle to Postgres by EDB
Migrating from Oracle to PostgresMigrating from Oracle to Postgres
Migrating from Oracle to Postgres
EDB4.8K views
PyData: The Next Generation | Data Day Texas 2015 by Cloudera, Inc.
PyData: The Next Generation | Data Day Texas 2015PyData: The Next Generation | Data Day Texas 2015
PyData: The Next Generation | Data Day Texas 2015
Cloudera, Inc.1.8K views
Using Familiar BI Tools and Hadoop to Analyze Enterprise Networks by DataWorks Summit
Using Familiar BI Tools and Hadoop to Analyze Enterprise NetworksUsing Familiar BI Tools and Hadoop to Analyze Enterprise Networks
Using Familiar BI Tools and Hadoop to Analyze Enterprise Networks
DataWorks Summit743 views
Using Familiar BI Tools and Hadoop to Analyze Enterprise Networks by MapR Technologies
Using Familiar BI Tools and Hadoop to Analyze Enterprise NetworksUsing Familiar BI Tools and Hadoop to Analyze Enterprise Networks
Using Familiar BI Tools and Hadoop to Analyze Enterprise Networks
MapR Technologies1.5K views
Whither the Hadoop Developer Experience, June Hadoop Meetup, Nitin Motgi by Felicia Haggarty
Whither the Hadoop Developer Experience, June Hadoop Meetup, Nitin MotgiWhither the Hadoop Developer Experience, June Hadoop Meetup, Nitin Motgi
Whither the Hadoop Developer Experience, June Hadoop Meetup, Nitin Motgi
Felicia Haggarty349 views
Big Data Day LA 2016/ Big Data Track - Apply R in Enterprise Applications, Lo... by Data Con LA
Big Data Day LA 2016/ Big Data Track - Apply R in Enterprise Applications, Lo...Big Data Day LA 2016/ Big Data Track - Apply R in Enterprise Applications, Lo...
Big Data Day LA 2016/ Big Data Track - Apply R in Enterprise Applications, Lo...
Data Con LA355 views
3 Benefits of Multi-Temperature Data Management for Data Analytics by MapR Technologies
3 Benefits of Multi-Temperature Data Management for Data Analytics3 Benefits of Multi-Temperature Data Management for Data Analytics
3 Benefits of Multi-Temperature Data Management for Data Analytics
MapR Technologies1.4K views

More from Tugdual Grall

Introduction to Streaming with Apache Flink by
Introduction to Streaming with Apache FlinkIntroduction to Streaming with Apache Flink
Introduction to Streaming with Apache FlinkTugdual Grall
731 views58 slides
Introduction to Streaming with Apache Flink by
Introduction to Streaming with Apache FlinkIntroduction to Streaming with Apache Flink
Introduction to Streaming with Apache FlinkTugdual Grall
336 views56 slides
Fast Cars, Big Data - How Streaming Can Help Formula 1 by
Fast Cars, Big Data - How Streaming Can Help Formula 1Fast Cars, Big Data - How Streaming Can Help Formula 1
Fast Cars, Big Data - How Streaming Can Help Formula 1Tugdual Grall
863 views54 slides
Introduction to NoSQL with MongoDB - SQLi Workshop by
Introduction to NoSQL with MongoDB - SQLi WorkshopIntroduction to NoSQL with MongoDB - SQLi Workshop
Introduction to NoSQL with MongoDB - SQLi WorkshopTugdual Grall
1K views64 slides
Enabling Telco to Build and Run Modern Applications by
Enabling Telco to Build and Run Modern Applications Enabling Telco to Build and Run Modern Applications
Enabling Telco to Build and Run Modern Applications Tugdual Grall
678 views46 slides
MongoDB and Hadoop by
MongoDB and HadoopMongoDB and Hadoop
MongoDB and HadoopTugdual Grall
1K views35 slides

More from Tugdual Grall(20)

Introduction to Streaming with Apache Flink by Tugdual Grall
Introduction to Streaming with Apache FlinkIntroduction to Streaming with Apache Flink
Introduction to Streaming with Apache Flink
Tugdual Grall731 views
Introduction to Streaming with Apache Flink by Tugdual Grall
Introduction to Streaming with Apache FlinkIntroduction to Streaming with Apache Flink
Introduction to Streaming with Apache Flink
Tugdual Grall336 views
Fast Cars, Big Data - How Streaming Can Help Formula 1 by Tugdual Grall
Fast Cars, Big Data - How Streaming Can Help Formula 1Fast Cars, Big Data - How Streaming Can Help Formula 1
Fast Cars, Big Data - How Streaming Can Help Formula 1
Tugdual Grall863 views
Introduction to NoSQL with MongoDB - SQLi Workshop by Tugdual Grall
Introduction to NoSQL with MongoDB - SQLi WorkshopIntroduction to NoSQL with MongoDB - SQLi Workshop
Introduction to NoSQL with MongoDB - SQLi Workshop
Tugdual Grall1K views
Enabling Telco to Build and Run Modern Applications by Tugdual Grall
Enabling Telco to Build and Run Modern Applications Enabling Telco to Build and Run Modern Applications
Enabling Telco to Build and Run Modern Applications
Tugdual Grall678 views
Drop your table ! MongoDB Schema Design by Tugdual Grall
Drop your table ! MongoDB Schema DesignDrop your table ! MongoDB Schema Design
Drop your table ! MongoDB Schema Design
Tugdual Grall1.3K views
Devoxx 2014 : Atelier MongoDB - Decouverte de MongoDB 2.6 by Tugdual Grall
Devoxx 2014 : Atelier MongoDB - Decouverte de MongoDB 2.6Devoxx 2014 : Atelier MongoDB - Decouverte de MongoDB 2.6
Devoxx 2014 : Atelier MongoDB - Decouverte de MongoDB 2.6
Tugdual Grall1.3K views
Some cool features of MongoDB by Tugdual Grall
Some cool features of MongoDBSome cool features of MongoDB
Some cool features of MongoDB
Tugdual Grall1.2K views
Building Your First MongoDB Application by Tugdual Grall
Building Your First MongoDB ApplicationBuilding Your First MongoDB Application
Building Your First MongoDB Application
Tugdual Grall2.6K views
Softshake 2013: Introduction to NoSQL with Couchbase by Tugdual Grall
Softshake 2013: Introduction to NoSQL with CouchbaseSoftshake 2013: Introduction to NoSQL with Couchbase
Softshake 2013: Introduction to NoSQL with Couchbase
Tugdual Grall965 views
Introduction to NoSQL with Couchbase by Tugdual Grall
Introduction to NoSQL with CouchbaseIntroduction to NoSQL with Couchbase
Introduction to NoSQL with Couchbase
Tugdual Grall1.5K views
Why and How to integrate Hadoop and NoSQL? by Tugdual Grall
Why and How to integrate Hadoop and NoSQL?Why and How to integrate Hadoop and NoSQL?
Why and How to integrate Hadoop and NoSQL?
Tugdual Grall691 views
NoSQL Matters 2013 - Introduction to Map Reduce with Couchbase 2.0 by Tugdual Grall
NoSQL Matters 2013 - Introduction to Map Reduce with Couchbase 2.0NoSQL Matters 2013 - Introduction to Map Reduce with Couchbase 2.0
NoSQL Matters 2013 - Introduction to Map Reduce with Couchbase 2.0
Tugdual Grall1.4K views
Big Data Paris : Hadoop and NoSQL by Tugdual Grall
Big Data Paris : Hadoop and NoSQLBig Data Paris : Hadoop and NoSQL
Big Data Paris : Hadoop and NoSQL
Tugdual Grall1.1K views
Big Data Israel Meetup : Couchbase and Big Data by Tugdual Grall
Big Data Israel Meetup : Couchbase and Big DataBig Data Israel Meetup : Couchbase and Big Data
Big Data Israel Meetup : Couchbase and Big Data
Tugdual Grall1.1K views
FOSDEM 2013 : Getting Started with Couchhbase Server 2.0 by Tugdual Grall
FOSDEM 2013 : Getting Started with Couchhbase Server 2.0FOSDEM 2013 : Getting Started with Couchhbase Server 2.0
FOSDEM 2013 : Getting Started with Couchhbase Server 2.0
Tugdual Grall346 views
Open World Forum 2012 : eXo & the Cloud by Tugdual Grall
Open World Forum 2012 : eXo & the CloudOpen World Forum 2012 : eXo & the Cloud
Open World Forum 2012 : eXo & the Cloud
Tugdual Grall1.1K views

Recently uploaded

Developments to CloudStack’s SDN ecosystem: Integration with VMWare NSX 4 - P... by
Developments to CloudStack’s SDN ecosystem: Integration with VMWare NSX 4 - P...Developments to CloudStack’s SDN ecosystem: Integration with VMWare NSX 4 - P...
Developments to CloudStack’s SDN ecosystem: Integration with VMWare NSX 4 - P...ShapeBlue
82 views62 slides
Mitigating Common CloudStack Instance Deployment Failures - Jithin Raju - Sha... by
Mitigating Common CloudStack Instance Deployment Failures - Jithin Raju - Sha...Mitigating Common CloudStack Instance Deployment Failures - Jithin Raju - Sha...
Mitigating Common CloudStack Instance Deployment Failures - Jithin Raju - Sha...ShapeBlue
74 views18 slides
Zero to Cloud Hero: Crafting a Private Cloud from Scratch with XCP-ng, Xen Or... by
Zero to Cloud Hero: Crafting a Private Cloud from Scratch with XCP-ng, Xen Or...Zero to Cloud Hero: Crafting a Private Cloud from Scratch with XCP-ng, Xen Or...
Zero to Cloud Hero: Crafting a Private Cloud from Scratch with XCP-ng, Xen Or...ShapeBlue
88 views20 slides
MVP and prioritization.pdf by
MVP and prioritization.pdfMVP and prioritization.pdf
MVP and prioritization.pdfrahuldharwal141
38 views8 slides
CloudStack Managed User Data and Demo - Harikrishna Patnala - ShapeBlue by
CloudStack Managed User Data and Demo - Harikrishna Patnala - ShapeBlueCloudStack Managed User Data and Demo - Harikrishna Patnala - ShapeBlue
CloudStack Managed User Data and Demo - Harikrishna Patnala - ShapeBlueShapeBlue
46 views13 slides
NTGapps NTG LowCode Platform by
NTGapps NTG LowCode Platform NTGapps NTG LowCode Platform
NTGapps NTG LowCode Platform Mustafa Kuğu
141 views30 slides

Recently uploaded(20)

Developments to CloudStack’s SDN ecosystem: Integration with VMWare NSX 4 - P... by ShapeBlue
Developments to CloudStack’s SDN ecosystem: Integration with VMWare NSX 4 - P...Developments to CloudStack’s SDN ecosystem: Integration with VMWare NSX 4 - P...
Developments to CloudStack’s SDN ecosystem: Integration with VMWare NSX 4 - P...
ShapeBlue82 views
Mitigating Common CloudStack Instance Deployment Failures - Jithin Raju - Sha... by ShapeBlue
Mitigating Common CloudStack Instance Deployment Failures - Jithin Raju - Sha...Mitigating Common CloudStack Instance Deployment Failures - Jithin Raju - Sha...
Mitigating Common CloudStack Instance Deployment Failures - Jithin Raju - Sha...
ShapeBlue74 views
Zero to Cloud Hero: Crafting a Private Cloud from Scratch with XCP-ng, Xen Or... by ShapeBlue
Zero to Cloud Hero: Crafting a Private Cloud from Scratch with XCP-ng, Xen Or...Zero to Cloud Hero: Crafting a Private Cloud from Scratch with XCP-ng, Xen Or...
Zero to Cloud Hero: Crafting a Private Cloud from Scratch with XCP-ng, Xen Or...
ShapeBlue88 views
CloudStack Managed User Data and Demo - Harikrishna Patnala - ShapeBlue by ShapeBlue
CloudStack Managed User Data and Demo - Harikrishna Patnala - ShapeBlueCloudStack Managed User Data and Demo - Harikrishna Patnala - ShapeBlue
CloudStack Managed User Data and Demo - Harikrishna Patnala - ShapeBlue
ShapeBlue46 views
NTGapps NTG LowCode Platform by Mustafa Kuğu
NTGapps NTG LowCode Platform NTGapps NTG LowCode Platform
NTGapps NTG LowCode Platform
Mustafa Kuğu141 views
State of the Union - Rohit Yadav - Apache CloudStack by ShapeBlue
State of the Union - Rohit Yadav - Apache CloudStackState of the Union - Rohit Yadav - Apache CloudStack
State of the Union - Rohit Yadav - Apache CloudStack
ShapeBlue145 views
ESPC 2023 - Protect and Govern your Sensitive Data with Microsoft Purview in ... by Jasper Oosterveld
ESPC 2023 - Protect and Govern your Sensitive Data with Microsoft Purview in ...ESPC 2023 - Protect and Govern your Sensitive Data with Microsoft Purview in ...
ESPC 2023 - Protect and Govern your Sensitive Data with Microsoft Purview in ...
Setting Up Your First CloudStack Environment with Beginners Challenges - MD R... by ShapeBlue
Setting Up Your First CloudStack Environment with Beginners Challenges - MD R...Setting Up Your First CloudStack Environment with Beginners Challenges - MD R...
Setting Up Your First CloudStack Environment with Beginners Challenges - MD R...
ShapeBlue54 views
KVM Security Groups Under the Hood - Wido den Hollander - Your.Online by ShapeBlue
KVM Security Groups Under the Hood - Wido den Hollander - Your.OnlineKVM Security Groups Under the Hood - Wido den Hollander - Your.Online
KVM Security Groups Under the Hood - Wido den Hollander - Your.Online
ShapeBlue102 views
Five Things You SHOULD Know About Postman by Postman
Five Things You SHOULD Know About PostmanFive Things You SHOULD Know About Postman
Five Things You SHOULD Know About Postman
Postman40 views
VNF Integration and Support in CloudStack - Wei Zhou - ShapeBlue by ShapeBlue
VNF Integration and Support in CloudStack - Wei Zhou - ShapeBlueVNF Integration and Support in CloudStack - Wei Zhou - ShapeBlue
VNF Integration and Support in CloudStack - Wei Zhou - ShapeBlue
ShapeBlue85 views
CloudStack Object Storage - An Introduction - Vladimir Petrov - ShapeBlue by ShapeBlue
CloudStack Object Storage - An Introduction - Vladimir Petrov - ShapeBlueCloudStack Object Storage - An Introduction - Vladimir Petrov - ShapeBlue
CloudStack Object Storage - An Introduction - Vladimir Petrov - ShapeBlue
ShapeBlue46 views
DRBD Deep Dive - Philipp Reisner - LINBIT by ShapeBlue
DRBD Deep Dive - Philipp Reisner - LINBITDRBD Deep Dive - Philipp Reisner - LINBIT
DRBD Deep Dive - Philipp Reisner - LINBIT
ShapeBlue62 views
GDG Cloud Southlake 28 Brad Taylor and Shawn Augenstein Old Problems in the N... by James Anderson
GDG Cloud Southlake 28 Brad Taylor and Shawn Augenstein Old Problems in the N...GDG Cloud Southlake 28 Brad Taylor and Shawn Augenstein Old Problems in the N...
GDG Cloud Southlake 28 Brad Taylor and Shawn Augenstein Old Problems in the N...
James Anderson133 views
What’s New in CloudStack 4.19 - Abhishek Kumar - ShapeBlue by ShapeBlue
What’s New in CloudStack 4.19 - Abhishek Kumar - ShapeBlueWhat’s New in CloudStack 4.19 - Abhishek Kumar - ShapeBlue
What’s New in CloudStack 4.19 - Abhishek Kumar - ShapeBlue
ShapeBlue131 views
Transitioning from VMware vCloud to Apache CloudStack: A Path to Profitabilit... by ShapeBlue
Transitioning from VMware vCloud to Apache CloudStack: A Path to Profitabilit...Transitioning from VMware vCloud to Apache CloudStack: A Path to Profitabilit...
Transitioning from VMware vCloud to Apache CloudStack: A Path to Profitabilit...
ShapeBlue57 views
"Surviving highload with Node.js", Andrii Shumada by Fwdays
"Surviving highload with Node.js", Andrii Shumada "Surviving highload with Node.js", Andrii Shumada
"Surviving highload with Node.js", Andrii Shumada
Fwdays40 views
Keynote Talk: Open Source is Not Dead - Charles Schulz - Vates by ShapeBlue
Keynote Talk: Open Source is Not Dead - Charles Schulz - VatesKeynote Talk: Open Source is Not Dead - Charles Schulz - Vates
Keynote Talk: Open Source is Not Dead - Charles Schulz - Vates
ShapeBlue119 views
How to Re-use Old Hardware with CloudStack. Saving Money and the Environment ... by ShapeBlue
How to Re-use Old Hardware with CloudStack. Saving Money and the Environment ...How to Re-use Old Hardware with CloudStack. Saving Money and the Environment ...
How to Re-use Old Hardware with CloudStack. Saving Money and the Environment ...
ShapeBlue65 views

Proud to be Polyglot - Riviera Dev 2015

  • 1. © 2014 MapR Technologies ‹#›© 2014 MapR Technologies Proud to be Polyglot! Tugdual Grall @tgrall June 11, 2015
  • 2. © 2015 MapR Technologies ‹#›@tgrall Modern Applications • Modern Applications Must • Manage any type of data • Scale • Be fault tolerant • Adapt to change
  • 3. © 2015 MapR Technologies ‹#›@tgrall Current Architecture • Mono-Technology • Single “language/architecture” • Single Database : RDBMS • One size fits all approach JSP/JSF Services Messaging JTA DAO/JPA
  • 4. © 2015 MapR Technologies ‹#›@tgrall Is it good for me? • Many Files • XML, Sources, Configuration, … • Does Hibernate/JPA is good for all? • Impedance mismatch • Need to scale • From 0 to 50 millions users in 6 weeks • 1Tb of data each day • How easy is to add new features? • Changing code, updating data structure, … • And all this for yesterday !
  • 5. © 2014 MapR Technologies ‹#›@tgrall One size does NOT fit all!
  • 6. © 2014 MapR Technologies ‹#›@tgrall Let’s look at our data… 6
  • 7. © 2014 MapR Technologies ‹#› Big Data
  • 8. © 2014 MapR Technologies ‹#› Big Users http://www.theconnectivist.com/ & Cisco
  • 9. © 2015 MapR Technologies ‹#›@tgrall . . . App Server RDBMS Application Scale out Add more “Web” servers RDBMS Scale Up Get bigger server Stay up!…. and Scale
  • 10. © 2015 MapR Technologies ‹#›@tgrall Scaling out RDBMS • Run many RDBMS Servers • Data could be partitioned • Done by the application code • Caching Layer . . . App Server . . . Memcached . . . MySQL
  • 11. © 2015 MapR Technologies ‹#›@tgrall NoSQL to Scale Out! . . . NoSQL App Server . . . Application Scale out Add more “Web” servers NoSQL Scale Out Add more servers
  • 12. © 2015 MapR Technologies ‹#›@tgrall Operational vs Analytics Databases Warehouse,AnalyticsApplications, Interactions
  • 13. © 2015 MapR Technologies ‹#›@tgrall Polyglot Persistence Big Data/Analysis NoSQL RDBMS • Log Capture • Recommendations • Predictions • Ad Campaign • Products • User Profiles • Game Actions • Sessions • Shopping Cart • Financial Data • Reporting
  • 14. © 2015 MapR Technologies ‹#›@tgrall
  • 15. © 2015 MapR Technologies ‹#›@tgrall Data Service Layer • Wrap data call in Services – loosely coupled . . . App Server
  • 16. © 2015 MapR Technologies ‹#›@tgrall Use Case : Personalization WebSite / Application Personalization Database Data Processing Logs Application Data
  • 17. © 2015 MapR Technologies ‹#›@tgrall Use Case : Mobile / API PIM Database • Legacy Application • Product Information NoSQL • REST API • Product Data • Additional Metadata
  • 18. © 2014 MapR Technologies ‹#› Now What? Now What?
  • 19. © 2015 MapR Technologies ‹#›@tgrall Why multiple languages? • Sometimes we have no choice • HTML/CSS/JavaScript + Server Side • Mobile Native Applications • Java/.Net are slow movers • Java EE 5.0 is still mainstream (2006!!) • Many languages and frameworks • Scala, Clojure, Groovy, Dart, Go, Ruby, Python, F#, Erlang, Node.js, Rails, Play!, Grails, ...
  • 20. © 2015 MapR Technologies ‹#›@tgrall Examples • Realtime interaction with WebSockets : • Wait for Java EE 7 to supported by your IT? • Hack your app server and application with Continuation ? • Use Node.js and Socket.io ? • Data Collection and Treatment? • Find a library? • Create your library? • Use Java 8 and Lambdas? • Use Scala?
  • 21. © 2015 MapR Technologies ‹#›@tgrall Examples • Simple CRUD Application • Use the JavaEE stack with JPA and JSF? • Use Spring ? • Use tools like Play!, Grails, Rails, MEAN ?
  • 22. © 2015 MapR Technologies ‹#›@tgrall How to chose? • Maturity/Supportability • Features Set • Learning Curve • Productivity
  • 23. © 2015 MapR Technologies ‹#›@tgrall Use Case : Second Screen Experience . . . Node.js + Socket IO Play! Application Python Scripts
  • 24. © 2015 MapR Technologies ‹#›@tgrall Use Case : Recommendation WebSite / Application Machine Learning / Recommendation Data Processing UserActivity Application Data
  • 25. © 2014 MapR Technologies ‹#›@tgrall Demonstration
  • 26. © 2015 MapR Technologies ‹#›@tgrall Conclusion • Use the good tool for the good task • Do not try to “hack” something when you have a simpler solution • Think about your users first... so deliver and get feedback • Learning is part of our job ! • And this will help you and your project • What about maintenance? • Do you think it is easier to maintain complex old code?
  • 27. © 2014 MapR Technologies ‹#› Questions
  • 28. © 2014 MapR Technologies ‹#›© 2014 MapR Technologies Proud to be Polyglot! Tugdual Grall @tgrall June 11, 2015