nosql introduction
DESCRIPTION
NoSQL: a new trend in data warehousing. quick introduction to NoSQL paradigma. Reference: Introduction to NoSQL by Martin FowlerTRANSCRIPT
NoSQL
Francesco ZitelliMay 2014
A new trend in data warehousing
What is NoSQL?
NoSQL is a category of database
management systems (DBMS)
NoSQL is non relational DB:
it means “Not only SQL”
BUT WHAT IS A
RELATIONAL DB?
AND WHAT IS SQL?
In a relational DB, information about an object
are scattered through different tables:
Image from: M. Fowler
SQL stands for structured query
language and it is used to
interrogate the relational DBs,
for example:
Select * from Member where Age > 30
Concept of NoSQL DBs
came with internet giants:
They needed a new kind of
DBMS able to deal with
enormous amount of data!
Why NoSQL?
BIG DATA!
Response time of relational DBs
is slower when we are dealing
with high volume of data
To overcome this we can
scale up the system…
But are we sure that
bigger is better?
Scale up Scale out
vs
Scaling up is expensive. But the problem
with scaling out is that SQL is even slower
in fetching all relevant data across
different machines...
SQL SQL
In NoSQL DBs, data object are
treated as aggregates and are
not spreaded across differents
tables. Similar aggregates are grouped
in the same cluster and located
in the same machine: this
reduces response time!
NoSQL DBs scales out better and
can leverage big data
They do not use SQL
language to query data
There is not a strict
schema for data structure
With NoSQL DBs, ACID
is not always guaranteed
But your application gain
in higher flexibility and
scalability
(atomicity, consistency,isolation, durability)
Better business
opportunities and
lower costs!
NoSQL are specialized to deal
with big amount of data
Most users still deal with
relatively compact data set:
conventional DBMS are still valid
Conclusion
We observe the coexistence
of different data models!
References[video] Introduction to NoSQL by Martin Fowler
[video] What is NoSQL ?