of NoSQL database • Example use cases • Data modelling • Explanation - sharding, replication, aggregation, performance, security • The SQL vs NoSQL myth • When to use NoSQL • Resource and References
refers to ‘anything’ outside the relational database paradigm - Gained traction in about 2006 with increase in volume of data think Amazon,Google, facebook
of RDBMS - Oracle 1979. WTF! Shift towards digital economy powered by internet Large numbers of concurrent users Increase in volume of data IoT – internet is connecting everything Cloud based system Everything is going mobile
schema • Use Joins to retrieve related data • Difficult and expensive to scale - scale vertically/up • Atomic transaction • Encourages normalisation of data • Enforce data integrity rules
Flexible/dynamic schema • Embedded documents over relationship/normalised data • Easy - scale horizontal/out • No Guarantee on Atomic transaction • Distributed • Mostly Open Source
★ Need for Agile development sprints and multiple iteration ★ Operational Issues and Scaling - Scaling out architecture instead of expensive, monolithic architecture ★ Speed and the need to have 24x7 availability
no more hardware than is required to meet the current load (b) leveraging less expensive hardware and/or cloud infrastructure; and (c) scaling on-demand and without downtime. Source: couchbase
bytes of data daily (2.5 x 1018 or 2 trillion million) => 10 million blu-ray disc • Past 3 years has accounted for over 90% • Mostly unstructured and semi structured
in love OrientDB • Amazon - Dynamodb • Google - Big Table • Ebay/ US National Archives - Mongo • Facebook/Instagram/Apple/Netflix - Cassandra • Paypal/verizon/Tesco • Airbus - Oracle NoSQL • Twitter - Flockdb
Data Structure Store, used as a database, a caching layer or a message broker.” - Redis website • Extremely fast • Strings or list storage • Persistence instead of memory • Replication • Multiple language clients • Supports transactions but no rollback Use cases: Cache systems, Queue, recent listing etc.
links Both document oriented and graph Dynamic schema and extended SQl syntax Inheritance and polymorphism Language API and REST Multi-master Replication
More of advanced key-value storage 4. Handle huge amount of information. 5. Increased granularity – being able to update an individual column 6. Cassandra uses SQL-like -> CQL