SlideShare a Scribd company logo
Bringing Data to Life with
MongoDB Charts
Grigori Melnik
VP, Products, Server and Enterprise Tools
@gmelnik
Jay Gordon
Developer Advocate
@jaydestro
NYC MUG, Jul 24, 2017
2
Agenda
• Why did we build Charts?
• What is Charts?
• Installing Charts
• Roadmap
• Workshop with Jay
3
Safe Harbor Statement
The development, release, and timing of any features or functionality
described for our products remains at our sole discretion. This information
is merely intended to outline our general product direction and it should
not be relied on in making a purchasing decision nor is this a commitment,
promise or legal obligation to deliver any material, code, or functionality.
4
5
Options for Visualizing MongoDB Data
Custom Code +
Charting Libraries
ETL +
3rd Party BI Tools
MongoDB BI Connector +
3rd Party BI Tools
MongoDB
Charts
MongoDB
Compass
6
Wouldn't it be nice if...
You could visualize your MongoDB Data…
• without needing to write your own code
• without needing to move your data into a different repository
• without needing to wrangle with flaky ETL pipelines
• without needing to purchase and configure third-party tools
• without losing the richness of the Document Model
7
Introducing MongoDB Charts (Beta)
The fastest way to build
visualizations over your
MongoDB data
Built for the MongoDB
document model
Visualize live data
From on-prem or Atlas DBs
8
Charts Basic Concepts
• A data source is a reference to a MongoDB collection or view that
contains data you want to visualize.
• A chart is a visualization of data from a single data source.
• A dashboard is a collection of charts which you manage as a unit (name,
layout, sharing)
9
Document Model Support
• Type handling
• Polymorphic collections
• Nested documents
• Array reductions
10
Charting Capabilities
• Common chart types
• Aggregation functions
• Filtering
• Sample Mode
• Binning
• Sorting
Demo:
A Quick Tour of
MongoDB Charts
12
• Charts Beta is now available to download!
• No cost to use the beta
• Download and install instructions @ http://mongodb.com/charts
• Charts runs as a Docker container on a server of your choice
• Supported on any OS that runs Docker CE or EE (Linux, MacOS, Windows)
• Can be a physical server, cloud VM or even a laptop
Installing Charts
13
• Charts requires a MongoDB instance to run
• For storing metadata about users, data sources and dashboards
• Can be any MongoDB instance in your organization (including Atlas)
• Not included in the Charts Docker container
Installing Charts
14
• Installation process:
• Deploy or identify a MongoDB instance for the Charts metadata
• Install Docker on your target server
• Download the Charts Docker Compose file from MongoDB download center
• Create a Docker Secret containing the URI for your MongoDB instance
• Deploy Charts using docker stack deploy
• Create your first Charts user
• Access Charts from a web browser
Installing Charts
Getting Started!
Workshop time with Jay Gordon
Developer Advocate
Join Community Slack, #nycmug
https://community-slack.mongodb.com
Install Docker
https://www.docker.com/community-edition
MongoDB Charts Meetup - 7-24-2018
Create a directory
mkdir mongodb-charts
cd mongodb-charts
Download the Docker Swarm file
https://www.mongodb.com/download-center#charts
MongoDB Charts Meetup - 7-24-2018
MongoDB Charts Meetup - 7-24-2018
MongoDB Charts Meetup - 7-24-2018
Open a terminal and enter Docker into "Swarm" mode
docker swarm init
Sign up for MongoDB Atlas
https://www.mongodb.com/cloud/atlas
26
● MongoDB Charts stores metadata for the charts created.
● The Charts Docker instance does not provide this, we can easily
configure a free MongoDB replica set.
● This DOES NOT have to be the dataset we want to visualize, this is
for METADATA ONLY.
Why do we need an Atlas Cluster?
MongoDB Charts Meetup - 7-24-2018
MongoDB Charts Meetup - 7-24-2018
MongoDB Charts Meetup - 7-24-2018
MongoDB Charts Meetup - 7-24-2018
MongoDB Charts Meetup - 7-24-2018
MongoDB Charts Meetup - 7-24-2018
MongoDB Charts Meetup - 7-24-2018
MongoDB Charts Meetup - 7-24-2018
MongoDB Charts Meetup - 7-24-2018
echo
"mongodb+srv://myusername:mypassword@YOURCLUS
TERNAME.gcp.mongodb.net/test?retryWrites=true
" | docker secret create charts-mongodb-uri -
Create "secret" to pass through to Docker during build.
docker pull quay.io/mongodb/charts:v0.9.0
Pull down the "Charts" docker image
docker stack deploy -c charts-docker-compose-
v0.9.0.yml mongodb-charts
OUTPUT:
Creating network mongodb-charts_backend
Creating service mongodb-charts_charts
Launch the Charts container as a Docker Stack using the Compose file.
bash-3.2$ docker service ls
ID NAME MODE
REPLICAS IMAGE PORTS
ktdeldzds1lt mongodb-charts_charts replicated
1/1 quay.io/mongodb/charts:v0.9.0 *:80->80/tcp
bash-3.2$
Check our container is running
docker exec -it 
$(docker container ls --filter name=_charts -q) 
charts-cli add-user --first-name "<First>" --last-name "<Last>"

