the nosql movement @ dotnettoscana
TRANSCRIPT
![Page 1: The NoSQL movement @ DotNetToscana](https://reader035.vdocument.in/reader035/viewer/2022070315/554f7424b4c9052a518b460e/html5/thumbnails/1.jpg)
The NoSql Moviment
Matteo Baglini Software Developer, [email protected]://it.linkedin.com/in/matteobaglinihttp://github.cpom/bmatte
www.dotnettoscana.org
![Page 2: The NoSQL movement @ DotNetToscana](https://reader035.vdocument.in/reader035/viewer/2022070315/554f7424b4c9052a518b460e/html5/thumbnails/2.jpg)
2
NoSql
No more SQL, awesome!!!
![Page 3: The NoSQL movement @ DotNetToscana](https://reader035.vdocument.in/reader035/viewer/2022070315/554f7424b4c9052a518b460e/html5/thumbnails/3.jpg)
3
NoSql
Yes but, why?
![Page 4: The NoSQL movement @ DotNetToscana](https://reader035.vdocument.in/reader035/viewer/2022070315/554f7424b4c9052a518b460e/html5/thumbnails/4.jpg)
4
Modern Web Application
Requirements
![Page 5: The NoSQL movement @ DotNetToscana](https://reader035.vdocument.in/reader035/viewer/2022070315/554f7424b4c9052a518b460e/html5/thumbnails/5.jpg)
5
Content
High number of heterogeneous content
![Page 6: The NoSQL movement @ DotNetToscana](https://reader035.vdocument.in/reader035/viewer/2022070315/554f7424b4c9052a518b460e/html5/thumbnails/6.jpg)
6
Social
Many connected users
![Page 7: The NoSQL movement @ DotNetToscana](https://reader035.vdocument.in/reader035/viewer/2022070315/554f7424b4c9052a518b460e/html5/thumbnails/7.jpg)
7
Real-time
Immediately push info to the users
![Page 8: The NoSQL movement @ DotNetToscana](https://reader035.vdocument.in/reader035/viewer/2022070315/554f7424b4c9052a518b460e/html5/thumbnails/8.jpg)
8
BigData
Collection of large data sets
![Page 9: The NoSQL movement @ DotNetToscana](https://reader035.vdocument.in/reader035/viewer/2022070315/554f7424b4c9052a518b460e/html5/thumbnails/9.jpg)
9
Cloud
Scalable and on-demand architecture
![Page 10: The NoSQL movement @ DotNetToscana](https://reader035.vdocument.in/reader035/viewer/2022070315/554f7424b4c9052a518b460e/html5/thumbnails/10.jpg)
10
Metodologies
Dynamic requirements
![Page 11: The NoSQL movement @ DotNetToscana](https://reader035.vdocument.in/reader035/viewer/2022070315/554f7424b4c9052a518b460e/html5/thumbnails/11.jpg)
11
RDBMS
![Page 12: The NoSQL movement @ DotNetToscana](https://reader035.vdocument.in/reader035/viewer/2022070315/554f7424b4c9052a518b460e/html5/thumbnails/12.jpg)
12
RDBMS
Tables and relations Schema-full Pre-defined structure Transaction (even
Distributed) Consistency Declarative query
language (SQL)
![Page 13: The NoSQL movement @ DotNetToscana](https://reader035.vdocument.in/reader035/viewer/2022070315/554f7424b4c9052a518b460e/html5/thumbnails/13.jpg)
13
Developers
Is it the right tool?
![Page 14: The NoSQL movement @ DotNetToscana](https://reader035.vdocument.in/reader035/viewer/2022070315/554f7424b4c9052a518b460e/html5/thumbnails/14.jpg)
14
Alternative Database(NoSql)
![Page 15: The NoSQL movement @ DotNetToscana](https://reader035.vdocument.in/reader035/viewer/2022070315/554f7424b4c9052a518b460e/html5/thumbnails/15.jpg)
15
NoSql
Alternative structures Schema-free Non transactional Eventual consistency Programmatically query
routine Easy to scale-out Use case oriented
![Page 16: The NoSQL movement @ DotNetToscana](https://reader035.vdocument.in/reader035/viewer/2022070315/554f7424b4c9052a518b460e/html5/thumbnails/16.jpg)
16
NoSql Categories
![Page 17: The NoSQL movement @ DotNetToscana](https://reader035.vdocument.in/reader035/viewer/2022070315/554f7424b4c9052a518b460e/html5/thumbnails/17.jpg)
17
Key-Value Store Data (Value) was identified
by a unique Key The Value can be anything Primarly queriable by Key Examples: Amazon
SimpleDB, Azure Table Storage, Riak, Redis, Voldemort, MemcacheDB.
![Page 18: The NoSQL movement @ DotNetToscana](https://reader035.vdocument.in/reader035/viewer/2022070315/554f7424b4c9052a518b460e/html5/thumbnails/18.jpg)
18
Data contained into Documents that was identified by a unique Key
Document was stored as JSON object (properties and values)
Values can be scalars, arrays or complex types
Queriable by Key or MapReduce
Examples: MongoDB, CouchDB, RavenDB
Document Store
![Page 19: The NoSQL movement @ DotNetToscana](https://reader035.vdocument.in/reader035/viewer/2022070315/554f7424b4c9052a518b460e/html5/thumbnails/19.jpg)
19
Columns Store Data contained into Tables
and Column Families Each Column Families was a
set of key-value pairs Partial schema Queriable by Key, MapReduce
or custom langs Examples: Google BigTable,
Hbase, Cassandra
![Page 20: The NoSQL movement @ DotNetToscana](https://reader035.vdocument.in/reader035/viewer/2022070315/554f7424b4c9052a518b460e/html5/thumbnails/20.jpg)
20
Graph Store Data contained into Nodes
and Edges Each Node was a set of key-
value pairs Each Edge represent a
relationship Queriable by custom langs Examples: Neo4j, OrientDB,
Titan, Sones
![Page 21: The NoSQL movement @ DotNetToscana](https://reader035.vdocument.in/reader035/viewer/2022070315/554f7424b4c9052a518b460e/html5/thumbnails/21.jpg)
21
NoSql or
RDBMS ?
![Page 22: The NoSQL movement @ DotNetToscana](https://reader035.vdocument.in/reader035/viewer/2022070315/554f7424b4c9052a518b460e/html5/thumbnails/22.jpg)
22
Polyglot Persistence
![Page 23: The NoSQL movement @ DotNetToscana](https://reader035.vdocument.in/reader035/viewer/2022070315/554f7424b4c9052a518b460e/html5/thumbnails/23.jpg)
That’s all!