fastdfs 合并存储trunk配置

本文详细解释了合并存储技术是如何解决文件系统面对海量小文件存储和访问问题的,包括配置参数的说明及操作步骤。通过合理配置,可以有效提升文件系统的性能和稳定性。

摘要生成于 C知道 ,由 DeepSeek-R1 满血版支持, 前往体验 >

•合并存储是指将多个小文件存储到一个较大的文件(trunk file)中,这个trunk file的文件大小是固定的,比如64MB。
•小于一定size的文件才合并存储到trunk file中,否则在文件系统创建一个独立的文件来存储
•海量小文件带来的挑战:

—文件系统inode面临不够的风险

—文件系统定位文件的效率急剧下降

•合并存储可以有效地解决上面的两个问题,解决海量小文件的存储和访问问题。
•小文件合并存储是业界普遍采用的做法。

配置:

参数都在tracker.conf里

•所有参数均在tracker.conf中配置,storage server启动的时候,从tracker server上获取
•修改了合并存储相关参数后,需要先重启tracker server,然后再重启storage server
•use_trunk_file :是否使用合并存储,缺省关闭
•slot_min_size:为一个小文件分配的最小空间,缺省256字节。即使你上传的文件只有0字节,也会分配这么多空间
•slot_max_size:使用合并存储的最大文件大小,缺省为16MB,超过这个size的文件,不会存储到trunk file中,而是作为一个单独的文件直接存储到文件系统中
•trunk_file_size:trunk file大小,缺省为64MB。不要配置得过大或者过小,最好不要超过256MB。
•trunk_create_file_advance:是否提前创建trunk file,缺省关闭
•trunk_create_file_time_base:提前创建trunk file的时间点,比如可以指定半夜02:00创建
•trunk_create_file_interval:提前创建trunk file的时间间隔,单位为秒。如果一天创建一次,可以设置为86400
•trunk_create_file_space_threshold:创建trunk file需要达到的可用空间大小。如果空闲的trunk file空间大于本参数,则不会提前创建
•trunk_init_check_occupying:trunk server初始化加载空闲blocks时,是否检查对应trunk file,看这个block是否已被占用。缺省为false。启用了本参数,trunk server初始化时间将大大延长。除非必要,请不要打开本选项

•trunk_init_reload_from_binlog:忽略快照文件,只从trunk binlog中加载空闲block。缺省为false。只要当从v3.10以下版本升级到v3.10以上版本时,可能才需要打开本选项。


-------------------以上内容摘自官方群里的PDF-----------------------

自己补充一些说明:

修改完配置文件后,请用killall命令,将tracker和storage进程都结束掉,重新启动它们,并且如果有apache和nginx模块的,请重启一下nginx/apache服务。

合并存储的文件会在data/00/00/ 下从000001 文件开始,合并存储的文件不会产生新的文件,所以根据返回的文件ID,在存储目录下是找不到对应的文件的。合并存储并不影响fastdht排重效果。


转载于:https://my.oschina.net/cxz001/blog/132357

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值