--email "<user@example.com>" --password "<Password>" 
--role "<UserAdmin|User>"
Create our user, fill in the contents in the <> brackets (remove the <>)
Log into Web Application - Open Browser and go to http://localhost
Click Datasources
Enter: mongodb+srv://demouser:demopass@prod-db-
dylzy.mongodb.net/sales?retryWrites=true
MongoDB Charts Meetup - 7-24-2018
MongoDB Charts Meetup - 7-24-2018
MongoDB Charts Meetup - 7-24-2018
47
Disclaimer
48
Disclaimer
49
Disclaimer
Find and stop your Docker process
bash-3.2$ docker ps
CONTAINER ID IMAGE COMMAND
CREATED STATUS PORTS NAMES
c0473e99300c quay.io/mongodb/charts:v0.9.0 "/bin/sh -c '/usr/bi…" 18
hours ago Up 18 hours 80/tcp mongodb-
charts_charts.1.tkjufwu8a8byc8rgewocba1sf
bash-3.2$ docker stack rm mongodb-charts
Find and stop your Docker process
bash-3.2$ docker stack rm mongodb-charts
Removing service mongodb-charts_charts
Removing network mongodb-charts_backend
bash-3.2$ docker ps
CONTAINER ID IMAGE COMMAND CREATED
STATUS PORTS NAMES
52
That's all!
• Create more charts!
• Share with us!
• Questions?
$25 MongoDB Atlas Coupon Code:
GOATLAS25

More Related Content

PPTX
Google cloud infrastructure workshop
PDF
Briney - Leveling Up Data Management - With Notes
PPTX
Web Browser Controls in Adlib: The Hidden Diamond in the Adlib Treasure Chest
PPTX
MicroService architecture_&_Kubernetes
PDF
Web App Prototypes with Google App Engine
PDF
PDF
CollegeDiveIn presentation
PPTX
A (XPages) developers guide to Cloudant - MeetIT
Google cloud infrastructure workshop
Briney - Leveling Up Data Management - With Notes
Web Browser Controls in Adlib: The Hidden Diamond in the Adlib Treasure Chest
MicroService architecture_&_Kubernetes
Web App Prototypes with Google App Engine
CollegeDiveIn presentation
A (XPages) developers guide to Cloudant - MeetIT

What's hot (20)

PPTX
Kubernetes for machine learning
PPTX
Ruby onrails overview
PDF
Getting started with BigQuery
PDF
Gatsby (Code.Talks) 2019
PDF
Serverless Big Data Architecture on Google Cloud Platform at Credit OK
PPTX
Azure Table Storage: The Good, the Bad, the Ugly (10 min. lightning talk)
PPTX
.NET Fest 2018. Martin Ullrich. MSBuild: Understand and Customize Your .NET B...
PDF
The Modern Data Team for the Modern Data Stack: dbt and the Role of the Analy...
PDF
JCConf 2015 - 輕鬆學google的雲端開發 - Google App Engine入門(下)
PDF
Google cloud platform Introduction - 2014
PDF
Faites évoluer votre accès aux données avec MongoDB Stitch
PDF
JCConf 2016 - Google Dataflow 小試
PDF
Responsive & Responsible: Implementing Responsive Design at Scale
PDF
Google Cloud Platform at Vente-Exclusive.com
PPTX
OrigoDB - Your data fits in RAM
PDF
Google Cloud platform: GKE with CI/CD using CircleCI and Flux
PDF
Google BigQuery
PPTX
Asp.Net MVC
PPTX
Domain specific languages in eclipse with Xtext (Zeus, UGent)
PPTX
Quick prototyping with VulcanJS
Kubernetes for machine learning
Ruby onrails overview
Getting started with BigQuery
Gatsby (Code.Talks) 2019
Serverless Big Data Architecture on Google Cloud Platform at Credit OK
Azure Table Storage: The Good, the Bad, the Ugly (10 min. lightning talk)
.NET Fest 2018. Martin Ullrich. MSBuild: Understand and Customize Your .NET B...
The Modern Data Team for the Modern Data Stack: dbt and the Role of the Analy...
JCConf 2015 - 輕鬆學google的雲端開發 - Google App Engine入門(下)
Google cloud platform Introduction - 2014
Faites évoluer votre accès aux données avec MongoDB Stitch
JCConf 2016 - Google Dataflow 小試
Responsive & Responsible: Implementing Responsive Design at Scale
Google Cloud Platform at Vente-Exclusive.com
OrigoDB - Your data fits in RAM
Google Cloud platform: GKE with CI/CD using CircleCI and Flux
Google BigQuery
Asp.Net MVC
Domain specific languages in eclipse with Xtext (Zeus, UGent)
Quick prototyping with VulcanJS
Ad

