为了账号安全,请及时绑定邮箱和手机立即绑定

Windows大量小文件存储方案

Windows大量小文件存储方案

翻过高山走不出你 2018-12-07 00:08:41
内部系统,图片做存档使用,目录是/业务Id /工号/日期/小时/   只保留一个月的存档。 磁盘总大小约14T, 有一个服务负责接收文件存储 另一个服务负责删除日期为31天前的文件夹, 现在发现删除非常缓慢,甚至在删除的时候影响存储的服务 有没有好的解决办法?
查看完整描述

7 回答

?
慕勒3428872

TA贡献1848条经验 获得超6个赞

不知道你说的缓慢是怎么个缓慢的: 1、是因为要删除的文件很多,删除的时候缓慢? 2、是因为要检索哪些是过期的文件,从而导致缓慢? 如果是第一个原因,这个还真的没办法,真这样,建议你用数据库来存储文件最好。 如果是第二个原因,你可以在接收文件服务里把所接收的文件信息(路径、日期)存储到数据库,然后在第二个服务里从数据库检索过期文件再执行删除操作,同时删除数据库里的相应记录。
查看完整回答
反对 回复 2018-12-09
?
LEATH

TA贡献1936条经验 获得超6个赞

把31天前的文件夹重命名为最新日期,覆盖原文件。
查看完整回答
反对 回复 2018-12-09
?
largeQ

TA贡献2039条经验 获得超7个赞

想法很赞,但是我们每个文件夹中的文件个数不是固定的,文件和文件按照时间顺序有一定的逻辑性。 所以这种覆盖的方法除了无法覆盖完全外还会打乱这个逻辑。
查看完整回答
反对 回复 2018-12-09
?
元芳怎么了

TA贡献1798条经验 获得超7个赞

@王者永乐: 当然,你最了解你的需求,而我只是泛泛的提供最佳的磁盘操作方式,因此你还是需要根据你的需求结合磁盘读写的特点来考虑解决方案。我这里还可以提供一种常用的方式,建立一个大的磁盘文件,将小文件按照一定的逻辑存储在这个大的磁盘文件上,这个大的磁盘文件可以根据业务Id或者日期来划分。
查看完整回答
反对 回复 2018-12-09
?
慕沐林林

TA贡献2016条经验 获得超9个赞

如果是我,就直接分32个分区,每天的图片放到一个分区,对不需要的分区进行快速格式化,这些分区循环使用,这样的速度应该很快,也不会因为长时间访问硬盘影响到其它服务
查看完整回答
反对 回复 2018-12-09
?
婷婷同学_

TA贡献1844条经验 获得超8个赞

简单粗暴,总感觉32个分区的画面太美,不忍直视。 不过话说回来,因为文件每天的大小有较大差别。比如周六日就没有多少,而工作日是周六日三到四倍,如果分区的话,每个分区的最小容量我都得按照最大业务量去设计,这样算下来担心磁盘空间不足。
查看完整回答
反对 回复 2018-12-09
?
白猪掌柜的

TA贡献1893条经验 获得超10个赞

硬盘1T才多少钱?简单粗暴的就是最有效的方法了。你大不了多买10T硬盘就是了。
查看完整回答
反对 回复 2018-12-09
  • 7 回答
  • 0 关注
  • 869 浏览

添加回答

举报

0/150
提交
取消
意见反馈 帮助中心 APP下载
官方微信