Big Data Visualizations & Drupal: Tales from the Trenches We’ve done some cool stuff. You Are Here
Big Data Visualizations & Drupal: Tales from the Trenches
We’ve done some cool stuff.
You Are Here
2Exygy -
Bay Area Metro(formerly Metropolitan Transportation Commission)
lowercase productions
Exygy
Jordan [email protected]@koplowicznsonshttps://github.com/koppieesq
Cat [email protected]://github.com/callaghanc
drupal.org/project/tableau_public
Advise our partners on setting strategic direction at the market, organizational, and product level.
Rethink experiences and create stunning products that delight users and solve their real problems.
Build world-class software via stable, scalable, and transferable code.
Exygy is the premiere consultancy for the
social sector.
AT EXYGY, WE…
3
Exygy - 4
● Who Are They?● History● Solutions (incl. Tableau)● Conclusions
Big Data atBay Area Metro
Exygy - 5
vitalsigns.mtc.ca.gov
Exygy - 6
History
● Built by someone else● Multiple developer handoffs● Tech Switching
Exygy -
Insert graphic that highlights
design phase from slide 6
Product Development Cycle
7
Esri
MapboxTechnology stack
Drupal
Pantheon
Socrata
Carto Highcharts
Exygy -
Insert graphic that highlights
design phase from slide 6
Product Development Cycle
8
Technology stack
Exygy - 9
Challenges
Challenges:● Switch from Mapbox to
Carto● Switch from Esri to
Socrata● Problems with Socrata
Exygy - 10
Challenges
Challenges:● Switch from Mapbox to
Carto● Switch from Esri to
Socrata● Problems with Socrata
Exygy - 11
Challenges:● Switch from Mapbox to
Carto● Switch from Esri to
Socrata● Problems with Socrata
Exygy - 12
Challenges
Challenges:● Switch from Mapbox to
Carto● Switch from Esri to
Socrata● Problems with Socrata
Not a number
"Median_hh_inc_placeofresidence_ia": null"median_hh_inc_placeofresidence_ia_perchg1970": null
"median_hh_inc_placeofresidence_ia_perchg1970": null
No null values
13Exygy -
Solution #1:Custom code
14Exygy -
Solution #1:Custom code
15Exygy -
Solution #2:Data Sub-Hosting
Import Data from Socrata to Carto
16Exygy -
Solution #2:Data Sub-Hosting
Better data handling
17Exygy -
Solution #2:Data Sub-Hosting
Database queries (postgres)
18Exygy -
Tell me some good news.
● Socrata: open data● Carto: Better maps &
data hosting● Highcharts: beautiful,
powerful, documented● Mixed media
19Exygy -
An Agile build process releases high-priority features early and often, providing immediate value.
Building using the Agile philosophy means that every release is a usable product.
Exygy -
Insert graphic that highlights
design phase from slide 6
Product Development Cycle
20
Technology stack
Drupal
Pantheon
Socrata
Carto Highcharts
Tableau
Exygy - 21
Tableau is:● Data analytics software● Desktop app● Web app● Server software● Cloud service
Exygy - 22
Pros:● Wide adoption internally● Easier for client● Rapid prototyping● Don’t need to wait for
devs
Cons:● More difficult to integrate● Less customization● Less responsive● Closed source,
proprietary ($$$)
CONFIDENTIAL 23Exygy -
FULLY AUTOMATED TABLEAU
Exygy - 24
Tableau Public
drupal.org/project/tableau_public
● Why another Tableau module?○ No updates since
2013○ No stable releases○ Not designed for
Tableau Public○ Maybe merge?
Exygy - 25
● Custom fields○ Defined fields = easier○ Compound fields = simpler
● Nodes, field collections, or any other entity
● Pass to JS: Drupal.settings
● JS: ○ Pull from Tableau Public○ Wrap in custom UI
Tableau Public
drupal.org/project/tableau_public
Exygy - 26
Advanced Usage
tableau_public_check($vars)tableau_public_add_viz($viz, &$sheets)Tableau Public
drupal.org/project/tableau_public
Exygy -
Insert graphic that highlights
design phase from slide 6
Product Development Cycle
27
1. Install module2. Create fields3. Populate fields4. Land reusable rocket
on ocean barge
DEMO TIME
Exygy -
Insert graphic that highlights
design phase from slide 6
Product Development Cycle
28
It’s 2017.
● Data wants to be free● Data wants to be
interactive● Server side rendering is
bad, mkay
So what?
Exygy -
Insert graphic that highlights
design phase from slide 6
Product Development Cycle
29
● Drupal is really good at being a platform
● Drupal plays really nice with outside JS libraries
● Drupal is not a good data preprocessor
● Drupal doesn’t need to own everything○ Leaflet vs. Carto○ MySQL vs. Socrata
So what?
CONFIDENTIAL 30Exygy -
Technology Thunderdome
Pros Cons
Esri Run your own server Run your own server
Socrata Youtube for Data Doesn’t play nice with data viz
Mapbox Cloud service Expensive, ugly
Carto Beautiful, Serves data Expensive
Tableau Easy for content editors,Does everything Closed source
Leaflet & OpenLayer Data hosted in Drupal Data hosted in Drupal
Highcharts Beautiful, flexible, great documentation Charts only