SlideShare a Scribd company logo
Augmenting Mongo DB with treasure data
Augmenting
MongoDB with Treasure Data
About Me
• A recovering software engineer turned digital artist
once interested in fractals;
• now into data visualization based on large datasets
rendered directly to GPU (RGL, various Python GL
libraries, etc.)
• it’s easier these days to manipulate large dataset
with limited effort
Images courtesy of Edureka, 10gen, MongoDB,
clipart panda and aperfectworld.org
Courtesy of Edureka
Position
relatively speaking
Images courtesy of Edureka and MongoDB
Strengths: Format,
Convenience
Schema courtesy of Emily Stolfo, MongoDB
Discuss
“not so strengths” of
MongoDB
• Horowitz was also very honest about where and how
MongoDB is lacking in its current offering – most notably in
terms of integration capabilities and some areas of high
performance.
• “In the relational world you’ve got a few big boxes, in the
MongoDB world you could have 2,000 commodity servers,
so you need really great management tools for that.
That’s a huge problem for us.”
• “The other big thing is automation, where you can have
automation tools that let you manage very large clusters all
from a very simple pane of glass.”
http://diginomica.com/2014/11/10/mongodb-cto-mongo-works-doesnt/
From an interview with MongoDB CTO Eliot Horowitz
testimony of John R Jensen, Cengage
hmmm…moar “not so strengths” ;)
of MongoDB
• The dreaded “Write Lock”
• https://news.ycombinator.com/item?id=1691748
• http://www.sarahmei.com/blog/2013/11/11/why-you-should-never-use-mongodb/
- is the data actually relational or not?
• Slideshare “where not to use MongoDB”
• Slideshare “Hive vs. Cassandra vs. MongoDB”
• http://www.slideshare.net/johnrjenson/mongodb-pros-and-cons
• “choosing the right NoSQL database” video:
https://www.youtube.com/watch?t=34&v=gJFG04Sy6NY
• limits of MongoDB: http://docs.mongodb.org/manual/reference/limits/
Augmenting Mongo DB with treasure data
More improvements?
What are the steps to scale?
The Hadoop Story on MongoDB
Share some use-cases
with us, won’t you?
Complementing MongoDB
• Featurewise?
• Elastic Search
• Use-Case: Stripe
• Opslog feature as queryable log of diffs
• Hadoop (good for large scale processing), Hive
(Treasure Data)
• Use-Case: Wish
What’s wish.com?
• Mobile eCommerce -
world’s largest mobile
shopping mall
• Top 10 app on iOS &
Android
• Product
discovery/personalization
Your Fun, Personalized Shopping Mall
Wish & MongoDB
• Primary database
• 64x mongod
• AWS -> bare metal (SSDs ftw!)
Architecture
App server
Wish App fluentd
fluentd aggregation
server
fluentd
fluentd aggregation
server
fluentd
Hadoop/Hive
Before fluentd
fluentd!
Complementing MongoDB
• Operationally?
• Managing MongoDB is hard (spin up instances
with Mongolab)
• MongoDB (monitoring products: Ops Manager
and MMS)
• What’s your pain? What’s are you missing?
You know what?
Managing ANY data is
hard.
Treasure Data as a Cloud
Way of complementing Mongo
DB
6
Batch
Imports
Streaming
Imports
Ingestion
Batch Processing
(Hive, Presto)
Storage
(Schema-on-read)
Console
ODBC JDBC
AWS S3
PrestogresCLI Luigi-TD
FTP
GDocs
HTTP Put
Python
PostgreSQL
Redshift
SFDC
Yahoo BDI
Tableau Server
MySQL
…
Ingest Analyze Distribute
Gree (gaming)
DATA ACCESS > ADVANCED ANALYTICS
• Product analytics: data
access is a major issue.
• “Machine learning” is still
simple and “small” in scale
(can be done inside Python)
• Future work:
productized/operationalized
machine learning
bluetooth
iOS/Android SDK
Fluentd
Python/Pandas SDK
Data Science Team (5 people)
SCHEMA(LESS) COUNTS
• Redshift: lots of co-use
cases
• Event data is semi-
structured → Can be
modeled as JSON but
schemas change
• Treasure Data provides a
SQL-accessible, semi-
structured data lake.
email
Source of truth/JSON
More intensive data processing
Hourly/Daily load
Big data mart
More interactive data processing
Ad hoc queries
for new data
Ad hoc queries
for cached data
DATA COLLECTION IS HARD
• Want to assume all data is
on S3 or HDFS, but reality is
murkier.
• Sensor readings available as
email attachments
• Provide data collection tools
for 90% of the use cases.
Have APIs ready for 10%.
GH SCADA
email
Parse & transform
Import via REST
Import data as JSON
Analyze via SQL
Query
Results
Data-informed
maintenance
The Sunk Cost Fallacy
Some revised scenarios
• Revised scenario 1: Using Treasure Data for
Ingestion and analytics; exporting results to
MongoDB for reporting
Some revised scenarios
• Revised scenario 2: Ingestion data into MongoDB
and exporting to Treasure Data
Treasure Data is good for a
some of the same things…
• less overhead in setup
• less - make that practically no - effort to scale
• less overhead/effort to use
• but -> less fine-tuned control over outcome
The Tradeoff
Control (sharding and replication) vs. Ease
(scaling automatically in the cloud)
?
MongoDB is already excellent for a lot of things
+
Demo!
jhammink@treasure-data.com
@Rijksband
www.treasure-data.com
Questions?

