Meaning of NoSQL
-Limitations of RDBMS
-Specific Scenarios where NoSQL can be used
-NoSQL Database Categories
-Where NoSQL can be used?
-Where not to use NoSQL?
NoSQL : The Name
"No SQL" ? Don't use SQL language
"NoSQL" = "Not Only SQL"
"SQL" = Traditional relational DBMS
"NoSQL" = "No SQL" = Not using traditional relational DBMS
BASE characteristics of NoSQL DBs
-Sacrifices Consistency (CAP)
NoSQL Common Traits
-Developed at big internet companies
Querying NoSQL Databases
-Typically no query language
-Instead create procedural program
-Sometimes SQL kind of language is provided/supported
Would we still require DBAs with NoSQL ?
-Still need to address
-Backups & recovery
-Database level Tuning & optimization
What happens when things don't work at at Night ?
Whom will you call ?
DBA and Sys Admin need to be on board
Examples where NoSQL can be used ?
- Consistency not an issue
- Fast reads are very important
- Automobile directions
- User Reviews
Where not to use NoSQL
Business systems require atomic transactions
- Can't process an order without decrementing Inventory
- You can't register a credit without it's corresponding
No exceptions, no excuses
Below a certain threshold of concurrent usage,
NoSQL may be slower than relational
-Line of Business -> Relational
-Large, public (Consumer) facing sites -> NoSQL
-Complex Data Structures -> Relational
-Big Data -> NoSQL
-Transactional -> Relational
-Content Management ->NoSQL
Enterprise -> Relational
Consumer Web -> NoSQL
gr8... Nice info....