NoSQLDatabase Flashcards
What are the three key elements that index BigTable’s map?
Row key, Column key, and Timestamp
What is a row key in BigTable?
An arbitrary string (10-100 bytes) that uniquely identifies a row
What is the purpose of column families in BigTable?
They are basic units of access control and group together columns of the same data type for compression
What is the maximum number of column families allowed in a BigTable table?
100
How does BigTable divide tables for scalability?
Into tablets (row ranges) of about 100-200 MB
What is the format of BigTable’s storage files?
SSTable
What are the three levels in BigTable’s location hierarchy?
- Root tablet in Chubby 2. METADATA tablets 3. SSTable identifiers
What two systems does BigTable rely on for core functionality?
Google File System (GFS) for storage and Chubby for distributed lock management
Where does BigTable store recently committed updates?
In memory in a sorted buffer called memtable
What is BigTable’s main disadvantage?
Cannot handle transactions (no ACID properties), making it unsuitable for banking and e-commerce
What are the three key priorities of Amazon DynamoDB?
High availability, scalability, and distributed key-value storage
How does DynamoDB achieve incremental scalability?
Through consistent hashing with virtual nodes
What is the purpose of virtual nodes in DynamoDB?
They distribute load evenly and handle node failures/additions effectively
How many nodes is each data item replicated to in DynamoDB?
N hosts (N is configurable per instance)
What is a preference list in DynamoDB?
The list of nodes responsible for storing a particular key