Similar to MongoDB Charts Meetup - 7-24-2018 (20)

PPTX
MongoDB.local Seattle 2019: Bringing Data to Life with MongoDB Charts
PPTX
Bringing Data to Life with MongoDB Charts
PPTX
Bringing Data to Life with MongoDB Charts - Guillaume Meister
PDF
MongoDB World 2018: Bringing Data to Life with MongoDB Charts
PPTX
MongoDB.local Sydney: Bringing Data to Life with MongoDB Charts
PDF
Bringing Data to Life with MongoDB Charts
PPTX
Bringing Data to Life with MongoDB Charts
PDF
MongoDB World 2018: Data Analytics with MongoDB
PDF
MongoDB .local Paris 2020: Devenez explorateur de données avec MongoDB Charts
PDF
MongoDB World 2019: Get the Best of Geo Data with MongoDB Atlas and MongoDB C...
PDF
MongoDB .local Houston 2019: Wide Ranging Analytical Solutions on MongoDB
PDF
MongoDB World 2019: Simplici-tea: Getting Started with MongoDB Charts on Atlas
PPTX
Data Analytics with MongoDB - Jane Fine
PPTX
An Introduction to MongoDB Compass
PDF
Introduction to mongo db
PPTX
Webinar: MongoDB Compass - Data navigation made easy
PPTX
Introduction to MongoDB a brief intro(1).pptx
PPTX
How to learn MongoDB for beginner's
PDF
Mongodb The Definitive Guide 3rd Edition 3rd Edition Kristina Chodorow Eoin B...
PDF
MongoDB - An Introduction
MongoDB.local Seattle 2019: Bringing Data to Life with MongoDB Charts
Bringing Data to Life with MongoDB Charts
Bringing Data to Life with MongoDB Charts - Guillaume Meister
MongoDB World 2018: Bringing Data to Life with MongoDB Charts
MongoDB.local Sydney: Bringing Data to Life with MongoDB Charts
Bringing Data to Life with MongoDB Charts
Bringing Data to Life with MongoDB Charts
MongoDB World 2018: Data Analytics with MongoDB
MongoDB .local Paris 2020: Devenez explorateur de données avec MongoDB Charts
MongoDB World 2019: Get the Best of Geo Data with MongoDB Atlas and MongoDB C...
MongoDB .local Houston 2019: Wide Ranging Analytical Solutions on MongoDB
MongoDB World 2019: Simplici-tea: Getting Started with MongoDB Charts on Atlas
Data Analytics with MongoDB - Jane Fine
An Introduction to MongoDB Compass
Introduction to mongo db
Webinar: MongoDB Compass - Data navigation made easy
Introduction to MongoDB a brief intro(1).pptx
How to learn MongoDB for beginner's
Mongodb The Definitive Guide 3rd Edition 3rd Edition Kristina Chodorow Eoin B...
MongoDB - An Introduction
Ad

More from Jay Gordon (6)

PPTX
Modernizing Your Application With Containers
PDF
Checklists ✅​ Good enough for NASA and Van Halen?​ ​ Good enough for your app!​
PPTX
Solving the Database Problem
PDF
On Being A Developer Advocate
PPTX
My First Cluster with MongoDB Atlas
PPTX
MongoDB and DigitalOcean Automation with Cloud Manager
Modernizing Your Application With Containers
Checklists ✅​ Good enough for NASA and Van Halen?​ ​ Good enough for your app!​
Solving the Database Problem
On Being A Developer Advocate
My First Cluster with MongoDB Atlas
MongoDB and DigitalOcean Automation with Cloud Manager

