Storage Devices Flashcards
What is a Block Device?
A peripheral storage device, such as an HDD or SSD.
TRUE/FALSE: Hard Disk Drives are the last remaining mechanical component of modern computers.
TRUE.
Describe wear-leveling.
The spreading of writing operations across all memory cells to ensure no cell wears out immediately from overuse.
What is erasure coding?
A data-protection technique to ensure bits can be recovered even if one memory cell degrades. Often simply done through repeated memory fragments and storage.
What is bad-block tracking?
The process of keeping track of blocks that have gone bad (usually from overuse), so we can avoid them.
TRUE/FALSE: Optimal scheduling optimizes on throughput.
FALSE: Optimal scheduling is modular; It can be defined by the user to optimize for latency or fairness instead, for example.
TRUE/FALSE: Optimal scheduling uses Dynamic Programming to achieve efficient and complete scheduling.
FALSE: Optimal scheduling is NP-complete, since we don’t know what comes in, and to achieve a decent approximation, a Greedy approach is used.
What is I/O Q-Depth?
The Queue-Depth for currently waiting I/O operations.
TRUE/FALSE: Random writes can be made sequential using a log-structured strategy.
TRUE.
What is Direct I/O?
The movement of data directly from the source buffer to a memory device (we did this in project 4!).
What is Scatter/Gather I/O?
A single read/write request being able to collect data blocks from many disjoint locations.
TRUE/FALSE: We perform Read/Write amplification to improve our I/O efficiency.
FALSE: Read-write amplification is bad! We over-perform due to block nature of read/write.
What’s the major tradeoff with compression?
Performance for capacity.
What is sharding?
When a logical chunk of data is split into smaller chunks. Used for when a database contains too much data for a single machine to handle efficiently.
What is replication?
Data replication stored for recovery purposes.
What is RAID?
Shadow Legends. Also the Redundant Array of Independent Disks. Data storage technology that combines many disks into a single logical unit.
What are the three types of Kernel Abstractions?
A device driver, a kernel buffer, and a file system.
What did we implement in Project #4?
A file system.
TRUE/FALSE: A file system is subject to block and alignment constraints.
FALSE: While direct writing to memory is subject to these constraints, the abstraction performed makes it unconstrained in this manner.
What does a Volume Manager do?
It abstracts access to storage devices for user interaction.
TRUE/FALSE: A Key/Value store is an accurate general descriptor of many databases.
TRUE, though not for all databases.
What is a database?
A format of data organization that defines relations and operations to query data.
What is Computational Storage?
Devices that integrate processing and computation on storage devices to reduce CPU load.
What is a CSD?
Computational Storage Device. Device where memory is stored (starts with an SSD) but can have embedded CPU cores to boot. Effective for training large models.