The NoSQL movement @ DotNetToscana

648 views
543 views

Published on

Published in: Technology
0 Comments
1 Like
Statistics
Notes
  • Be the first to comment

No Downloads
Views
Total views
648
On SlideShare
0
From Embeds
0
Number of Embeds
3
Actions
Shares
0
Downloads
16
Comments
0
Likes
1
Embeds 0
No embeds

No notes for slide

The NoSQL movement @ DotNetToscana

  1. 1. Matteo Baglini www.dotnettoscana.orgSoftware Developer, Freelancematteo.baglini@gmail.comhttp://it.linkedin.com/in/matteobaglinihttp://github.cpom/bmatte
  2. 2. No more SQL, awesome!!! 2
  3. 3. Yes but, why? 3
  4. 4. Modern Web ApplicationRequirements 4
  5. 5. High number of heterogeneous content 5
  6. 6. Many connected users 6
  7. 7. Immediately push info to the users 7
  8. 8. Collection of large data sets 8
  9. 9. Scalable and on-demand architecture 9
  10. 10. Dynamic requirements 10
  11. 11. RDBMS 11
  12. 12.  Tables and relations Schema-full Pre-defined structure Transaction (even Distributed) Consistency Declarative query language (SQL) 12
  13. 13. Is it the right tool? 13
  14. 14. Alternative Database (NoSql) 14
  15. 15.  Alternative structures Schema-free Non transactional Eventual consistency Programmatically query routine Easy to scale-out Use case oriented 15
  16. 16. NoSqlCategories 16
  17. 17.  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. 17
  18. 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 18
  19. 19.  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 19
  20. 20.  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 20
  21. 21. NoSql orRDBMS ? 21
  22. 22. PolyglotPersistence 22

×