Recently uploaded (20)

PDF
Build a system with the filesystem maintained by OSTree @ COSCUP 2025
PPTX
Detection-First SIEM: Rule Types, Dashboards, and Threat-Informed Strategy
PDF
Architecting across the Boundaries of two Complex Domains - Healthcare & Tech...
PDF
Unlocking AI with Model Context Protocol (MCP)
PPTX
20250228 LYD VKU AI Blended-Learning.pptx
PDF
MIND Revenue Release Quarter 2 2025 Press Release
PDF
Per capita expenditure prediction using model stacking based on satellite ima...
PDF
Empathic Computing: Creating Shared Understanding
PDF
Review of recent advances in non-invasive hemoglobin estimation
PDF
Mobile App Security Testing_ A Comprehensive Guide.pdf
PDF
Diabetes mellitus diagnosis method based random forest with bat algorithm
PPTX
Understanding_Digital_Forensics_Presentation.pptx
PDF
Blue Purple Modern Animated Computer Science Presentation.pdf.pdf
PPTX
sap open course for s4hana steps from ECC to s4
PDF
Peak of Data & AI Encore- AI for Metadata and Smarter Workflows
PPTX
Programs and apps: productivity, graphics, security and other tools
PPTX
Effective Security Operations Center (SOC) A Modern, Strategic, and Threat-In...
PDF
TokAI - TikTok AI Agent : The First AI Application That Analyzes 10,000+ Vira...
PPTX
Big Data Technologies - Introduction.pptx
PPTX
MYSQL Presentation for SQL database connectivity
Build a system with the filesystem maintained by OSTree @ COSCUP 2025
Detection-First SIEM: Rule Types, Dashboards, and Threat-Informed Strategy
Architecting across the Boundaries of two Complex Domains - Healthcare & Tech...
Unlocking AI with Model Context Protocol (MCP)
20250228 LYD VKU AI Blended-Learning.pptx
MIND Revenue Release Quarter 2 2025 Press Release
Per capita expenditure prediction using model stacking based on satellite ima...
Empathic Computing: Creating Shared Understanding
Review of recent advances in non-invasive hemoglobin estimation
Mobile App Security Testing_ A Comprehensive Guide.pdf
Diabetes mellitus diagnosis method based random forest with bat algorithm
Understanding_Digital_Forensics_Presentation.pptx
Blue Purple Modern Animated Computer Science Presentation.pdf.pdf
sap open course for s4hana steps from ECC to s4
Peak of Data & AI Encore- AI for Metadata and Smarter Workflows
Programs and apps: productivity, graphics, security and other tools
Effective Security Operations Center (SOC) A Modern, Strategic, and Threat-In...
TokAI - TikTok AI Agent : The First AI Application That Analyzes 10,000+ Vira...
Big Data Technologies - Introduction.pptx
MYSQL Presentation for SQL database connectivity

