22. Riak
● Key-value store
● Production support by Basho
● Text, images, JSON, XML
Use cases:
● Session data
● User preferences
● Shopping cart data
23. MongoDB
● Document store
● Production support by 10Gen
● XML, JSON, BSON
● Hierarchical tree data structure
Use cases:
● Event logging
● Blog platforms
● Realtime analytics
● E-commerce applications
24. Cassandra
● Column family store
● Production support by DataStax
Use cases:
● Event logging
● Blogging platforms
● Counters
● Expiry usage
28. NoSQL versus SQL
Pro:
● Horizontal scalability
● Stores any data
● High write or read throughput
Cons:
● Only stores data, no reporting or aggregation
● Eventually consistent
29. Related work
● Search engines, like ElasticSearch and Solr
● Blob / Object stores, like Ceph, OpenStack
Swift
● Analytics, like Hadoop, Storm
30. Use cases @Flusso
● Common solution to store large amounts of
documents and images. Known issue in
several projects.
● Manage state between mobile apps and
backend in aggregate store.
31. Summary
● Value of relational databases
● Two pitfalls:
○ Scalability
○ Mismatch OO and relation model
● NoSQL databases
○ Different modeling
○ Distribution models
○ CAP instead of ACID
○ 4 Types: Key-Value, Document, Column-Family,
Graph
● Demo's