What Are Containers?
Containers are logical constructs of digital space that contain one or more volumes. When all the volumes in a container use the APFS file system, the volumes share the space available in the container. A volume that needs additional storage space can use free space from another container.
Volume vs. Partition
A volume is a self-contained storage area that a computer can read. Common types of volumes include CDs, DVDs, SSDs, and hard drives. When a Mac computer recognizes a volume, it mounts it on the desktop so that you can access the data it contains. Volumes can be divided into one or more partitions, which take up space on the hard drive. A volume can span multiple physical discs or drives, but a partition is more restricted. Unlike partitions, volumes can use free space from anywhere, which wasn’t possible before APFS.
Logical Volumes
A more abstract type of volume, known as a logical volume, isn’t limited to a single physical drive. It can house as many partitions and physical drives as needed. A logical volume allocates and manages space on one or more mass storage devices. It separates the operating system from the physical devices that make up the storage medium. For example, in RAID 1 (mirroring), multiple volumes appear to the OS as a single logical volume. Both hardware controllers and software can create RAID arrays. In both cases, the OS isn’t aware of what’s physically making up the logical volume. It could be one drive, two drives, or many drives. The number of drives making up the RAID 1 array can change over time, and the OS is never aware of these changes since it sees only a single logical volume. With a logical volume, not only is the physical device structure independent of the volume the OS sees, but a user can also manage it independently of the OS. This setup allows for a more flexible data storage system.
Logical Volume Managers (LVMs)
Logical volumes can have partitions located on multiple physical storage devices. Logical Volume Managers (LVMs) make these systems easier to use. An LVM manages storage arrays, allocates partitions, creates volumes, and controls how the volumes interact with each other. Since Apple introduced OS X Lion, macOS has used an LVM system known as Core Storage. It was first used to provide the full-disk encryption system used by the Apple File Vault 2 system. When OS X Mountain Lion was released, the Core Storage system gained the ability to manage a tiered storage system that Apple called a Fusion drive.