xy.
发表于 2023-7-17 16:02
说点无关的: 16 亿个数据是不是不太适合交给文件系统管理了, 就算成功传过去了读起来也很慢啊...
可以合并成 4M 的块, 然后自己维护索引
对应你需求的正解很早有人说了, 就是 tar
Doomslang
发表于 2023-7-17 16:10
xc11748
发表于 2023-7-17 16:16
ltzyID 发表于 2023-7-17 16:01
楼主的需求应该是将这1.98T的诸多文件,拷贝到另一台linux服务器上使用,
一个一个文件的拷贝数量巨大的小 ...
这16亿个文件是数据产品,放linux服务器上做发布使用,因为要发给多个客户,还没来得及做数据库或对象存储来管理,临时采用压缩打包成一个文件的方式。之前采用零碎文件的方式拷贝到移动硬盘里,整整花了2天。
foxsheep
发表于 2023-7-17 16:19
直接转成虚拟磁盘?
xc11748
发表于 2023-7-17 16:21
xy. 发表于 2023-7-17 16:02
说点无关的: 16 亿个数据是不是不太适合交给文件系统管理了, 就算成功传过去了读起来也很慢啊...
可以合并 ...
这是下一步要做的事情。目前是需要拷贝到linux服务器上做发布使用,如果打包成4M大小分块,技术上可行,主要是缺少发布服务,需要现开发,时间上来不及。后期会选择数据库或对象存储的技术路线
ntuchenxy
发表于 2023-7-17 16:23
可以试试先打包一点,然后往压缩包里逐渐添加文件,手动是不现实了,找找API接口吧
iooo
发表于 2023-7-17 16:27
这么多小文件,最好分卷处理,开发来不及,写个脚本总有吧
ror
发表于 2023-7-17 16:31
这个问题让统计出有16亿个文件的人搞就行,别老想着用图形界面
lasx
发表于 2023-7-17 16:41
本帖最后由 lasx 于 2023-7-17 16:42 编辑
tar 分卷打包。tar -czf - 文件夹 | split -b 2048m -d - 文件名.tar.gz
自己调整文件分卷大小,比内存稍小些应该可行。打包小文件最是麻烦。我千万级的数据文件在windows下搞了好几天。
ysc3839
发表于 2023-7-17 16:55
本帖最后由 ysc3839 于 2023-7-17 16:58 编辑
xc11748 发表于 2023-7-17 15:58
用bandizip最后提示资源耗尽,把内存和系统盘设置的缓存压榨尽了,一滴不剩。用7zip压缩了一天多,最后提 ...
还是没说清楚具体是什么错误提示,请截图或拍照
不过还是建议先试试Win10自带命令行tar再说,说不定就没问题
chainofhonor
发表于 2023-7-17 17:01
tar -czvf dabao.tar /dabao/
九天御风
发表于 2023-7-17 19:31
这么多小文件啊,要是其中一个出错损坏了是不是要排查到明年了
solar_cs
发表于 2023-7-17 20:33
16亿个文件是怎么来的?
用原方式重生成下吧。
zhjook
发表于 2023-7-17 20:42
mqwxp 发表于 2023-7-17 14:08
建一个分区用windows的文件压缩功能,然后整个分区转储过去
直接ghost 吧,
xc11748
发表于 2023-7-17 20:43
solar_cs 发表于 2023-7-17 20:33
16亿个文件是怎么来的?
用原方式重生成下吧。
自己写程序生成的,小众领域,很容易生成,最终是2的21次方个文件
xc11748
发表于 2023-7-17 20:46
ysc3839 发表于 2023-7-17 16:55
还是没说清楚具体是什么错误提示,请截图或拍照
不过还是建议先试试Win10自带命令行tar再说,说不定就没 ...
现在正在用tar命令压缩,看行不行。后期会有200多亿个文件,管理和传输也是个大问题
ysc3839
发表于 2023-7-17 21:12
xc11748 发表于 2023-7-17 20:43
自己写程序生成的,小众领域,很容易生成,最终是2的21次方个文件
那或许要考虑一下使用数据库
荡漾的潇洒
发表于 2023-7-17 21:45
直接克隆硬盘镜像最快.
enben
发表于 2023-7-17 21:52
xc11748 发表于 2023-7-17 20:46
现在正在用tar命令压缩,看行不行。后期会有200多亿个文件,管理和传输也是个大问题 ...
程序简单,实现起来麻烦。算法复杂,实现简单。
夏天
发表于 2023-7-17 21:56
本帖最后由 夏天 于 2023-7-17 22:06 编辑
xc11748 发表于 2023-7-17 20:43
自己写程序生成的,小众领域,很容易生成,最终是2的21次方个文件
那用ZFS呢?生成,直接linux挂载。前几天才搞了一个十几T文件的数据池,用zfs send/recv 发到另外一个池,一天多就搞定了。我那是机械盘。你SSD对SSD ,那没啥压力吧。
21mm
发表于 2023-7-17 22:39
tar 没问题 我刚好跟你类似的项目 800多g的 1-4k的文件 压缩后大概70g 左右tar-zcfwindows下如何放得下这么多文件的 比较好奇 按4k蔟 容不下这么多文件吧。
21mm
发表于 2023-7-17 22:39
还有个方案 就是手动先分组 慢慢一个文件夹一个文件夹压缩7zwinrar 都有文件个数上限的。
qiaozd
发表于 2023-7-17 23:07
复制粘贴到移动硬盘或者磁盘里带过去不行吗?
无心飞翔
发表于 2023-7-17 23:11
dd命令呢?
guaguahuang
发表于 2023-7-17 23:11
xc11748 发表于 2023-7-17 20:43
自己写程序生成的,小众领域,很容易生成,最终是2的21次方个文件
2的21次方不是 210万不到么??[吐槽]
16亿 ,没记错,我记得是超过 2的32次方了啊。。。
你这种,常规环境下,好像确实很多软件无法运作。
虽然是 64位系统,但是毕竟不是真64位的啊。。。
只能建议你 把这 16个文件,分成好几个 文件夹之后,在 分开压缩吧。
DiorsMan
发表于 2023-7-18 00:37
tar cvzf
sunchau
发表于 2023-7-18 01:06
網盤同步?
厌夜
发表于 2023-7-18 02:42
直接扔进数据库里呗,16亿不算多。
rubycon2008
发表于 2023-7-18 06:15
xc11748 发表于 2023-7-17 14:11
设置仅存储模式了,还是提示压缩失败
就不能分几部分打包压缩么?
1.98TB 的小文件打包成一个压缩包,不知道多强大的电脑配置了?
jcd_chh
发表于 2023-7-18 07:14
何不tar?而且linux基本都有吧