More Related Content

PDF
Unifying Events and Logs into the Cloud
PDF
Treasure Data From MySQL to Redshift
PPTX
Building a system for machine and event-oriented data with Rocana
PPTX
Real Time Data Analytics with MongoDB and Fluentd at Wish
PPTX
GOTO Aarhus 2014: Making Enterprise Data Available in Real Time with elastics...
PDF
Exploring BigData with Google BigQuery
PDF
Intro to new Google cloud technologies: Google Storage, Prediction API, BigQuery
PDF
An indepth look at Google BigQuery Architecture by Felipe Hoffa of Google
Unifying Events and Logs into the Cloud
Treasure Data From MySQL to Redshift
Building a system for machine and event-oriented data with Rocana
Real Time Data Analytics with MongoDB and Fluentd at Wish
GOTO Aarhus 2014: Making Enterprise Data Available in Real Time with elastics...
Exploring BigData with Google BigQuery
Intro to new Google cloud technologies: Google Storage, Prediction API, BigQuery
An indepth look at Google BigQuery Architecture by Felipe Hoffa of Google

What's hot (20)

PDF
A Day in the Life of a Druid Implementor and Druid's Roadmap
PDF
MongoDB at Baidu
PPTX
An Intro to Elasticsearch and Kibana
PDF
Developing high frequency indicators using real time tick data on apache supe...
PPTX
The evolution of the big data platform @ Netflix (OSCON 2015)
ODP
Big Data Analytics with Google BigQuery. By Javier Ramirez. All your base Co...
PDF
Building Scalable Big Data Pipelines
PDF
How BigQuery broke my heart
PDF
Google BigQuery
PPTX
Open source log analytics
PDF
Google Big Query UDFs
PPTX
Meetup Google BigQuery powered by ai
PPTX
Big Data Best Practices on GCP
PDF
Open Source DataViz with Apache Superset
PPTX
Your data layer - Choosing the right database solutions for the future
PPTX
The Future of Data Engineering - 2019 InfoQ QConSF
PDF
Google BigQuery for Everyday Developer
PDF
Redshift VS BigQuery
PPTX
Tableau & MongoDB: Visual Analytics at the Speed of Thought
PDF
Google Cloud Platform at Vente-Exclusive.com
A Day in the Life of a Druid Implementor and Druid's Roadmap
MongoDB at Baidu
An Intro to Elasticsearch and Kibana
Developing high frequency indicators using real time tick data on apache supe...
The evolution of the big data platform @ Netflix (OSCON 2015)
Big Data Analytics with Google BigQuery. By Javier Ramirez. All your base Co...
Building Scalable Big Data Pipelines
How BigQuery broke my heart
Google BigQuery
Open source log analytics
Google Big Query UDFs
Meetup Google BigQuery powered by ai
Big Data Best Practices on GCP
Open Source DataViz with Apache Superset
Your data layer - Choosing the right database solutions for the future
The Future of Data Engineering - 2019 InfoQ QConSF
Google BigQuery for Everyday Developer
Redshift VS BigQuery
Tableau & MongoDB: Visual Analytics at the Speed of Thought
Google Cloud Platform at Vente-Exclusive.com
Ad

