“什么是文件系统”。文件系统是对一个存储设备上的数据和元数据进行组织的机制。而这个过程就是格式化,格式化就是将分区划分成一格一格的block及多少个Inode可以使用,而每个block就是文件系统存取资料的最小单位,所以才可以将资料存放在这些block中,而且每多个 block 会组成一个 group。如下图所示:除了boot sector (引导扇区)之外,第一个block 称为 super block 用来记录这个分区共有多少个block和inode 已经使用、多少block和inode等信息;如果super block 损坏,这个分区将无法访问,所以每隔一段block 就会备份一次这个super block
[root@nfs data]# mkfs -t ext4 /dev/sdb1
......
81 block groups #表示这个分区被划分出了81个block group;
32768 blocks per group, 32768 fragments per group #表示每个group中有32768个block;
8096 inodes per group #表示每个group中有8096个inodes
Superblock backups stored on blocks: #下面的数值就是备份super block 所在的block的位置。
32768, 98304, 163840, 229376, 294912, 819200, 884736, 1605632
......
- SAS/SATA硬盘文件系统选择
a.reiserfs大量小文件业务首选reiserfs(100K以内)。
b.xfs有的门户的数据库MysQL业务。
c.ext4视频下载,流媒体,数据库,小文件业务也OK,可以用默认的。
d.ext2没有日志,蓝汛的cache业务,CDN网站加速服务的。
常规应用:
对于Centos5.x系列,常规应用就选默认的ext3文件系统即可。
对于Centos6.x系列,常规应用就选默认的ext4文件系统即可。
对于Centos7-x系列,常规应用就选默认的xfs文件系统即可。
注意:如果服务器数量少,怎么选择都可以。
如果海量服务器,考虑维护成本和性能,选一个折中。
- SSD文件系统选择
ext4/reiserfs可以作为SSD文件系统,但未对SSD做优化,不能充分发挥SSD性能,并影响SSD使用时间。
btrfs对SSD作了优化,mount通过参数启用。但Btrfs仍处于实验阶段,生产环境谨慎使用。
JFFS2/Nilfs2/YAFFS是常用的flash file system,在嵌入式环境广泛应用,建议使用。性能目前还未作测试评估。
- 选择小结:
a.Centos默认的文件系统都是比较优秀的。
b.xfs,reiserfs需要单独安装。默认不支持的。海量服务器使用多种文件系统
维护可能不方便。
c.大并发并不是过多的做磁盘系统的优化,而是在架构前端增加缓存,存储数据库的前端增加缓存,这是架构师的能力。