Successfully reported this slideshow.
We use your LinkedIn profile and activity data to personalize ads and to show you more relevant ads. You can change your ad preferences anytime.

The NoSQL movement @ DotNetToscana

748 views

Published on

Published in: Technology
  • Be the first to comment

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

×