Viewers also liked (12)

PDF
Fluentd and Docker - running fluentd within a docker container
PDF
What is support_engineer_in_treasuredata
PDF
Fluentd - Unified logging layer
PDF
Fluentd and Docker - running fluentd within a docker container
PDF
Unifying Events and Logs into the Cloud
PDF
Insight Data Engineering: Open source data ingestion
PDF
Open source data ingestion
PDF
Introduction to New features and Use cases of Hivemall
PPTX
Augmenting Mongo DB with Treasure Data
PDF
Packaging Ecosystems -Monki Gras 2017
PDF
글로벌 사례로 보는 데이터로 돈 버는 법 - 트레저데이터 (Treasure Data)
PDF
Keynote - Fluentd meetup v14
Fluentd and Docker - running fluentd within a docker container
What is support_engineer_in_treasuredata
Fluentd - Unified logging layer
Fluentd and Docker - running fluentd within a docker container
Unifying Events and Logs into the Cloud
Insight Data Engineering: Open source data ingestion
Open source data ingestion
Introduction to New features and Use cases of Hivemall
Augmenting Mongo DB with Treasure Data
Packaging Ecosystems -Monki Gras 2017
글로벌 사례로 보는 데이터로 돈 버는 법 - 트레저데이터 (Treasure Data)
Keynote - Fluentd meetup v14
Ad

Similar to Augmenting Mongo DB with treasure data (20)

PPTX
When to Use MongoDB
PDF
Mongodb
PPTX
Nosql Now 2012: MongoDB Use Cases
PPTX
Webinar: When to Use MongoDB
PPTX
Why Organizations are Looking at Alternative Database Technologies – Introduc...
PPT
MongoDB Tick Data Presentation
PDF
Which database should I use for my app?
PDF
New World Hadoop Architectures (& What Problems They Really Solve) for Oracle...
PDF
Webinar: Managing Real Time Risk Analytics with MongoDB
PPTX
Getting Started with Big Data in the Cloud
PPTX
When to Use MongoDB...and When You Should Not...
PPTX
Introducing MongoDB into your Organization
PDF
MongoDB Versatility: Scaling the MapMyFitness Platform
PPTX
Why Your MongoDB Needs Redis
PPTX
Architecting Your First Big Data Implementation
PDF
MongoDB Breakfast Milan - Mainframe Offloading Strategies
KEY
NoSQL in the context of Social Web
PPTX
PDF
MongoDB in FS
PDF
Webinar: How Banks Manage Reference Data with MongoDB
When to Use MongoDB
Mongodb
Nosql Now 2012: MongoDB Use Cases
Webinar: When to Use MongoDB
Why Organizations are Looking at Alternative Database Technologies – Introduc...
MongoDB Tick Data Presentation
Which database should I use for my app?
New World Hadoop Architectures (& What Problems They Really Solve) for Oracle...
Webinar: Managing Real Time Risk Analytics with MongoDB
Getting Started with Big Data in the Cloud
When to Use MongoDB...and When You Should Not...
Introducing MongoDB into your Organization
MongoDB Versatility: Scaling the MapMyFitness Platform
Why Your MongoDB Needs Redis
Architecting Your First Big Data Implementation
MongoDB Breakfast Milan - Mainframe Offloading Strategies
NoSQL in the context of Social Web
MongoDB in FS
Webinar: How Banks Manage Reference Data with MongoDB

More from Treasure Data, Inc. (16)

