40
SQL gabriele lana [email protected] twitter: @gabrielelana http://joind.in/2938

Nosql

Embed Size (px)

DESCRIPTION

Keynote for the italian nosql day, I have tried to explain the meaning of the word "nosql" through an historical path

Citation preview

I’am going to tell you what

is this

thing...

SQL

SQLis not aboutrejecting

sql/relationaldatabases

SQLis not aboutembracingnon sql/

non relationaldatabases

then what is this all about?

let me tell you a story...

Hype cycle of technologyVisib

ility

maturity

technologytrigger

peak ofinflated

expectation

disillusionment

productivity

obsolescence

Visib

ility

maturity

technologytrigger

disillusionmentleads to

Hype cycle of technology

Visib

ility

maturity

but sometimes they come back

Visib

ility

maturity

volume => longevity (legacy)

new ideasare made ofold ideasapplied in

a differentcontext

an example

an example

an example

an example

???probably

somethingin between

All of this has happened before, and it will all happen

again...

ok, but this is the

nosql day!what are

you trying to say?

we should start from the beginning...

ui

busin

ess

storag

e• single user• data owned by applications• custom solution

dbms: the beginning

ui

busin

ess

storag

e

• every applications needs to develop his own solution...

dbms: the beginning

ui

busin

ess

lib

rary

• more robust solution

dbms: first libraries

FirstNode.SecondNode.attribute

FirstNodeat

trib

ute

SecondNode

attr

ibut

e

dbms: first libraries(navigational databases)

dbms: first libraries(navigational databases)

FirstNode.SecondNode.attribute

FirstNodeat

trib

ute

SecondNode

attr

ibut

e

• cobol: banking• m/mumps: health care

dbms: first libraries(key value databases)

RecordKey

attr

ibut

eRecordKey

attr

ibut

e

RecordKey

attr

ibut

e

RecordKey

attr

ibut

e

dbms: first libraries(key value databases)

RecordKey

attr

ibut

eRecordKey

attr

ibut

e

RecordKey

attr

ibut

e

• dbm: ken thompson-> QDBM-> tokyo cabinet

dbms: relational model

rdbms

business

network

application

application

application

• system-r• ingres -> postgres

• sybase• informix

dbms: relational model

rdbms

business

network

application

application

application

duplicated business logic

who is the data’s owner?

-

(mrtg/rrd)

rela

tional

navigational

tim

e

object.

oriented

network

key ->

value

(ldap

/ad)docum

ent

.

orie

nted

colum

n

orient

ed

dbms: relational server

rd

bm

s

application

application

application

busin

ess

• consistency• security• integrity• validity

dbms: relational server

rd

bm

s

application

application

application

busin

ess

relational model as a (declaratively) programmable business logic

rise the data driven design

impedance mismatch

cost o

f im

plem

entatio

n

context

purpose

dbms: relational model

rdbms

business

network

application

application

application

duplicated business logic

who is the data’s owner?

dbms: service oriented

application

application

application

network

dbms: service oriented

application

application

network

ROA: an architectural style where applications are responsible to deliver a service to the network (aka users and other applications)

SQLis not aboutrejecting

sql/relationaldatabases

SQLis about

rejectingthe notion

that there isone true and

centralized wayto store anykind of data

what about the future?

storagefor morespecific

data

what about the future?

knowledgeextraction

what about the future?

“REAL”relationaldatabases

Questions?