SlamData - How MongoDB Is Powering a Revolution in Visual Analytics
-
Upload
john-de-goes -
Category
Software
-
view
2.898 -
download
0
Transcript of SlamData - How MongoDB Is Powering a Revolution in Visual Analytics
@slamdata @jdegoes
John A. De Goes — CTO SlamData Inc.“SlamData is my new favorite thing — a game changer!” — SlamData User
@slamdata @jdegoes
@slamdata @jdegoes
Advanced Data Science in the Cloud
@slamdata @jdegoes
@slamdata @jdegoes
SQL Analytics
@slamdata @jdegoes
@slamdata @jdegoes
[This Slide Intentionally Left Blank]
NoSQL Analytics
@slamdata @jdegoes
TheEight
Deadly Obstacles to NoSQL Analytics
@slamdata @jdegoes
CHaracteristics1. Generic Data Model
@slamdata @jdegoes
CHaracteristics2 Isomorphic Data Model
Data SQL²
{ "userId": 8927524, "profile": { "name": "Mary Jane", "age": 29, "gender": "female" }, "comments": [{ "id": "F2372BAC", "text": "I concur.", "replyTo": [9817361, "F8ACD164F"], "time": "2015-02-03" }, { "id": "GH732AFC", "replyTo": [9654726, "A44124F"], "time": "2015-03-01" }]}
SELECT comments[*].replyTo[*] FROM data
@slamdata @jdegoes
CHaracteristics3. Multidimensionality
Data SQL²
{"user_id": 928347234, "email": null, "events": [ {"impression":{ "ts": 912348934, "page": "index.html"}}]}
SELECT user_id, [events[_] WHERE events[_].ts < 9347234 ...] AS events FROM visitors
@slamdata @jdegoes
CHaracteristics4. Unified Schema/Data
Data SQL²
{"user_id": "[email protected]", "band_plays":{ "Squirrel Nut Zippers": 56, "Red Hot Tomatoes": 19, "Big Bad Voodoo Daddy": 102}}
SELECT band_plays{*:} AS artistName, SUM(band_plays{*}) AS votes FROM music GROUP BY band_plays{*:}
@slamdata @jdegoes
CHaracteristics5. Polymorphic Queries
Data SQL²
{"type": "click","link": "http://foo.com""timestamp": 123987172}
{"type": "impression","page": "index.html""timestamp": 92372}
SELECT COUNT(*) AS count, timestamp FROM data GROUP BY timestamp
@slamdata @jdegoes
CHaracteristics6. Post-Relational
Data SQL²
{"name": "John Doe", "blog_posts": [ {"post_id": "89934"}, {"post_id": "92371"} ]}
SELECT authors.name, posts.title FROM authors JOIN posts ON authors.blog_posts[*].post_id = posts._id
@slamdata @jdegoes
CHaracteristics7. Runtime Type Id & ConverSION
Data SQL²
{"email": ["[email protected]", "[email protected]"]}{"email": { "home": "[email protected]", "work": "[email protected]"}}
SELECT CASE TYPEOF email -- old: email stored in 2nd el: WHEN 'array' THEN email[1] -- new format: WHEN 'map' THEN email.work ELSE email END AS emailFROM users
@slamdata @jdegoes
CHaracteristics8. Structural Pattern Matching
Data SQL²
{"user_id": "[email protected]","events": [{"type": "purchase","timestamp": 12392342,"order_id": "2ffa34aa"},{"type": "click","timestamp": 92327123,"link": "http://foo.com"}]}
SELECT CASE user_events WHEN […, e1, e2, …] THEN e1.timestamp - e2.timestamp END AS deltaFROM users
@slamdata @jdegoes
● Open Source, Visual analytics for NoSQL
● Search, Explore, Refine, Analyze, and Visualize
● Embed interactive reports on live MongoDB Data
● Extended SQL support that runs 100% in-database
Market Response
@slamdata @jdegoes
● Launched version 1 just 13 months ago● 3,000 Users & Growing Fast● Many Fortune 500 companies
“Thank you for making such a wonderful product! SlamData helps us analyze data from
our local database for MongoDB, which consist millions of records, with thousands of
new records added on a daily basis.”
— SlamData User
Why MongoDB?
@slamdata @jdegoes
1. Modern Data Model
Why MongoDB?
@slamdata @jdegoes
2. Ad Hoc Queries
@slamdata @jdegoes
Why MongoDB?3. Mainstream NoSQL
@slamdata @jdegoes
Why MongoDB?4. Open Source
@slamdata @jdegoes
SlamData Open Source Projecthttp://slamdata.com (website)
http://github.com/slamdata/slamdata (code)
Characteristics of NoSQL Analytics Systemshttp://slamdata.com/whitepapers/characteristics-of-nosql-analytics-systems/ (whitepaper)
Quasar NoSQL Analytics Enginehttp://quasar-analytics.org (website)
http://github.com/quasar-analytics/quasar (code)
Quasar BI Connector for Tableau, Qlik, Cognos, etc.http://github.com/quasar-analytics/quasar-fdw (code)
Thank you for listening! Questions?
LIVE DEMO@slamdata @jdegoes
Appendix A