PPTX
GDPR: A Practical Guide for Marketers
PPTX
AR and VR by the Numbers: A Data First Approach to the Technology and Market
PPTX
Introduction to Customer Data Platforms
PPTX
Hands On: Javascript SDK
PPTX
Hands-On: Managing Slowly Changing Dimensions Using TD Workflow
PPTX
Brand Analytics Management: Measuring CLV Across Platforms, Devices and Apps
PPTX
How to Power Your Customer Experience with Data
PPTX
Why Your VR Game is Virtually Useless Without Data
PDF
Connecting the Customer Data Dots
PPTX
Harnessing Data for Better Customer Experience and Company Success
PDF
Scalable Hadoop in the cloud
PDF
Using Embulk at Treasure Data
PDF
Scaling to Infinity - Open Source meets Big Data
PDF
Treasure Data: Move your data from MySQL to Redshift with (not much more tha...
PPTX
Partner webinar presentation aws pebble_treasure_data
PDF
Introduction to Hivemall
GDPR: A Practical Guide for Marketers
AR and VR by the Numbers: A Data First Approach to the Technology and Market
Introduction to Customer Data Platforms
Hands On: Javascript SDK
Hands-On: Managing Slowly Changing Dimensions Using TD Workflow
Brand Analytics Management: Measuring CLV Across Platforms, Devices and Apps
How to Power Your Customer Experience with Data
Why Your VR Game is Virtually Useless Without Data
Connecting the Customer Data Dots
Harnessing Data for Better Customer Experience and Company Success
Scalable Hadoop in the cloud
Using Embulk at Treasure Data
Scaling to Infinity - Open Source meets Big Data
Treasure Data: Move your data from MySQL to Redshift with (not much more tha...
Partner webinar presentation aws pebble_treasure_data
Introduction to Hivemall

Recently uploaded (20)

PDF
Blue Purple Modern Animated Computer Science Presentation.pdf.pdf
PDF
Advanced methodologies resolving dimensionality complications for autism neur...
PDF
KodekX | Application Modernization Development
PDF
Per capita expenditure prediction using model stacking based on satellite ima...
PPTX
Effective Security Operations Center (SOC) A Modern, Strategic, and Threat-In...
PDF
Encapsulation_ Review paper, used for researhc scholars
PPTX
Detection-First SIEM: Rule Types, Dashboards, and Threat-Informed Strategy
PDF
Reach Out and Touch Someone: Haptics and Empathic Computing
PPTX
Big Data Technologies - Introduction.pptx
PDF
7 ChatGPT Prompts to Help You Define Your Ideal Customer Profile.pdf
PDF
Profit Center Accounting in SAP S/4HANA, S4F28 Col11
PDF
How UI/UX Design Impacts User Retention in Mobile Apps.pdf
PDF
Network Security Unit 5.pdf for BCA BBA.
PDF
Agricultural_Statistics_at_a_Glance_2022_0.pdf
PDF
MIND Revenue Release Quarter 2 2025 Press Release
PPTX
Understanding_Digital_Forensics_Presentation.pptx
PDF
Spectral efficient network and resource selection model in 5G networks
PDF
Review of recent advances in non-invasive hemoglobin estimation
PDF
Architecting across the Boundaries of two Complex Domains - Healthcare & Tech...
PDF
cuic standard and advanced reporting.pdf
Blue Purple Modern Animated Computer Science Presentation.pdf.pdf
Advanced methodologies resolving dimensionality complications for autism neur...
KodekX | Application Modernization Development
Per capita expenditure prediction using model stacking based on satellite ima...
Effective Security Operations Center (SOC) A Modern, Strategic, and Threat-In...
Encapsulation_ Review paper, used for researhc scholars
Detection-First SIEM: Rule Types, Dashboards, and Threat-Informed Strategy
Reach Out and Touch Someone: Haptics and Empathic Computing
Big Data Technologies - Introduction.pptx
7 ChatGPT Prompts to Help You Define Your Ideal Customer Profile.pdf
Profit Center Accounting in SAP S/4HANA, S4F28 Col11
How UI/UX Design Impacts User Retention in Mobile Apps.pdf
Network Security Unit 5.pdf for BCA BBA.
Agricultural_Statistics_at_a_Glance_2022_0.pdf
MIND Revenue Release Quarter 2 2025 Press Release
Understanding_Digital_Forensics_Presentation.pptx
Spectral efficient network and resource selection model in 5G networks
Review of recent advances in non-invasive hemoglobin estimation
Architecting across the Boundaries of two Complex Domains - Healthcare & Tech...
cuic standard and advanced reporting.pdf

Augmenting Mongo DB with treasure data

  • 3. About Me • A recovering software engineer turned digital artist once interested in fractals; • now into data visualization based on large datasets rendered directly to GPU (RGL, various Python GL libraries, etc.) • it’s easier these days to manipulate large dataset with limited effort
  • 4. Images courtesy of Edureka, 10gen, MongoDB, clipart panda and aperfectworld.org
  • 6. relatively speaking Images courtesy of Edureka and MongoDB
  • 9. “not so strengths” of MongoDB • Horowitz was also very honest about where and how MongoDB is lacking in its current offering – most notably in terms of integration capabilities and some areas of high performance. • “In the relational world you’ve got a few big boxes, in the MongoDB world you could have 2,000 commodity servers, so you need really great management tools for that. That’s a huge problem for us.” • “The other big thing is automation, where you can have automation tools that let you manage very large clusters all from a very simple pane of glass.” http://diginomica.com/2014/11/10/mongodb-cto-mongo-works-doesnt/ From an interview with MongoDB CTO Eliot Horowitz
  • 10. testimony of John R Jensen, Cengage
  • 11. hmmm…moar “not so strengths” ;) of MongoDB • The dreaded “Write Lock” • https://news.ycombinator.com/item?id=1691748 • http://www.sarahmei.com/blog/2013/11/11/why-you-should-never-use-mongodb/ - is the data actually relational or not? • Slideshare “where not to use MongoDB” • Slideshare “Hive vs. Cassandra vs. MongoDB” • http://www.slideshare.net/johnrjenson/mongodb-pros-and-cons • “choosing the right NoSQL database” video: https://www.youtube.com/watch?t=34&v=gJFG04Sy6NY • limits of MongoDB: http://docs.mongodb.org/manual/reference/limits/
  • 14. What are the steps to scale?
  • 15. The Hadoop Story on MongoDB
  • 16. Share some use-cases with us, won’t you?
  • 17. Complementing MongoDB • Featurewise? • Elastic Search • Use-Case: Stripe • Opslog feature as queryable log of diffs • Hadoop (good for large scale processing), Hive (Treasure Data) • Use-Case: Wish
  • 18. What’s wish.com? • Mobile eCommerce - world’s largest mobile shopping mall • Top 10 app on iOS & Android • Product discovery/personalization
  • 19. Your Fun, Personalized Shopping Mall
  • 20. Wish & MongoDB • Primary database • 64x mongod • AWS -> bare metal (SSDs ftw!)
  • 21. Architecture App server Wish App fluentd fluentd aggregation server fluentd fluentd aggregation server fluentd Hadoop/Hive
  • 24. Complementing MongoDB • Operationally? • Managing MongoDB is hard (spin up instances with Mongolab) • MongoDB (monitoring products: Ops Manager and MMS) • What’s your pain? What’s are you missing?
  • 25. You know what? Managing ANY data is hard.
  • 26. Treasure Data as a Cloud Way of complementing Mongo DB
  • 27. 6 Batch Imports Streaming Imports Ingestion Batch Processing (Hive, Presto) Storage (Schema-on-read) Console ODBC JDBC AWS S3 PrestogresCLI Luigi-TD FTP GDocs HTTP Put Python PostgreSQL Redshift SFDC Yahoo BDI Tableau Server MySQL … Ingest Analyze Distribute
  • 29. DATA ACCESS > ADVANCED ANALYTICS • Product analytics: data access is a major issue. • “Machine learning” is still simple and “small” in scale (can be done inside Python) • Future work: productized/operationalized machine learning bluetooth iOS/Android SDK Fluentd Python/Pandas SDK Data Science Team (5 people)
  • 30. SCHEMA(LESS) COUNTS • Redshift: lots of co-use cases • Event data is semi- structured → Can be modeled as JSON but schemas change • Treasure Data provides a SQL-accessible, semi- structured data lake. email Source of truth/JSON More intensive data processing Hourly/Daily load Big data mart More interactive data processing Ad hoc queries for new data Ad hoc queries for cached data
  • 31. DATA COLLECTION IS HARD • Want to assume all data is on S3 or HDFS, but reality is murkier. • Sensor readings available as email attachments • Provide data collection tools for 90% of the use cases. Have APIs ready for 10%. GH SCADA email Parse & transform Import via REST Import data as JSON Analyze via SQL Query Results Data-informed maintenance
  • 32. The Sunk Cost Fallacy
  • 33. Some revised scenarios • Revised scenario 1: Using Treasure Data for Ingestion and analytics; exporting results to MongoDB for reporting
  • 34. Some revised scenarios • Revised scenario 2: Ingestion data into MongoDB and exporting to Treasure Data
  • 35. Treasure Data is good for a some of the same things… • less overhead in setup • less - make that practically no - effort to scale • less overhead/effort to use • but -> less fine-tuned control over outcome
  • 36. The Tradeoff Control (sharding and replication) vs. Ease (scaling automatically in the cloud) ?
  • 37. MongoDB is already excellent for a lot of things +
  • 38. Demo!

Editor's Notes

  • #5: Just a quick review… Sharding strategies: Range sharding - (shard key divided by e.g. device id by range) Hash Sharding: MongoDB applies a MD5 hash on the key when the subkey is used Tag-Aware Sharding: allows a subset of shards to be tagged, and assigned to a sub-range of the shard key
  • #6: The folks at Edureka did a comparative study of different database types. Breakoff discussion: Let’s talk about what kind of databases we’re using, and for what purposes.
  • #7: Question to audience: How do mongo and HBase (Plazma?) fall on the boundary between partition tolerance and consistency? (Might consider leaving this slide out
  • #8: BSON looks like JSON and translate nicely to things like python dictionaries. Working the Mongo prompt is easy but requires mastering another API/paradigm.
  • #9: What are some other strengths of MongoDB
  • #10: Managing MongoDB is hard (spin up instances with Mongolab) MongoDB (monitoring products: Ops Manager and MMS)
  • #12: If you can lose 5sec. worth of updates, a MongoDB replication pair is just fine. If you can lose a day's worth of updates (or can easily reconstruct the database contents from other sources), you can try out pretty much anything without bad repercussions. If you can't lose anything, you're pretty much limited to the most conservative databases (the SQL bunch).
  • #16: Any places where this process could be problematic? One is a failure before cache is written, during finalize. Another could be a failure during any step of the M-R process.
  • #22: NOTE: Need transitions on this slide to control how things appear with my story We start in the app which generates the logs. The app synchronously logs to a fluentd running on the same host. There’s no network latency and the load on each local fluentd is trivial, so we’ve never had problems with these getting slow The local fluentd accepts the logs and buffers them on disk for reliability. Periodically, it flushes those buffers to one of the hosts in our fluentd aggregation tier with at-least-once semantics. These run active/active and can be scaled out linearly. They also buffer on disk and periodically flush into Hadoop. As an added bonus, they also flush into S3 for backup. This tier gives us an easy to monitor & manage conduit for our logs to flow through without imposing extra costs on the app. To recap, the logs from our app are buffered by a fluentd on the same host. That reliably forwards to a tier of aggregation fluentds, which forward to Hadoop and S3.
  • #33: The sunk cost fallacy is the idea that your sunk costs (unrecoverable) create barriers to adjusting your future spending. For example, “I’m hungry. Therefore I should eat that egg salad in the fridge (even if it’s gone bad) because I’ve already spent the money on it (rather than going for fresh food.”