13T 的文件:近千万个几兆的小文件,在两台服务器之间备份同步,最好的方法是? - V2EX
V2EX = way to explore
V2EX 是一个关于分享和探索的地方
现在注册
已注册用户请  登录
请不要在回答技术问题时复制粘贴 AI 生成的内容
kisshere
V2EX    程序员

13T 的文件:近千万个几兆的小文件,在两台服务器之间备份同步,最好的方法是?

 
  •   kisshere 2019-06-13 08:35:54 +08:00 10415 次点击
    这是一个创建于 2313 天前的主题,其中的信息可能已经有所发展或是发生改变。

    近千万个几百 K~几兆的小文件,目录存放是以 MD5 分割出来的四级目录,形如:/static/ac/bd/ef/blahblah.zip ,并且每天文件数量以几百个的增加,目前想要实时备份此服务器的数据:

    1. 看中了一台 4x12T 的服务器,想把生产环境和数据全部转移到这上面去,做 RAID10,我都不用考虑两台服务器同步备份的软件了,有硬盘坏了直接替换上去是不是就 OK 了,美滋滋
    2. rsync+inotify 对这种海量数据备份效果如何,新增一个文件,可不可以做到不扫描全部的“ static ”文件夹?立马将主服务器的该文件传输至备份服务器。有没有更好的专门针对这种海量数据备份软件?

    先谢为敬

    49 条回复    2019-06-20 14:03:08 +08:00
    a852695
        1
    a852695  
       2019-06-13 08:51:04 +08:00
    rsync 本身就是增量的吧
    JingKeWu
        2
    JingKeWu  
       2019-06-13 09:00:46 +08:00
    内网环境 先用 nc+tar 全部打包传输过去 增量用 lsyncd
    dianso
        3
    dianso  
       2019-06-13 09:06:33 +08:00 via Android
    nc 开端口同步啊
    zycpp
        4
    zycpp  
       2019-06-13 09:10:06 +08:00 via iPhone
    就算每天增加 1000 个,这 1 千万的量都要累积二十多年……好奇这是啥数据?

    天文?地理信息?
    mattx
        5
    mattx  
       2019-06-13 09:12:34 +08:00   6
    @zycpp 说不定是海量的 种子 文件
    liangkang1436
        6
    liangkang1436  
       2019-06-13 09:16:25 +08:00
    @mattx 老哥稳!开车吗?
    luozic
        7
    luozic  
       2019-06-13 09:16:57 +08:00
    麽多 不上文件存?
    ldrljq
        8
    ldrljq  
       2019-06-13 09:23:05 +08:00
    支持 Mirror 模式的磁盘阵列加光纤,复制是基于块模式的,还可以组建双活和高可用。
    silencefent
        9
    silencefent  
       2019-06-13 09:24:21 +08:00
    rsync 转移到 nas 盘里,比维持服务器磁盘要便宜得多
    mattx
        10
    mattx  
       2019-06-13 09:38:37 +08:00
    @liangkang1436 种子 可以通过 种子爬虫来获得, 我只是猜测下, 不一定是真实情况.
    luozic
        11
    luozic  
       2019-06-13 09:40:19 +08:00
    同步的候直接用日志份 or 增量份就行。
    DestinyHunter
        12
    DestinyHunter  
       2019-06-13 09:46:37 +08:00
    我仿佛看到了你在开车
    kisshere
        13
    kisshere  
    OP
       2019-06-13 09:56:37 +08:00
    @DestinyHunter
    @mattx 真不是种子
    wweir
        14
    wweir  
       2019-06-13 09:58:54 +08:00
    磁盘块拷贝?
    lvzhiqiang
        15
    lvzhiqiang  
       2019-06-13 10:14:20 +08:00
    目前我们生产环境的静态文件同步就是通过 rsync+inotify 方式同步备份的。
    pxw2002
        16
    pxw2002  
       2019-06-13 10:19:09 +08:00 via Android
    rsync+inotify
    就是增量的呀
    Tink
        17
    Tink  
    PRO
       2019-06-13 10:34:28 +08:00 via iPhone
    rsync
    oott123
        18
    oott123  
       2019-06-13 10:35:00 +08:00 via Android
    值得提醒的是 raid 不是备份
    jamblues
        19
    jamblues  
       2019-06-13 10:36:09 +08:00 via iPhone
    相信我,inotify 文件多了,每次机器重启或者服务重启 I/O 会卡到你怀疑人生。

    目前比较实用的方案就是用 K/V 方案存 leveldb 类似的产品(如 ssdb 或 pika )做集群。
    HarrisonZ
        20
    HarrisonZ  
       2019-06-13 10:37:45 +08:00
    不如直接 s3 或者 oss
    EPr2hh6LADQWqRVH
        21
    EPr2hh6LADQWqRVH  
       2019-06-13 10:38:53 +08:00 via Android
    无脑 ceph
    vincel
        22
    vincel  
       2019-06-13 10:39:42 +08:00
    TFS 集群
    AlohaV2
        23
    AlohaV2  
       2019-06-13 10:42:33 +08:00
    rsync
    kisshere
        24
    kisshere  
    OP
       2019-06-13 10:59:40 +08:00
    @jamblues 楼上的 lsyncd 可不可以解决此问题
    pyder
        25
    pyder  
       2019-06-13 11:31:07 +08:00 via iPhone
    貌似是做 CV 的呀,应该全是图片,用来训练的。
    zelin44913
        26
    zelin44913  
       2019-06-13 12:11:46 +08:00
    rsync+inotify 只适合少量文件(十万以内)
    zelin44913
        27
    zelin44913  
       2019-06-13 12:22:04 +08:00
    既然有考虑采购服务器,不如采购一台群晖 nas, 然后配置 Cloud Sync 套件做实时同步增量备份至阿里云 OSS
    okjb
        28
    okjb  
       2019-06-13 12:24:48 +08:00 via Android
    今年 18 岁,申请上车
    mdjxyz
        29
    mdjxyz  
       2019-06-13 12:30:32 +08:00
    上 minio 吧
    loading
        30
    loading  
       2019-06-13 12:31:41 +08:00 via Android
    minio
    cy97cool
        31
    cy97cool  
       2019-06-13 13:42:58 +08:00 via Android
    seaweedfs
    jamblues
        32
    jamblues  
       2019-06-13 13:46:28 +08:00 via iPhone
    @kisshere 文件多了都会在 I/O 上有瓶颈 无论是 rsync 还是 lsync 底层是绕不过的
    iwannarun2
        33
    iwannarun2  
       2019-06-13 13:48:35 +08:00
    疑车无据
    qile1
        34
    qile1  
       2019-06-13 13:52:59 +08:00 via Android
    文件如果放那里只读取,为啥不按年月日存放,这样同步起来只同步每天的数据不是简单了?
    Livid
        35
    Livid  
    MOD
    PRO
       2019-06-13 13:55:33 +08:00
    试试这个?

    https://juicefs.com/
    cdlixucd
        36
    cdlixucd  
       2019-06-13 14:11:11 +08:00
    @jamblues 哦 所以说呢 没办法了吗
    jamblues
        37
    jamblues  
       2019-06-13 14:19:19 +08:00 via iPhone
    @cdlixucd 解决方案就是多个小文件合成大文件 降维 减少 I/O 开销,推荐可以试试 pika 或者 ssdb,优势是支撑几 kw 问题不大 内置分布式 也不用自己维护同步 弱点是性能只有在 ssd 下才能体现 如果要求不高 普通硬盘也可以试试
    cdlixucd
        38
    cdlixucd  
       2019-06-13 14:29:42 +08:00
    @jamblues 我们现在就遇到这个问题 都是在云平台上面 之前放在 google 对象存储里,也是有很多小的文件,然后要传到 AWS 对象存储 直接用的 rsync 来做的,先做一部分 后面切换平台再做增量的 你说的这种其实也还好 ,合成大文件后到目的端还是得拆开,一样的效果 真正的提升还是要对比吧
    xiaogui
        39
    xiaogui  
       2019-06-13 14:45:48 +08:00
    tar 分包
    ps1aniuge
        40
    ps1aniuge  
       2019-06-13 14:53:20 +08:00   1
    8 楼=唯一正解。
    本地 mirror,远程 mirror。
    任何方案都打不过 8 楼方案。
    hugee
        41
    hugee  
       2019-06-13 16:38:28 +08:00
    按天存储多好啊
    jaskle
        42
    jaskle  
       2019-06-13 20:49:54 +08:00 via Android
    git,很好用
    glfpes
        43
    glfpes  
       2019-06-13 22:06:13 +08:00 via Android
    lsyncd,更简单的 rsync+inotify
    glfpes
        44
    glfpes  
       2019-06-13 22:07:09 +08:00 via Android
    @glfpes 支持正则配置哪些想同步
    AlloVince
        45
    AlloVince  
       2019-06-13 23:19:27 +08:00
    @zelin44913 Cloud Sync 在文件数百万级别就已经不好使了
    div id="r_7509522" class="cell">
    mattx
        46
    mattx  
       2019-06-19 18:17:40 +08:00
    @ldrljq 有没有对应的资料可以查看的?
    ldrljq
        47
    ldrljq  
       2019-06-20 10:21:09 +08:00
    @mattx 不同厂家的技术都是不一样的,比如 Netapp 叫 SnapMirror,不过总体来说都是镜像数据,主要是用于数据迁移以及备份和恢复。
    mattx
        48
    mattx  
       2019-06-20 11:06:57 +08:00 via iPhone
    @ldrljq #47 有没有用这个做 数据中心内部强一致备份的,做到可以随时切换。
    ldrljq
        49
    ldrljq  
       2019-06-20 14:03:08 +08:00
    @mattx 有的,基本所有存储厂商都有这种解决方案,双活甚至多活,完全镜像数据,可以跨楼宇甚至城市实现异地容灾,不过是另外一套技术了。
    关于     帮助文档     自助推广系统     博客     API     FAQ     Solana     829 人在线   最高记录 6679       Select Language
    创意工作者们的社区
    World is powered by solitude
    VERSION: 3.9.8.5 29ms UTC 21:30 PVG 05:30 LAX 14:30 JFK 17:30
    Do have faith in what you're doing.
    ubao snddm index pchome yahoo rakuten mypaper meadowduck bidyahoo youbao zxmzxm asda bnvcg cvbfg dfscv mmhjk xxddc yybgb zznbn ccubao uaitu acv GXCV ET GDG YH FG BCVB FJFH CBRE CBC GDG ET54 WRWR RWER WREW WRWER RWER SDG EW SF DSFSF fbbs ubao fhd dfg ewr dg df ewwr ewwr et ruyut utut dfg fgd gdfgt etg dfgt dfgd ert4 gd fgg wr 235 wer3 we vsdf sdf gdf ert xcv sdf rwer hfd dfg cvb rwf afb dfh jgh bmn lgh rty gfds cxv xcv xcs vdas fdf fgd cv sdf tert sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf shasha9178 shasha9178 shasha9178 shasha9178 shasha9178 liflif2 liflif2 liflif2 liflif2 liflif2 liblib3 liblib3 liblib3 liblib3 liblib3 zhazha444 zhazha444 zhazha444 zhazha444 zhazha444 dende5 dende denden denden2 denden21 fenfen9 fenf619 fen619 fenfe9 fe619 sdf sdf sdf sdf sdf zhazh90 zhazh0 zhaa50 zha90 zh590 zho zhoz zhozh zhozho zhozho2 lislis lls95 lili95 lils5 liss9 sdf0ty987 sdft876 sdft9876 sdf09876 sd0t9876 sdf0ty98 sdf0976 sdf0ty986 sdf0ty96 sdf0t76 sdf0876 df0ty98 sf0t876 sd0ty76 sdy76 sdf76 sdf0t76 sdf0ty9 sdf0ty98 sdf0ty987 sdf0ty98 sdf6676 sdf876 sd876 sd876 sdf6 sdf6 sdf9876 sdf0t sdf06 sdf0ty9776 sdf0ty9776 sdf0ty76 sdf8876 sdf0t sd6 sdf06 s688876 sd688 sdf86