Introduction to NoSQL Databases With 100%
Verified Solutions
What is NOSQL? - ANSWER NoSQL is a class of database management system identified
by its non-adherence to the widely used relational database management system model
with its structured query language of SQL.
NOSQL has evolved to mean "Not Only" SQL
NOSQL has become prominent with the advent of web scale data and systems created
by Google, Facebook, Amazon, Twitter and others to manage data for which SQL was
not the best fit.
Why NoSQL databases? - ANSWER -The exponential growth of the volume of data
generated by users and systems
-The increasing interdependency and complexity of data, accelerated by the Internet,
Web 2.0, social networks
NoSQL databases are useful when working with a huge amount of data and nature of
data does not necessitate using a relational model for the data structure.
Advantages of NoSQL Databases - ANSWER Massive write performance.
Fast key value look ups.
Flexible schema and data types.
No single point of failure.
Fast prototyping and development.
Out of the box scalability-specially Horizontal scalability.
Vertical scalability - ANSWER Also called scaling up
Increasing server capacity.
, Adding more CPU, RAM.
Managing is hard.
Possible down times
Horizontal scalability - ANSWER -Scale-out, Adding servers to existing system with little
effort, aka Elastically scalable
-Bugs, hardware errors, things fail all the time.
-It should become cheaper. Cost efficiency.
-Shared nothing
-Use of commodity/cheap hardware
-Heterogeneous systems
NoSQL characteristics - ANSWER -Does not use SQL as its query language
NoSQL databases are not primarily built on tables, and generally do not use SQL for
data manipulation (but some have SQL like interfaces
-May not give full ACID guarantees
Usually only eventual consistency is guaranteed or transactions limited to single data
items
-Distributed, fault-tolerant architecture
Data are partitioned and held on large number of servers, and is replicated among these
machines: horizontal scaling
RDBMS: Pros and Cons - ANSWER Pros:
Many developers already know it.
Transactions and ACID make development easy.
Lots of tools to use.
Rigorous Design (Schema)
Verified Solutions
What is NOSQL? - ANSWER NoSQL is a class of database management system identified
by its non-adherence to the widely used relational database management system model
with its structured query language of SQL.
NOSQL has evolved to mean "Not Only" SQL
NOSQL has become prominent with the advent of web scale data and systems created
by Google, Facebook, Amazon, Twitter and others to manage data for which SQL was
not the best fit.
Why NoSQL databases? - ANSWER -The exponential growth of the volume of data
generated by users and systems
-The increasing interdependency and complexity of data, accelerated by the Internet,
Web 2.0, social networks
NoSQL databases are useful when working with a huge amount of data and nature of
data does not necessitate using a relational model for the data structure.
Advantages of NoSQL Databases - ANSWER Massive write performance.
Fast key value look ups.
Flexible schema and data types.
No single point of failure.
Fast prototyping and development.
Out of the box scalability-specially Horizontal scalability.
Vertical scalability - ANSWER Also called scaling up
Increasing server capacity.
, Adding more CPU, RAM.
Managing is hard.
Possible down times
Horizontal scalability - ANSWER -Scale-out, Adding servers to existing system with little
effort, aka Elastically scalable
-Bugs, hardware errors, things fail all the time.
-It should become cheaper. Cost efficiency.
-Shared nothing
-Use of commodity/cheap hardware
-Heterogeneous systems
NoSQL characteristics - ANSWER -Does not use SQL as its query language
NoSQL databases are not primarily built on tables, and generally do not use SQL for
data manipulation (but some have SQL like interfaces
-May not give full ACID guarantees
Usually only eventual consistency is guaranteed or transactions limited to single data
items
-Distributed, fault-tolerant architecture
Data are partitioned and held on large number of servers, and is replicated among these
machines: horizontal scaling
RDBMS: Pros and Cons - ANSWER Pros:
Many developers already know it.
Transactions and ACID make development easy.
Lots of tools to use.
Rigorous Design (Schema)