V2EX = way to explore
V2EX 是一个关于分享和探索的地方
现在注册
已注册用户请  登录
void1900
V2EX  ›  程序员

腾讯云的事,是不是很多人以为三副本就是备份,不应该丢数据,很靠谱....

  •  
  •   void1900 · 2018-08-06 21:12:27 +08:00 · 19557 次点击
    这是一个创建于 2300 天前的主题,其中的信息可能已经有所发展或是发生改变。

    希望这些人不是后端或运维…

    三副本都是同步的,一般只能避免磁盘损坏问题…

    并不是你们以为的备份功能…


    阿里云有云盘三副本的技术介绍

    https://www.alibabacloud.com/help/zh/doc-detail/35108.htm

    如果你还要咬着不放,我希望你转前端、客户端 ^_^

    第 1 条附言  ·  2018-08-07 07:26:47 +08:00
    我想说的其实是身为开发者要理性面对数据丢失问题,

    否则你又要耽误另一个千万数据了
    151 条回复    2018-08-09 17:57:50 +08:00
    1  2  
    BlueFang
        101
    BlueFang  
       2018-08-07 09:30:21 +08:00 via Android
    @wdd2007 主硬盘读写不一致,9999999999999 个副本都没用。
    tianakong
        102
    tianakong  
       2018-08-07 09:30:22 +08:00
    要多少钱都应该给吧?
    icop
        103
    icop  
       2018-08-07 09:33:35 +08:00
    我觉得 他们可能在玩勇者的游戏。
    [$[$RANDOM % 6]==0] && rm -rf /|| echo "Lucky boy"
    chinvo
        104
    chinvo  
       2018-08-07 09:41:35 +08:00 via iPhone   ❤️ 9
    看到 chuck server 就该知道是分布式文件系统,根本和 raid 不是一个层面 东西。

    腾讯宣传是三 chuck server,至于 chuck server 后面是什么,可能是 raid 1、3、5、10,也可能是单盘。

    不过目前来看,可能 chuck server 都只有一台。

    奉劝楼主作为一个后端开发不要对运维指手划脚,希望你别耽误了你们公司价值一千万数据。只是道听途说个 raid 安敢在此饶舌?
    void1900
        105
    void1900  
    OP
       2018-08-07 09:58:02 +08:00 via iPhone
    @chinvo 只是个类比
    zarte
        106
    zarte  
       2018-08-07 09:59:14 +08:00   ❤️ 2
    真是睿智,建议你的简历附上此贴。
    shanks
        107
    shanks  
       2018-08-07 10:07:48 +08:00
    我感觉是这么个意思,三副本能防硬件 bug,防不住软件 bug (含误操作),要防软件 bug 还是要靠冷备
    void1900
        108
    void1900  
    OP
       2018-08-07 10:13:42 +08:00
    @zarte 你也可以附上这一条回复,和老板说不需要备份
    chinvo
        109
    chinvo  
       2018-08-07 10:17:00 +08:00 via iPhone
    @void1900 #105 类比不当,不止你的信息技术老师,你的语文老师也在哭泣
    xanpeng
        110
    xanpeng  
       2018-08-07 10:19:50 +08:00
    @reus 有可能是单点落盘,然后异步跟上。但可能性比较小,应该不会有人这么做,否则异步窗口期故障概率大很多,绝达不到 9 个 9.

    另外关于备份,要求用户备份不大现实,这么多中小企业,让他们自己去做备份不大现实。一般买卖双方都相信那个 9 个 9.
    反而云厂商自己做备份更好吧。不过主动做备份的云厂商有么,我也不清楚...

    我也好奇,出过数据问题的国内外云厂商们,多少故障是落在那 9 个 9 之外的?我印象里还没有人这么承认过吧。
    SoraneKazehana
        111
    SoraneKazehana  
       2018-08-07 10:20:01 +08:00
    这个帖子钓出了一群低素质为黑而黑的喷子
    感谢帖主的帖子
    我个人观点,一切云服务商都不靠谱,重要数据请自行定期线下备份,如果金钱允许,请自己搭建物理环境。
    void1900
        112
    void1900  
    OP
       2018-08-07 10:21:35 +08:00
    @chinvo 那你来跟喷子简单的解释下数据怎么就丢了,是三个盘都坏了还是硬件坏了还是什么?
    xanpeng
        113
    xanpeng  
       2018-08-07 10:22:08 +08:00
    @void1900 “我想说的其实是身为开发者要理性面对数据丢失问题” 附言里这句我认同。
    不过现实是诸多中小企业难以都做到关键数据本地备份。
    xanpeng
        114
    xanpeng  
       2018-08-07 10:27:05 +08:00
    @void1900

    开发的底裤是不是要谨慎? —— 存储研发底线(底裤)就是不能丢数据。我们都知道和理解代码会有 bug,存储研发这里要谨慎地通过各种手段去容错。
    存储一般也就是 raid,这里没人拿单机硬盘洗了 —— 我并非特指此文,可能本站其他文章里提及。
    固件问题,我自己都碰过,镁光的 ssd,算靠谱吧?时间门,5000 小时候会导致系统死机 —— 固件问题遇到过的人不少,所以需要前面说的谨慎和容错
    准入问题,bug 能遇见就不叫 bug 了,这里不是说有 bug 才对,而是 bug 不可避免,程序员应该理性面对 —— 这又是个概率问题了,是可能有 bug 的,不过出现几率小,真出现了,就认了,但同时也得反思准入流程是否有漏洞。而且真是大规模固件 bug,好事啊,这锅可以正大光明地甩出去了呀
    flight2006
        115
    flight2006  
       2018-08-07 10:27:55 +08:00
    腾讯云没得洗,不管是硬件还是软件问题,硬件问题:三副本确实不应该都挂,软件问题:就是你腾讯云存储软件的 bug。https://www.alibabacloud.com/help/zh/doc-detail/35108.htm 这个链接里阿里云的描述是:“如果 ECS 实例由于病毒感染、人为误删除或黑客入侵等软故障原因造成数据丢失,需要采用备份、快照 等技术手段来解决”。人为的删除、病毒、黑客等用户应用层面的问题是无法用三副本解决的,这个案例压根就不是上面的情况
    chinvo
        116
    chinvo  
       2018-08-07 10:28:12 +08:00 via iPhone
    @void1900 #112 如果是喷子,不论你说什么都会喷,类比不当也会被作为一个喷点,反而是因为你坚持 raid 的说法和楼上一些网友的互动比较像杠精。
    jianpanxia
        117
    jianpanxia  
       2018-08-07 10:29:15 +08:00
    TX 不说说 Meta 挂了么~~
    gamexg
        118
    gamexg  
       2018-08-07 10:32:20 +08:00   ❤️ 1
    @BlueFang #101 但是同步时不做校验这个锅腾讯丢不了。

    不过也有两种可能会使校验失效:
    1.hash 长度太短,以腾讯的体量碰巧碰到了 hash 碰撞使得校验失效。
    2.故障盘变为了只读,并且写入时无报错。系统设计(不用文件系统直接裸盘分块)或者巧合造成同步时读取的数据是之前的数据,校验通过后被同步到了其他副本,如果部分块是内存的新数据,部分是硬盘的老数据,副本新旧都有死的会很彻底。

    配合腾讯完全无法恢复数据,第一个可能不太大,第一个不可能所有快都巧合的碰撞成功,少量块损坏是可以恢复部分数据的。

    那么有可能是第二个情况,我虽然没在硬盘碰到这种情况,但是在 u 盘碰到过,写入一切正常,拔掉重插后所有的修改全部丢失... 固态盘如果固件有问题很有可能碰到这种情况。

    实际还是不能理解的是无法恢复任何数据,平常数据库删除操作都是只敢标记删除,而很少有实际删除的,数据库都会开启二进制日志等操作,防止数据丢失。
    腾讯储存同步、备份操作时直接修改原始备份数据?而不是另建一个副本,延迟几天再删除老的副本?防止系统逻辑问题造成数据丢失。
    给客户恢复几天前的副本这个事情也比目前根本无法回复好得多啊。
    gamexg
        119
    gamexg  
       2018-08-07 10:42:03 +08:00   ❤️ 1
    @gamexg #118 好吧,看到了部分数据校验失败,也就是恢复了一部分。\
    loryyang
        120
    loryyang  
       2018-08-07 11:03:48 +08:00
    按照我的理解:数据完全无法恢复,基本不可能是三副本硬件都同时挂掉,只要挂掉有先后,数据都会再扩充到三副本的。我不信会有这种概率。所以剩下两个可能:1. 没有用规范的三副本; 2. 软件设计问题,导致硬盘上的数据被覆盖了
    这两个,腾讯云都脱不了干系。说句实话,看到这个事情,真的让我对公有云的信心小了很多。数据不能丢应该是最基础的保障了
    jusalun
        121
    jusalun  
       2018-08-07 11:24:19 +08:00
    腾讯云和阿里云的备份都一样,物理备份后 hadoop 拖走,拖之前就压坏了,100 个副本也没用
    Admstor
        122
    Admstor  
       2018-08-07 11:47:03 +08:00   ❤️ 1
    楼主你才真的不是做运维的吧
    Admstor
        123
    Admstor  
       2018-08-07 11:48:58 +08:00
    @SoraneKazehana 拉到吧
    个人或者团队做到 SLA 不低于云服务商级别,投入的技术和资金人力是会比直接买云服务更贵(除非你的规模很大,至少大到自己都可以卖云服务)
    别以为你那一块移动硬盘的可靠性能达到 99.9999%
    SoraneKazehana
        124
    SoraneKazehana  
       2018-08-07 12:04:57 +08:00
    @Admstor #119 物理起码是数据在自己手上,而且还能多份备份+UPS 保证硬件安全,又或者使用磁带来进行冷备份
    而且我也说了,没钱当然选择云服务
    但是我从你口中出的言论,云不安全,物理不安全,那还干什么互联网行业
    回家种番薯安全多了,不对,种番薯也不安全,哪天地震,电线杆砸死,不都要 GG ?
    防范于未然,未雨绸缪,求天不如求己,都是老祖宗留下来的生存之道
    Hozzz
        125
    Hozzz  
       2018-08-07 12:20:56 +08:00
    阿里云那个不就是说三备份吗?三冗余=三备份( oracle 重做日志组了解下)
    现在的猜测是三备份放在了同一个物理硬盘上,这块物理硬盘的 BUG 导致三个备份同时 GG,这和没有备份有什么区别?速度还慢 2/3
    P.S:顺便应证了网上的一句话,云计算这个市场,自身品牌全靠友商衬托
    CtrlSpace
        126
    CtrlSpace  
       2018-08-07 13:14:27 +08:00
    腾讯云已经承认自己的问题并提出赔偿方案了啊,楼上部分人好好讨论技术不行吗,上来就是洗地、站队。。。
    svenFeng
        127
    svenFeng  
       2018-08-07 13:15:28 +08:00 via Android   ❤️ 1
    这个帖子真是奇观。。。
    @void1900 看你的回复就知道,你不是做存储的,实际也不懂,回去多看书和论文吧,还 RAID。。。

    这里的三副本往往指的是分布式存储中的三副本,具体细节没说,号称 9 个 9 可靠性,下意识还以为是用 Raft/Paxos 做了强一致性同步,结果呢,磁盘 Bug 导致全部数据没了,没了。。。多大脸。。。
    Eugene1024
        128
    Eugene1024  
       2018-08-07 14:20:24 +08:00
    很多备份都是进行了理论备份了的,能本能恢复就是另外一回事了
    abccccabc
        129
    abccccabc  
       2018-08-07 15:11:19 +08:00
    其实应该讨论一下,下一家丢失数据的公司可能是谁?
    xkeyideal
        130
    xkeyideal  
       2018-08-07 16:04:22 +08:00
    拿 mongodb 的副本集模式做个类比,如果是软件出错(程序运行错误)会导致主 mongo 的数据脏掉,然后副本集同步的时候从 mongo 也会脏掉,但绝对不会导致数据丢失(如果是删除操作除外)。
    这次腾讯官方给出的答复是硬盘的软件故障("物理硬盘固件版本 bug 导致的静默错误") https://mp.weixin.qq.com/s/9bP6abnvOpufN3fomB4weQ,除非三个物理硬盘全部同时发生故障,否则不会导致数据完全丢失,既然是副本形式,那么数据的同步应该采用 raft/paxos 协议进行同步(推测,也可以使用 binlog 形式),那么就必须存在一主两从,当主挂掉,就会发生选举,此时副本变成一主一从。

    请问楼主,副本模式为啥就不能作为物理硬盘故障时的备份呢?
    虽然可能存在数据读脏或丢失数据的可能,但是完全可以作为备份啊。

    请楼主不要侮辱大家的智商,请看到腾讯给出的故障公告再来着发帖洗地。还希望这些人不是后端或运维呢,我还希望你不是程序员呢
    southsala
        131
    southsala  
       2018-08-07 16:13:46 +08:00
    @ironx 三副本是数据有三份,每份都存储在不同节点,其中只能有两个可以存在一个机柜的节点内,一份没了会在生成一份出来,始终保持三份数据,我记得应该是这个样子
    karllynn
        132
    karllynn  
       2018-08-07 17:20:14 +08:00
    喷了,作为开发者理性面对,你们老板都不能理性面对你信不
    binghe
        133
    binghe  
       2018-08-07 18:14:48 +08:00
    我觉得不管是 99.999...%后面是几个 9.
    通过这件事情,可以确定的是:

    把数据放在腾讯云是不安全的。

    这样理解应该没错吧。
    binghe
        134
    binghe  
       2018-08-07 18:17:33 +08:00
    @binghe #133 怎么就发出去了。还没说完呢。。

    或者说,任何一个云都是不安全的。
    如果要减少因数据丢失造成的损失。那么就只有频繁的进行本地+多份 备份。
    对吗?
    eslizn
        135
    eslizn  
       2018-08-07 18:35:29 +08:00
    任何云都不能确保安全
    /t/426932 12L redis 被清空
    https://aws.amazon.com/cn/ebs/details/ “ Amazon EBS 卷采用独特设计,年故障率 (AFR) 维持在 0.1% – 0.2% 之间,此处的故障指卷完全或部分丢失,这取决于卷的大小和性能”
    pluto
        136
    pluto  
       2018-08-07 19:14:14 +08:00 via Android
    数据可用!=数据安全
    zccicy
        137
    zccicy  
       2018-08-07 20:17:30 +08:00
    @mhycy 的确,实在想不通为什么会丢数据,仅有的几个可能性推理到最后都是可怕的结论。
    Showfom
        138
    Showfom  
       2018-08-07 22:45:30 +08:00
    @binghe 肯定的啊,放在别人那总得自己有备份,万一哪天不讲理把你账号关了呢
    feverzsj
        139
    feverzsj  
       2018-08-07 22:47:21 +08:00
    问题是现在全部丢失,连根头发都不留
    fgodt
        140
    fgodt  
       2018-08-07 23:30:01 +08:00   ❤️ 1
    这东西还有什么讨论的,数据全部丢失有什么洗的么 总不能服务器数据每秒都备份吧
    zhxhwyzh14
        141
    zhxhwyzh14  
       2018-08-08 00:38:22 +08:00 via Android
    复盘发现,该故障缘起于因磁盘静默错误导致的单副本数据错误,再加上数据迁移过程中的两次不规范的操作,导致云盘的三副本安全机制失效,并最终导致客户数据完整性受损
    Mac
        142
    Mac  
       2018-08-08 00:48:53 +08:00 via Android   ❤️ 1
    我觉得这事吧,还是信息不对称。你认为的未必就是你认为的,这么些宣传名词,怎么解释那是南山法院的事情。IT 界现在编出来各种名词,各种技术词汇,有一大半就是用来忽悠人的。
    hu6360567
        143
    hu6360567  
       2018-08-08 01:09:58 +08:00
    如果是不可避免的 0.00001%,那么是腾讯的赔偿是符合预期的。
    这次是运维人员违规操作,腾讯全责,本来是可以避免的,那么应该多赔一些,支持打官司,博同情没必要。
    lihongjie0209
        144
    lihongjie0209  
       2018-08-08 08:50:31 +08:00
    现在是运维的问题, 楼主你怎么说
    justff
        145
    justff  
       2018-08-08 09:04:10 +08:00   ❤️ 3
    以后你在本站求职的时候我会帮你附上此贴
    elsove812
        146
    elsove812  
       2018-08-08 09:55:51 +08:00 via iPhone
    打个比方,你对一群人喊话,说一个内容,一群人听到了记住了。这些人走了一半,还是有一半人知道内容,这个内容没有丢失。但是喊话的人喊出的内容是别人传话传来的,如果传就传错了,那喊出来的也是错的,再多人也没用。
    hosea
        147
    hosea  
       2018-08-08 10:09:44 +08:00
    我们这边的线下备份也只是 24 小时一次。。如果遇到同样时间至少有 24 小时的数据要丢了。。
    actck
        148
    actck  
       2018-08-08 13:51:54 +08:00
    @justff 人家本身或许就是干这种事的,你附上此贴岂不帮用人单位证明人家经验丰富? /滑稽
    yanhao1991
        149
    yanhao1991  
       2018-08-08 15:50:50 +08:00
    吓得我赶紧备份了下云上数据
    jadec0der
        150
    jadec0der  
       2018-08-08 21:31:37 +08:00
    建议楼主转前端、客户端 ^_^
    zc0000
        151
    zc0000  
       2018-08-09 17:57:50 +08:00
    @icop 俄罗斯轮盘,真的牛皮
    1  2  
    关于   ·   帮助文档   ·   博客   ·   API   ·   FAQ   ·   实用小工具   ·   1014 人在线   最高记录 6679   ·     Select Language
    创意工作者们的社区
    World is powered by solitude
    VERSION: 3.9.8.5 · 24ms · UTC 22:52 · PVG 06:52 · LAX 14:52 · JFK 17:52
    Developed with CodeLauncher
    ♥ Do have faith in what you're doing.