Databases Concept Map

Key Takeaways

Additional Concepts

object-oriented databases
document stores
key-value stores
wide-column stores
graph databases
ACID properties
distributed consensus algorithms
Halting Problem
Rice's theorem
CAP theorem
distributed systems
BASE model
Byzantine Fault Tolerance (BFT) algorithm
Eric Brewer
Werner Vogels
Leslie Lamport
Robert Shostak
Marshall Pease
Henry Gordon Rice
Alan Turing
strong consistency
high availability
partition tolerance

Questions and Answers

What are the main types of databases?

The main types of databases are relational databases, NoSQL databases, and object-oriented databases. Relational databases organize data into tables with relationships, while NoSQL databases handle unstructured or semi-structured data. Object-oriented databases store data as objects with attributes and methods.

What is the difference between relational and NoSQL databases?

Relational databases are structured around tables and use a schema to define relationships, offering strong consistency and complex querying capabilities. NoSQL databases are designed for unstructured and semi-structured data, prioritizing flexibility, scalability, and partition tolerance over strong consistency.

What is the CAP theorem in distributed systems?

The CAP theorem states that in a distributed system, it is impossible to simultaneously achieve all three properties of Consistency, Availability, and Partition tolerance. System designers must choose to prioritize two of these properties while sacrificing the third.

What is the Halting Problem in computer science?

The Halting Problem is a fundamental issue that states there is no algorithm that can determine whether a given program will halt or run indefinitely for all possible inputs. It highlights the limitations of computation and has implications for programming languages and formal verification.

What is Rice's theorem in computability theory?

Rice's theorem states that for any non-trivial property of partial functions, there is no general and effective method to decide whether a given algorithm computes a function with that property. It demonstrates the limitations of what can be algorithmically determined about computer programs.

What are the ACID properties in database transactions?

The ACID properties are Atomicity, Consistency, Isolation, and Durability. They ensure the reliability and consistency of transactions in a database system, maintaining data integrity and validity.

What is the BASE model in the context of databases?

The BASE model, which stands for Basically Available, Soft state, and Eventually consistent, is an alternative to the ACID model. It prioritizes availability and partition tolerance over strict consistency, making it suitable for distributed systems and NoSQL databases that require high scalability and fault tolerance.

Flashcards

Question

What are databases?

Answer

Databases are organized collections of data that allow for efficient storage, retrieval, and manipulation of information. They are used in various applications, such as websites and business systems, and can be relational, NoSQL, or object-oriented.

Question

What is an object-oriented database?

Answer

An object-oriented database is a type of database management system designed to store and manipulate complex data types as objects, which can contain both data and methods.

Question

What defines a relational database?

Answer

A relational database organizes data into tables that are related based on common fields, using structured query language (SQL) for data management.

Question

What is NoSQL?

Answer

NoSQL refers to a type of database management system that handles large volumes of unstructured or semi-structured data, offering flexibility and scalability without a fixed schema.

Question

What is the CAP theorem?

Answer

The CAP theorem states that it is impossible for a distributed data system to simultaneously provide more than two of the following three guarantees: Consistency, Availability, and Partition tolerance.

Question

What are the ACID properties?

Answer

ACID properties ensure the reliability of transactions in a database system, standing for Atomicity, Consistency, Isolation, and Durability.

Question

What does the BASE model stand for?

Answer

The BASE model stands for Basically Available, Soft state, and Eventually consistent, prioritizing availability and partition tolerance over strict consistency in distributed systems.

Other Concept Map Examples