extent
分配给对象的连续存储单元
Extent是计算机存储系统中分配给对象的连续物理或逻辑存储单元。在文件系统领域(如ext4),extent通过记录连续区块地址和长度替代传统块管理机制,使元数据量减少95%。Oracle数据库使用extent作为基本存储分配单位,每个段由多个逻辑连续的extent构成,通过UNIFORM/AUTOALLOCATE模式管理空间扩展。分布式存储系统将其定义为跨设备连续地址范围,通过写入状态动态判定连续性边界。发明专利申请显示,extent机制已扩展到文件合并操作,通过元数据复制实现物理区块的虚拟拼接。
文件系统实现
ext4文件系统将extent定义为地址连续的数据块集合,通过ext4_extent结构体记录逻辑块范围(ee_block)、物理起始块(ee_start_hi/lo)及连续块数量(ee_len)。该机制相比ext2/3的块管理具备三项核心改进:
2019年技术解析显示,ext4通过mballoc组件实现类内存管理的伙伴算法,支持一次性分配16-32768个连续块。2024年文件合并专利利用extent元数据修改技术,在不移动物理数据的前提下完成文件逻辑拼接。
数据库存储管理
Oracle数据库将extent定义为表空间内逻辑连续的数据块集合,其分配遵循以下规则:
回收机制:TRUNCATE...DROP STORAGE可释放高水位线以上空间,ALTER TABLE DEALLOCATE UNUSED清除未使用extent
2014年技术博客指出,全表扫描操作以extent为单位顺序读取,相比随机访问提升IO效率30%以上。2017年存储结构解析显示,extent物理存储可能分散,但逻辑连续性保障了索引扫描性能。
分布式存储应用
2024年数据读写专利将extent扩展为跨存储设备的逻辑单元,单个extent在设备端表现为连续地址范围。其核心技术特征包括:
该方案在3节点集群测试中,将随机写吞吐量提升至传统方案的2.3倍。同期文件合并专利要求extent物理地址满足4K对齐,避免SSD写放大效应。
元数据管理机制
extent元数据管理系统包含三类关键技术:
2023年inode解析显示,文件删除后extent树的entries字段被清零,但底层数据块保留至被覆写。专利文档指出,extent物理地址的连续性特征使得数据恢复成功率较随机存储提升67%。
最新修订时间:2025-10-30 14:19
目录
概述
文件系统实现
参考资料