From: http://blog.sina.com.cn/s/blog_640233a30100r3u0.html

想解决缓存的性能问题,准备选用BerkeleyDB作为存储方式,但会有单个文件的问题。

BerkeleyDB的性能没有问题的,DB库非常紧凑,不超过500K,但可以管理大至256T的数据量。

操作系统能够达到多少的单个文件的,对于ext3系统,是根据格式化时选择的blocksize来决定的:

引用
Filesystem File Size Limit FilesystemSize Limit
ext2/ext3 with 1 KiB blocksize 16448 MiB (~ 16 GiB) 2048 GiB (= 2TiB)
ext2/3 with 2 KiB blocksize 256 GiB 8192 GiB (= 8 TiB)
ext2/3 with 4 KiB blocksize 2048 GiB (= 2 TiB) 8192 GiB (= 8TiB)
ext2/3 with 8 KiB blocksize (Systems with 8 KiB pages like Alphaonly) 65568 GiB (~ 64 TiB) 32768 GiB (= 32 TiB)

参考: http://www.suse.de/~aj/linux_lfs.html

也就是说,ext3系统对应的单个文件限制为:
1k 16G
2k 256G
4k 2T

我们怎么知道现在的分区是多大的blocksize呢?
一般而言,格式化时会自动选择一个合适的文件大小的,硬盘大则会选4k,很小的则选择1k的。


在正常的硬盘(600G)上:
[root@aslibra ~]# dumpe2fs /dev/sda3
dumpe2fs 1.35 (28-Feb-2004)
Filesystem volume name:  <none>
Last mountedon:          <notavailable>
FilesystemUUID:          8b556c99-cbe6-48f2-bbfe-fea1969e2557
Filesystem magicnumber:  0xEF53
Filesystem revision#:    1(dynamic)
Filesystemfeatures:      has_journalresize_inode filetype needs_recovery sparse_super large_file
Default mountoptions:    (none)
Filesystemstate:        clean
Errorsbehavior:          Continue
Filesystem OStype:      Linux
Inodecount:              87785472
Blockcount:              175546271
Reserved blockcount:    8777313
Freeblocks:              37366602
Freeinodes:              74134440
Firstblock:              0
Blocksize:              4096

虚拟机上分配的硬盘(7G)比较小:
[root@aslibra /]# dumpe2fs /dev/sda1
....
Blocksize:              1024

也就是说,基本上单个文件可以用完整个硬盘,空间不用太担心。

有兴趣看更多的文件格式比较:
http://en.wikipedia.org/wiki/Comparison_of_file_systems

文件系统ext3的文件大小限制相关推荐

  1. Linux各种文件系统支持单文件大小

    Linux各种文件系统支持单文件大小 File System                             Max File Size [Byte] Ext2 or Ext3 (1 kB b ...

  2. Linux各种文件系统(ext3,ReiserFS,jfs,xfs)的性能

    下面是原文: 以下文章是我自己翻译的,后面有英文的原文.不当之处,敬请指教. 应该不是太新的文章,但是我我是2006-07-12的上午才看到的.哎........ 2006-07-12 15:00 翻 ...

  3. Linux文件系统ext3与ext4主要区别

    很长一段时间以来,ext3是很多linux发行版默认的文件系统,现在ext4已经发布,并且已经有发行版开始使用ext4作为默认的文件系统了(其实最初的时候ext4是作为ext3的扩展,但是为了保证ex ...

  4. fat,fat32,ntfs,ext2,ext3等 文件系统说明

    A.FAT16(最大分区2GB,最大文件2GB ,最大容量) 在说明FAT16文件系统之前,我们必须清楚FAT是什么?FAT(File Allocation Table)是"文件分配表&qu ...

  5. linux文件系统什么格式转换,什么是Ext2,Ext3和Ext4以及如何创建和转换Linux文件系统...

    我用我的Fedora旧系统进行测试,我从ext2转换为ext3,EXT2 到ext4和ext3到ext4文件系统成功. 按照本指南任何人都可以巧妙地转换自己的文件系统,但我仍然想提醒你将在此之前,因为 ...

  6. linux机械硬盘 ext32,Linux磁盘分区管理--ext2和ext3文件系统逻辑结构分析

    Linux系统支持多种文件系统, 文件系统间的区别在于: 不同文件系统对同一块磁盘分区存储文件的结构不同. 举例来说相当于某些土豪买了500平住房: 有些工作狂会隔出1间卧室,1间客厅,1间厨房和5个 ...

  7. ext2和ext3文件系统知识

    Linux ext2/ext3文件系统使用索引节点来记录文件信息,作用像windows的文件分配表.索引节点是一个结构,它包含了一个文件的长度.创建及修改时间.权限.所属关系.磁盘中的位置等信息.一个 ...

  8. Red Hat日志文件系统-ext3

    概要: 在Red Hat Linux 7.2中,Red Hat首次支持日志文件系统ext3.ext3文件系统是对稳定的ext2文件系统的改进,有几项优点.本文概述这些优点,解释Red Hat公司对ex ...

  9. 深入理解ext4等Linux文件系统

    了解 ext4 的历史,包括其与 ext3 和之前的其它文件系统之间的区别. 目前的大部分 Linux 文件系统都默认采用 ext4 文件系统,正如以前的 Linux 发行版默认使用 ext3.ext ...

最新文章

  1. 机器学习笔记-线性模型
  2. 生成android证书
  3. dubbo笔记+源码刨析
  4. SQLServer:用户自定义数据类型用法
  5. 机器翻译软件从实验室走向市场
  6. script filename php,PHP $_SERVER['SCRIPT_FILENAME'] 与 __FILE__ 的区别
  7. sublime的package control安装注意
  8. C++面向对象编程笔记(一)
  9. 概要设计 英文_JavaScript 中的位运算和权限设计
  10. klouderr什么意思_bought是什么意思_bought的翻译_音标_读音_用法_例句_爱词霸在线词典...
  11. Windows2016 主从CA(一、企业根CA与独立从CA)
  12. mysql修改字符串_mysql中replace替换字符串更改方法
  13. Ghost 博客 SSL 证书过期的解决办法
  14. flowable6.4 并行网关 驳回 跳转 回退 多实例加签减签
  15. 如何高效学习(斯科特·扬 )(含思维导图)
  16. 几种常见web 容器比较
  17. anaconda channels 更换
  18. 利用PsTools删除注册表信息与利用devcon工具禁用设备
  19. ONAP — 编排的核心:模型驱动
  20. 大一怎么学好c语言_教你一招:计算机专业大一新生,如何能够有效学习 C 语言?...

热门文章

  1. python 仪表盘_如何使用Python刮除仪表板
  2. 自我接纳_接纳预测因子
  3. 2044. 统计按位或能得到最大值的子集数目
  4. leetcode 1128. 等价多米诺骨牌对的数量
  5. 如何使用TensorFlow构建简单的图像识别系统(第2部分)
  6. 西格尔零点猜想_我从埃里克·西格尔学到的东西
  7. 时间序列预测 预测时间段_应用时间序列预测:美国住宅
  8. 29/07/2010 sunrise
  9. LoadRunner11支持的浏览器小结
  10. Effective STL中文版pdf