Versions Compared
Version | Old Version 8 | New Version Current |
---|---|---|
Changes made by | ||
Saved on |
Key
- This line was added.
- This line was removed.
- Formatting was changed.
1- Vertical scaling vs Horizontal scaling
2- SQL vs NoSQL
When to consider a NoSQL datastore ?
NoSQL datastore when | Relational database when |
---|---|
High volume of workloads (need latency in milliseconds while performing millions of transactions per second) | Workload volume fits within thousands of transactions per second |
Data is dynamic and frequently changes | Data is highly structured and requires referential integrity |
Relationships can be de-normalized data models | Relationships are expressed through table joins on normalized data models |
Data is expressed without table joins | Data with complex queries and reports |
Data is replicated across geographies and requires finer control over performance, availability and consistency. | Data is centralized or can be replicated regions asynchronously |
For commodity hardware (app deployed in public clouds) | High-End hardware (app deployed to large and high-end hardware) |
When to use which types of NoSQL DB ?
Key-Value DB |
| Dynamo DB, Redis, BerkleyDB. | Pros | Cons |
---|---|---|---|---|
Document Stores |
| MongoDB, Couch, Lotus Notes. | ||
Wide-Column Store |
| Google’s Bigtable, Cassandra, HBase. | ||
Graph DB |
| Neo4j, OrientDB, Allegrograph. |
Master-slave replication
Read replicas
Consistency models
Database Sharding
Web Tier Stateless
Multiple Data Centers
Fault Tolerance
Gossip Protocol
Multicasting
On this page.
toc