22 Questions
What is a common approach in NoSQL databases when retrieving data?
Using several queries to get the desired data
In NoSQL databases, what is a consideration for storing foreign values?
Storing actual foreign values along with the model's data
In document databases like MongoDB, where are comments often stored in relation to blog posts?
Within the blog post document
How is a database marked as supporting ACID properties or join operations?
If the documentation for the database makes that claim
What does it mean if a database supports ACID properties and join operations?
It claims to support them, but not necessarily fully similar to most SQL databases
What approach works better when reads are much more common than writes in a NoSQL database?
'Caching, replication and non-normalized data' approach
What is the primary consideration for storing foreign values in NoSQL databases?
Easy access to the foreign value without requiring another lookup
What does NoSQL stand for originally?
Non-SQL
What is a characteristic of retrieving data from document databases like MongoDB?
One might choose to store related data within fewer collections for easier retrieval
What is a key feature of NoSQL databases?
Rapid scalability for unstructured data sets
Why was the term 'NoSQL' coined in the early 21st century?
Triggered by the needs of Web 2.0 companies
What differentiates the data structures used by NoSQL databases from those used in relational databases?
They are different types such as key-value pair, wide column, graph, or document
What do most NoSQL stores prioritize over consistency?
Availability, partition tolerance, and speed
What are some barriers to NoSQL adoption mentioned in the text?
Low-level query languages and lack of standardized interfaces
What is a characteristic of NoSQL databases' transactions?
They generally lack true ACID transactions but offer eventual consistency
When did the general concept of 'NoSQL' emerge?
Around 2009 with the rise of non-relational, distributed data stores
How are key-value stores defined in the text?
Using the associative array as their fundamental data model and supporting various consistency models
'Graph databases' are designed for representing what type of data?
'Data represented as a graph with finite relations'
How are document stores described in the text?
Encapsulating data in standard formats and using unique keys to address documents in the database.
What is a common evaluation criteria for NoSQL databases mentioned in the text?
Throughput and commonly benchmarked using the YCSB benchmark.
What is a challenge mentioned for both NoSQL and relational databases in distributed transaction processing?
Data consistency
What is mentioned as helping prevent potential data loss in some NoSQL systems?
'Write-ahead logging'
Study Notes
Overview of NoSQL Databases
- NoSQL databases are chosen based on the problem they solve and are seen as more flexible than relational databases.
- Most NoSQL stores prioritize availability, partition tolerance, and speed over consistency.
- Barriers to NoSQL adoption include low-level query languages, lack of standardized interfaces, and existing investments in relational databases.
- NoSQL databases generally lack true ACID transactions but offer eventual consistency.
- Some NoSQL systems may experience data loss, but concepts like write-ahead logging help prevent it.
- Data consistency is a challenge for both NoSQL and relational databases in distributed transaction processing.
- The term "NoSQL" was coined in 1998, but the general concept emerged around 2009 with the rise of non-relational, distributed data stores.
- NoSQL databases can be classified into types like key-value stores, document stores, and graph databases.
- Key-value stores use the associative array as their fundamental data model and support various consistency models.
- Document stores encapsulate data in standard formats and use unique keys to address documents in the database.
- Graph databases are designed for data represented as a graph with finite relations, such as social relations or network topologies.
- NoSQL databases are evaluated based on throughput and commonly benchmarked using the YCSB benchmark.
Test your knowledge of NoSQL databases with this quiz that covers the principles and features of non-relational database design, including rapid scalability and schema-less structure.
Make Your Own Quizzes and Flashcards
Convert your notes into interactive study material.
Get started for free