When learning any innovative technology, a fresh list of jargon comes along for the ride. Articles and product documents are full of acronyms and unfamiliar words, making them hard to read. Here is a little glossary of the principal ssd terms used in the storage industry to help you.
Let’s start with the basics.
1. DRAM
DRAM stands for Dynamic Random-Access Memory. DRAM provides fast and temporary storage for data and program instructions that the computer’s processor is actively using. DRAM only retains data if the DRAM has power. That is, DRAM is non-persistent.
2. CPU
CPU stands for Central Processing Unit. It is often called the “brain” of a computer or computing device. The CPU is a hardware component that performs most of the processing inside a computer system, executing instructions, performing calculations, and coordinating the activities of other hardware components.
CPUs are found in many devices, including desktop and laptop computers, servers, smartphones, tablets, gaming consoles, and embedded systems. They are responsible for executing instructions, performing calculations, managing memory, and coordinating various system components to ensure the execution of tasks and applications.
3. NVMe
NVMe stands for Non-Volatile Memory Express. It is a communication protocol and interface specification explicitly designed for accessing solid-state drives (SSDs) and other non-volatile memory devices. NVMe is optimized for high-performance storage and is widely used in modern computing systems.
NVMe has revolutionized storage technology by delivering significantly faster performance than traditional storage interfaces. It is widely used in various applications, including consumer devices like laptops and desktops, enterprise servers, data centers, and high-performance computing systems.
It is important to note that NVMe requires both hardware and software support. The system must have a compatible NVMe-capable SSD and a motherboard with PCIe slots that support NVMe. The operating system and drivers must also support NVMe for proper functionality.
4. PCIe
The PCIe (Peripheral Component Interconnect Express) interface is a high-speed serial expansion bus standard that connects various peripheral devices to a computer system. It is commonly used for connecting graphics cards, solid-state drives (SSDs), network adapters, sound cards, and other expansion cards to the motherboard.
The PCIe interface has become the standard for high-speed peripheral connectivity in modern computer systems. Its high bandwidth, scalability, and compatibility suit various applications, from gaming and multimedia to enterprise-level computing and data centers. PCIe has significantly enabled faster and more efficient communication between the CPU and peripheral devices, contributing to overall system performance.
Okay, now its gets a bit tricky.
5. Computational Storage
Computational storage is a concept that combines storage and computation in a single device or system. It involves integrating processing capabilities directly into storage devices, such as solid-state drives (SSDs) or hard disk drives (HDDs), to offload compute-intensive tasks from the host system.
NVMe SSDs with computational storage technology install and work like any other SSD, but there are a few things to know to take full advantage of their capabilities at scale. Learn more.
6. Transparent Compression
Data compression happens without the host, or the application needing to take any action to initiate or trigger the compression. The controller will compress the data before it writes to the NAND and then decompress on a read -automatically. There is no integration, the substitution of libraries, modifications to the OS, software installation, application modifications, or user commands to make this happen. Hence, “transparent”. Learn more.
7. NAND
NAND is shorthand for NAND Flash Media or NAND Flash Memory. Flash memory is an electronic non-volatile computer memory storage medium that can be electrically erased and reprogrammed. Flash memory does not require power to retain data, hence “non-volatile.”
8. Capacity utilization or fill rate
This is the threshold for the maximum percent of the physical storage capacity that a user fills on a given drive or system. In an enterprise or data center environment, the operations teams carefully monitor how much of the available storage capacity is available to manage performance, manage reliability, and plan for bringing additional capacity online. The lower the threshold, the higher percentage of the purchased capacity held in reserve, which translates into higher data storage costs.
9. Relational Database
A relational database is a type of database that organizes and stores data in a structured manner using tables, rows, and columns. The relational model also supports a set of operations known as structured query language (SQL) to manipulate and query the data stored in the database. SQL provides a standardized way to interact with the database, allowing users to perform tasks such as inserting, updating, and deleting data and retrieving information through queries.
Relational databases have been widely used in various applications and industries, from business applications and e-commerce platforms to banking systems and scientific research. Examples of popular relational database management systems (RDBMS) include MySQL, Oracle Database, Microsoft SQL Server, and PostgreSQL.
10. Online Transaction Processing (OLTP)
It refers to a class of systems and applications designed to facilitate and manage real-time transactional processing. OLTP systems are primarily used for day-to-day operational tasks that involve creating, modifying, and retrieving small units of data in a database.
11. Hybrid Transactional-Analytical Processing (HTAP)
HTAP is an approach that combines both transactional and analytical processing capabilities in a single system. It aims to bridge the gap between traditional transactional systems, optimized for fast data writes and real-time operations, and analytical systems, designed for complex data analysis and reporting.
In HTAP systems, transactional and analytical workloads coexist and operate on the same dataset. This eliminates the need for separate systems for transaction processing (OLTP) and analytical processing (OLAP), reducing data movement and providing real-time insights.
HTAP has gained significance with the advent of in-memory computing, distributed systems, and advanced data processing frameworks. It is particularly relevant when real-time analytics and fast transaction processing, such as financial services, e-commerce, telecommunications, and IoT (Internet of Things) applications, are critical.
12. Write Amplification (or Write Amplification Factor)
An SSD term is about the amount of data that is actually written to the drive for every gigabyte of data sent from the host. After data is written to the NAND, the data will get moved around as the controller deals with its internal house-cleaning to remove deleted data and open space for new data to be written. Write Amplification has two significant effects on the SSD:
Since the NAND media has a defined number of times that it can be programmed and erased, a higher Write Amp translates into lower endurance and a shorter drive life span.
Since background writes consume time and bandwidth, higher Write Amp results in lower write performance by the SSD.
13. Namespace
An NVMe term. This is effectively a logical partition on your NVMe SSD.
14. Extended capacity or capacity multiplier
This is formatting the drive to a logical capacity that exceeds its user capacity. Or, in other words, setting the drive up to store more data than the physical amount of NAND on the drive.
15. Thin provisioned namespace or extended namespace
It ties right back into that extended capacity. This is a namespace with a larger logical capacity than the physical capacity set up behind it. Namespace size is more significant than namespace capacity in the NVMe terminology.
16. IT infrastructure management and monitoring tools
Server storage, networking, monitoring, and management tools (commercial examples include Nagios, Prometheus, and many others) that allow you to allocate resources and track how your infrastructure is performing.
Did I miss any? I am sure I did. Please add them in the comments, and I will provide a definition 😊
Thank you for reading!