the dark side of nosql

20
The Dark Side of NoSQL John A. De Goes - @jdegoes CTO SlamData Inc. May 20, 2014 -- campDevOps

Upload: john-de-goes

Post on 20-Nov-2014

604 views

Category:

Technology


2 download

DESCRIPTION

NoSQL databases like MongoDB are making it easier than ever for developers to quickly build complex, agile applications that scale well. Unfortunately, the rise of NoSQL has dark side: data stored in NoSQL databases is invisible to traditional business analytics and intelligence apps. As a result, operations often spends a massive amount of time and effort developing complex pipelines to transform NoSQL data into a format compatible with traditional RDBMS. In this talk, John A. De Goes introduces SlamData, a new open source project designed to build a NoSQL BI application by extending the operations and data model of relational algebra. The result is backward compatible with SQL, but allows freeform analytics on semi-structured, heterogeneous, deeply nested data. John discusses the design of SlamData and highlights some of the issues involved in bringing the project to life.

TRANSCRIPT

Page 1: The Dark Side of NoSQL

The Dark

Side of NoSQLJohn A. De Goes - @jdegoes

CTO SlamData Inc.

May 20, 2014 -- campDevOps

Page 2: The Dark Side of NoSQL

What

is N

oSQ

L? NoSQL = non-relational, operational,

(generally) distributed

databases.

Page 3: The Dark Side of NoSQL

Battle

of th

e

Para

dig

ms

SQL

• Flat

• Schema-ful

• Uniform

• SQL QL

• Atomic

• Ops Power

• Old/Boring

NoSQL

• Nested

• Schema-less

• Non-Uniform

• Ad Hoc QL

• Varies

• Dev Power

• New/

Exciting!

Page 4: The Dark Side of NoSQL

The R

ise o

f N

oSQ

L

Google Trends“MongoDB vs. Oracle DB”

Page 5: The Dark Side of NoSQL

So what’s the #1

problem with NoSQL?It’s not scaling, migrations, training, etc.

Page 6: The Dark Side of NoSQL

A S

ad, C

om

mon

Sto

ry

1.Dev chooses NoSQL DB

2.App generates data3.PHB wants answers4.Dev / Ops morph into

report monkeys, or5.Dev / Ops build ETL

equivalent of Death Star

Page 7: The Dark Side of NoSQL

What’s the solution?[Drumroll…]

Page 8: The Dark Side of NoSQL

“BI fo

r N

oSQ

L”

Page 9: The Dark Side of NoSQL

• 100% SQL

• 100% NoSQL

• 100% Open Source

• Doors open June 23!!!

“So simple my cat could use it!”*

*Simulated quote from hypothetical user

Page 10: The Dark Side of NoSQL

HTML5 GUI

SlamSQL

SlamEngineMRA

Ria

k

MongoD

B

Etc

.

Page 11: The Dark Side of NoSQL

SlamData

Snazzy BI interface for NoSQL

Page 12: The Dark Side of NoSQL

SlamData

Snazzy BI interface for NoSQL

• Run SlamSQL on different backends and visualize

results

• Create static or interactive reports

• Publish reports online or send them by email

• Very simple now but will evolve into NoSQL BI

Page 13: The Dark Side of NoSQL

SlamSQL

SQL for NoSQL

SELECT C

OUNT(*)

AS cnt,

v

iews[*].

searchTe

rms[*] A

S term,

v

iews[*].

date AS

date

FROM pro

ducts

GROUP BY

views[*

].date,

views[*

].search

Terms[*]

Page 14: The Dark Side of NoSQL

SlamSQL

SQL for NoSQL

• Nothing new to learn

• Backward compatible with ANSI SQL

• New operators to work with heterogeneous, nested

data

• Substantially more composable & expressive than

SQL

• Fully-inferred structural typing

• Intuitive JS syntax for accessing nested data

Page 15: The Dark Side of NoSQL

MRA

Multi-Dimensional Relational Algebra

1.Extends relational algebra

2.Extends relational data model

3.Strictly more powerful than relational

1. Unlike most NoSQL QLs designed for operations!

4.Natively designed for schema-less data

Page 16: The Dark Side of NoSQL

SlamEngine

The Brainz of SlamData

SlamSQL Parser

Structural Type-Inferencer

Logical Plan Compiler

Ria

k Pl

anner

MongoD

B

Planner

Etc

.

Page 17: The Dark Side of NoSQL

SlamEngine

The Brainz of SlamData

1.Written in 100% Scala

2.Clean, modular, robust architecture

3.Geared at supporting many back-ends

4.MongoDB first supported backend

5.Early in development (doesn’t fully support MRA)

6.Rapid progress with growing team

7.Easy admin: install, point & launch!

Page 18: The Dark Side of NoSQL

Quest

ions?

Q: Why is all the text

slanted?

A: Because you should

be paying attention to

the speaker and not trying to read the slides!

Page 19: The Dark Side of NoSQL

Thank you!*

*Special thanks to Laura Crow & the awesome JumpCloud team for

making this talk possible on shorter-than-short notice!

Page 20: The Dark Side of NoSQL

MRA

More

deta

il th

an y

ou e

ver

wante

d t

o k

now

• [*] – array flatten / hidden deconstructing expansion

• {*} – object flatten / hidden deconstructing

expansion• [<] – array dimensional expansion

• {<} – object dimensional expansion

• [e…] – array dimensional aggregation

• {e…} – object dimensional aggregation

• INDICES A – Array index replicating expansion

• FIELDS A – Field name replicating expansion

• A GROUP BY B – dimensional contractionPlus all the standard and extended relational operators!