MongoDB Charts Meetup - 7-24-2018

  • 1. Bringing Data to Life with MongoDB Charts Grigori Melnik VP, Products, Server and Enterprise Tools @gmelnik Jay Gordon Developer Advocate @jaydestro NYC MUG, Jul 24, 2017
  • 2. 2 Agenda • Why did we build Charts? • What is Charts? • Installing Charts • Roadmap • Workshop with Jay
  • 3. 3 Safe Harbor Statement The development, release, and timing of any features or functionality described for our products remains at our sole discretion. This information is merely intended to outline our general product direction and it should not be relied on in making a purchasing decision nor is this a commitment, promise or legal obligation to deliver any material, code, or functionality.
  • 4. 4
  • 5. 5 Options for Visualizing MongoDB Data Custom Code + Charting Libraries ETL + 3rd Party BI Tools MongoDB BI Connector + 3rd Party BI Tools MongoDB Charts MongoDB Compass
  • 6. 6 Wouldn't it be nice if... You could visualize your MongoDB Data… • without needing to write your own code • without needing to move your data into a different repository • without needing to wrangle with flaky ETL pipelines • without needing to purchase and configure third-party tools • without losing the richness of the Document Model
  • 7. 7 Introducing MongoDB Charts (Beta) The fastest way to build visualizations over your MongoDB data Built for the MongoDB document model Visualize live data From on-prem or Atlas DBs
  • 8. 8 Charts Basic Concepts • A data source is a reference to a MongoDB collection or view that contains data you want to visualize. • A chart is a visualization of data from a single data source. • A dashboard is a collection of charts which you manage as a unit (name, layout, sharing)
  • 9. 9 Document Model Support • Type handling • Polymorphic collections • Nested documents • Array reductions
  • 10. 10 Charting Capabilities • Common chart types • Aggregation functions • Filtering • Sample Mode • Binning • Sorting
  • 11. Demo: A Quick Tour of MongoDB Charts
  • 12. 12 • Charts Beta is now available to download! • No cost to use the beta • Download and install instructions @ http://mongodb.com/charts • Charts runs as a Docker container on a server of your choice • Supported on any OS that runs Docker CE or EE (Linux, MacOS, Windows) • Can be a physical server, cloud VM or even a laptop Installing Charts
  • 13. 13 • Charts requires a MongoDB instance to run • For storing metadata about users, data sources and dashboards • Can be any MongoDB instance in your organization (including Atlas) • Not included in the Charts Docker container Installing Charts
  • 14. 14 • Installation process: • Deploy or identify a MongoDB instance for the Charts metadata • Install Docker on your target server • Download the Charts Docker Compose file from MongoDB download center • Create a Docker Secret containing the URI for your MongoDB instance • Deploy Charts using docker stack deploy • Create your first Charts user • Access Charts from a web browser Installing Charts
  • 15. Getting Started! Workshop time with Jay Gordon Developer Advocate
  • 16. Join Community Slack, #nycmug https://community-slack.mongodb.com
  • 19. Create a directory mkdir mongodb-charts cd mongodb-charts
  • 20. Download the Docker Swarm file https://www.mongodb.com/download-center#charts
  • 24. Open a terminal and enter Docker into "Swarm" mode docker swarm init
  • 25. Sign up for MongoDB Atlas https://www.mongodb.com/cloud/atlas
  • 26. 26 ● MongoDB Charts stores metadata for the charts created. ● The Charts Docker instance does not provide this, we can easily configure a free MongoDB replica set. ● This DOES NOT have to be the dataset we want to visualize, this is for METADATA ONLY. Why do we need an Atlas Cluster?
  • 36. echo "mongodb+srv://myusername:mypassword@YOURCLUS TERNAME.gcp.mongodb.net/test?retryWrites=true " | docker secret create charts-mongodb-uri - Create "secret" to pass through to Docker during build.
  • 37. docker pull quay.io/mongodb/charts:v0.9.0 Pull down the "Charts" docker image
  • 38. docker stack deploy -c charts-docker-compose- v0.9.0.yml mongodb-charts OUTPUT: Creating network mongodb-charts_backend Creating service mongodb-charts_charts Launch the Charts container as a Docker Stack using the Compose file.
  • 39. bash-3.2$ docker service ls ID NAME MODE REPLICAS IMAGE PORTS ktdeldzds1lt mongodb-charts_charts replicated 1/1 quay.io/mongodb/charts:v0.9.0 *:80->80/tcp bash-3.2$ Check our container is running
  • 40. docker exec -it $(docker container ls --filter name=_charts -q) charts-cli add-user --first-name "<First>" --last-name "<Last>" --email "<user@example.com>" --password "<Password>" --role "<UserAdmin|User>" Create our user, fill in the contents in the <> brackets (remove the <>)
  • 41. Log into Web Application - Open Browser and go to http://localhost
  • 50. Find and stop your Docker process bash-3.2$ docker ps CONTAINER ID IMAGE COMMAND CREATED STATUS PORTS NAMES c0473e99300c quay.io/mongodb/charts:v0.9.0 "/bin/sh -c '/usr/bi…" 18 hours ago Up 18 hours 80/tcp mongodb- charts_charts.1.tkjufwu8a8byc8rgewocba1sf bash-3.2$ docker stack rm mongodb-charts
  • 51. Find and stop your Docker process bash-3.2$ docker stack rm mongodb-charts Removing service mongodb-charts_charts Removing network mongodb-charts_backend bash-3.2$ docker ps CONTAINER ID IMAGE COMMAND CREATED STATUS PORTS NAMES
  • 52. 52 That's all! • Create more charts! • Share with us! • Questions? $25 MongoDB Atlas Coupon Code: GOATLAS25