In EXT4, are "extent" and "block group" the same thing?
In EXT4 terminology, are "block groups" and "extents" the same thing ?
The suggested What do "extents" feature do in ext4 filesystem in linux? discussion doesn’t answer that question. While it explains clearly what "extents" are, it doesn’t talk about "block groups", and whether it’s the same thing or not (it’s not : see answer below).
In this post they discuss the structure of a block group :
According to Wikipedia, an extent is a range of blocks.
Are those two concepts the same thing, just using different names ?
The ext4 block groups are how ext4 is managing block allocation. There is a bitmap to manage the allocated/freed blocks for every group.
In archaic terminology this is a "cylinder group", but it has been a very long time since this related to a cylinder on a physical disk. In XFS this is an Allocation Group (AG).
An extent is a unit of block allocation for a single file, which represents a range of physically and logically contiguous blocks allocated to that file.