4. don’t use the relational data model,
tend to be designed to run on a cluster
don’t have a fixed schema,
allow tostore any data in any record
seeks to solve the scalabilityandbig data performance issues
5. 5 Considerations When EvaluatingNoSQL
Data Model
Querymodel
Consistencymodel
API
Commercialsupport
13. Reasons to use NoSQL databases
Scale (horizontal)
Simpler datamodel (less joins)
Redundancy/Reliability
Schema less (no modelling or prototyping)
Rapid Development/coder friendly
Flexibility
semi-structured/ unstructured/Structured
Cheaperthanrelational/ commodity
Creatinga cachingLayer
Environment data/logs
Graphs/relationships
Distributedstorage
Realtime analysis
14. Challenges against NoSQL
ACID
Maturity
Analytics/ BI / Reporting
Ecosystem/tools/addons
search
Security
Data loss
duplicatedata(Normalisation)
Administration
Expertiseavailability
15. Relationalis not dead
Thisleads us to a world of Polyglot Persistence
16.
17. How Twitter UsesNoSQL
is heavily dependent on MySQL
users generate 12terrabytes of data a day - about four petabytes peryear
Twitter uses Scribe to write logs to Hadoop
Hbase is built on top of Hadoop
using Cassandra for atomic counting.
18. Does Stack Overflow use caching?
Redis for site cache and global cache
around 1,300,000 keys in our Redis cache
a few hundred read/writes a second to Redis
CPU usage on their dedicated Redis machine is0 – 1 percent
Memory usage is around 6G
19. Instagram loves Redis for caching complex objects
Pinterest uses Redis to store the graph of followers and
caching, HBase
LinkedIn uses Hadoop, Voldemort and Espresso.
Not Only Sql
There is no standard definition of what NoSQL means. The term began with a workshop organized in 2009,
Twitter uses Pig, a high-level language running on top of Hadoop. Yahoo created Pig for rapid Hadoop development,
Hbase is built on top of Hadoop and is designed for low-latency and data mutability. Twitter uses it to power its people search.
FlockDB is a real-time, distributed database. As mentioned above, it was created and open-sourced by Twitter. The company uses it for social graph analysis. It's still MySQL underneath
Cassandra, an open-source NoSQL database created by Facebook.