Bootstrap

平凡人的野望:我们为赛博世界保管记忆

文|史中

浅友们好~我是史中,我的日常生活是开撩五湖四海的科技大牛,我会尝试各种姿势,把他们的无边脑洞和温情故事讲给你听。



今天的主角,是一个其貌不扬的大盒子。


一万个人中,恐怕有九千九百九十九个半都不知道它是干什么的。


但是,成千上万这样的大盒子,却镶嵌在我们这个国度的时光长河中。他们是笔记,心怀敬畏记录着每一笔账目的来往;他们是日记,眼含忠诚记录着企业蹒跚长大的悲欢。


它们就是“企业级存储”。


区区万言,只够讲一家公司一群人一个“盒子”,但请相信我,这些身影后面藏着每一个人都感同身受的追逐。



watermark,image_bG9nby9jc2RuXzEucG5nP3gtb3NzLXByb2Nlc3M9aW1hZ2UvcmVzaXplLGhfNjI=,g_se,x_0,y_0,t_100



(一)怪人们


2008年,温州。


大街上阳光刺眼,人们穿行奔忙。路边的茶楼里有人穿着老汗衫,有人趿拉着拖鞋,举着电话快言快语。


这一切,被邻座的一个小伙子收进眼里。


他叫张强,此时新生活刚刚开始——他加入了一家深圳公司,被派驻到温州开拓新市场。对于一个25岁的年轻人来说,眼前的一切恰如广阔蓝天徐徐展开,让一只鸟心潮澎湃。



watermark,image_bG9nby9jc2RuXzEucG5nP3gtb3NzLXByb2Nlc3M9aW1hZ2UvcmVzaXplLGhfNjI=,g_se,x_0,y_0,t_100

温州



他供职的这家公司不大,只有两百人,卖一些听上去奇奇怪怪的企业级网络产品:VPN、上网行为管理、防火墙。这家公司的名字更怪,叫深信服。


要说最怪的,是公司的同事们。在那个搞销售必然喝大酒盘关系讲回扣的年代,深信服的销售小哥却天天只跟客户死抠产品有什么功能,能解决哪样问题。


但张强喜欢和这些怪人待在一起,如丑小鸭找到了同类。


在温州待了半个月,张强还发现一个惊人的事实:这里简直就是“怪人”的天堂——前两天在茶馆那位穿汗衫的,居然是一位麾下千人的工厂老板;旁边穿拖鞋的,竟也是身家上亿的大客商。


在这座城市,人们并不在意用外表来证明自己是谁。


穿越到今天回望,这些拖鞋大佬其实也没那么怪,他们只是中国经济变革大潮中那群最早相信勤勉和务实的人。


故事就这样开始了。



watermark,image_bG9nby9jc2RuXzEucG5nP3gtb3NzLXByb2Nlc3M9aW1hZ2UvcmVzaXplLGhfNjI=,g_se,x_0,y_0,t_100

张强(这是2020版的张强,已经沧桑了许多)



“深信服是啥?你们做服装的?服务外包?做信用贷款?”最开始,每次电话那头的客户都要如此“拷问三连”,让张强他们哭笑不得,哑口无言。


但是经过张强锲而不舍各种姿势介绍以后,务实的温州企业着实给了深信服不少宝贵机会——拿来产品实打实测试。


只要东西真的好,解决问题,那买单是相当爽快。


深信服由此在这座被时代冲刷的城市站稳脚跟。而温州,只是这群人光辉年代的一场缩影。


那些日子,在深圳,无数不善言辞的程序员们靠着对未来的憧憬星夜兼程敲下代码;在全国,无数像张强一样的销售人靠着真诚和理智把品类并不算多的产品送到了真正需要它的人手中。


时光缓缓前行。彼时没人知道,一个巨大的命题正等在转角,将会和深信服撞个满怀。



watermark,image_bG9nby9jc2RuXzEucG5nP3gtb3NzLXByb2Nlc3M9aW1hZ2UvcmVzaXplLGhfNjI=,g_se,x_0,y_0,t_100

2008年,神舟七号升空,翟志刚完成了首次太空行走,这在某种程度上是中国科技的一次宣言。



(二)一个沉重的命题



张强的眼睛,记录下了那个时代。


2012年,他辗转湖北,成为区域负责人。虽然“升任总经理迎娶白富美”值得庆贺,但却很长时间都高兴不起来。


他发现这个国度的现实比想象中更复杂:


即便奥运会已经开完了四年,内地大多数企业的开放程度之低仍然让人喟叹,就连经济危机传导到这里都会变成孱弱的余波。
很多企业规模不小,却压根没有进入数字化的大门——没有内网系统,没有统一管理的办公电脑,一个 Excel 文件在 QQ 上传来传去包打天下。


这样一看,深信服卖的那些“外围”IT产品虽然被企业需要,但绝对不是最迫切的。


就像人们连房都没买,你却在向他们推销家具。


当时就是感觉自己每天在做选择题,我只有ABCD,但是人家可能需要EFG。他们要的我给不了。。。


冲在一线的张强深有感触。



watermark,image_bG9nby9jc2RuXzEucG5nP3gtb3NzLXByb2Nlc3M9aW1hZ2UvcmVzaXplLGhfNjI=,g_se,x_0,y_0,t_100

当年强哥在湖北的时候,团队聚餐,有种歃血为盟的感觉。



湖北不是个例,它是我们脚下土地的缩影——重重山水之中的万千企业,像渴望氧气一样渴望质量优良、价格亲民、可以信赖的“核心”IT产品。


这切中了深信服思考了十几年的母题:


既然创始人何朝曦和熊武每天都鼓励大家“要让世界因我而变得不同”,那现在世界摆在这,深信服这群人就必须不断地说服自己,一步一步走到舞台的中央。不仅要做家具,还要造房子;不仅能造“小米步枪”,还要去造“飞机大炮”。


彼时征战前线的张强尚不清楚,远在深圳的总部其实早已经火力全开,核心IT产品的研发紧锣密鼓。


没多久,销售队伍就拿到了期盼已久的新武器:超融合一体机和桌面云系统。(有关这个故事,推荐你去看看《深信服,狂奔向五月花号》。)


不懂的浅友我简单科普一下:


超融合一体机,就是N台服务器组成的“心脏”,为企业各个部门提供核心计算力;桌面云系统,就是办公室每个人面前的电脑,但这些电脑没有机箱,所有的算力都统一由机房的超融合主机提供。



watermark,image_bG9nby9jc2RuXzEucG5nP3gtb3NzLXByb2Nlc3M9aW1hZ2UvcmVzaXplLGhfNjI=,g_se,x_0,y_0,t_100

超融合一体机组成了企业的计算中心,可以为办公PC、对外服务、大数据、人工智能等等各种姿势提供计算力。



这些产品在张强的印象中是锋利的重剑。


一方面是 骄傲自豪,深信服终于进入无数企业的心脏地带,亲手把0和1的涓涓细流汇入中国数字化的汪洋大海,家国情怀,得偿所愿;
一方面是 如履薄冰,企事业单位把核心计算力托付于自己,产品一旦出现故障,小则影响生产收入,大则影响国计民生。


纵如段誉一般的大侠,刚练好六脉神剑时也会有放不出技能的尴尬时刻;最初半年,深信服的超融合和云桌面确实也并不稳定,时不时会来一次罢工,让客户措手不及。


一个区教育局用了我们的桌面云一体机,当时能拿到这样级别的客户,我们可高兴坏了。
可是没两天,系统突然发生故障,大面积云终端宕机,导致多媒体教学系统不能正常访问使用。教育局气得对我们拍桌子:“撤下去!把你们的东西全拿回去!”当时又羞愧又着急,真的是恨不得找地缝钻进去。


虽然后来经过排查确定是第三方服务器固件版本过旧引起多块硬盘同时离线所致,但是回忆当年,张强还是心有余悸。


但塞翁失马焉知非福,深信服这群年轻人早早学到了重要的一课——造飞机大炮绝对不能用小米步枪的工艺控制;面对沉重的命题自当付出万倍的心力。


从那以后,同学们都要把手中的产品磨了又磨,测了又测,不达到百分之百可靠绝不会交付给客户。


这种敬畏凝成一把钥匙,最终打开了新故事的大门。


前方战火轰鸣,总部安然静谧,另一个绝密的产品早已开始了胎动。而张强恐怕猜不到,就在几年之后,自己的生命将会和这个重磅产品紧密地联系在一起。


这就是深信服的企业级分布式存储产品,EDS。



(三)来!造一艘航母!


2016年,深圳。


深信服的总部,一个神秘的组织聚在会议室里,所有人都眉头紧锁。


神秘组织名叫“研发管理委员会”,这个名儿不太性感,但它其实是深信服内部的“技术长老会”——接下来要研发什么产品,公司未来的技术布局,都由这十几个大佬商议。毫不夸张地说,这些人的技术判断,某种程度上决定着公司的前途和命运。


陈岩,就是当时的“长老”之一。之前张强在前线千呼万唤苦苦等待的“超融合”和“桌面云”正是陈岩他们的手笔。



watermark,image_bG9nby9jc2RuXzEucG5nP3gtb3NzLXByb2Nlc3M9aW1hZ2UvcmVzaXplLGhfNjI=,g_se,x_0,y_0,t_100

陈岩



那些年,研发管理委员会几无败绩,敲定的产品研发一个火一个。但是此时此刻,他们却分成了两派,为“要不要做企业级存储”争论得面红耳赤。


大牛吵架,值得观摩。


要明白他们在吵什么,中哥得先用一分钟给你科普下,什么叫“企业级存储”。


每一个现代企业,为了完成各种生产协作任务,都要建立一个由各种计算机组成的“赛博空间”,这个空间非常复杂,就像用乐高拼成的摩天大厦。但是无论多复杂,这些乐高积木却只分成三种类型:计算、存储、网络



watermark,image_bG9nby9jc2RuXzEucG5nP3gtb3NzLXByb2Nlc3M9aW1hZ2UvcmVzaXplLGhfOTQ=,g_se,x_0,y_0,t_100



企业级存储,就是把很多“存储”积木拼成一个容量巨大的“存储之海”。



watermark,image_bG9nby9jc2RuXzEucG5nP3gtb3NzLXByb2Nlc3M9aW1hZ2UvcmVzaXplLGhfNjI=,g_se,x_0,y_0,t_100



它可以用来干什么呢?金融企业会用企业级存储来存放客户信息;公安系统会用企业级存储产品来存放监控数据,广电系统会用它来存放视频素材等等。


你看,都是这种举足轻重不容有失的场景。这种情况下,企业级存储就得表现出专业选手应有的样子:记得牢,记得准,记得快。


好,现在我们回到吵架现场。大牛们争议的核心问题在于两个:


1、深信服已经有了“超融合”产品,其实超融合产品就像个盒饭套餐,里面已经打包了计算、存储、网络这三个“菜”(深信服还加了一个特色菜:安全),为啥还要单独把存储拎出来成立一个新产品?
2、市面上正在卖的存储产品,没有100家也有90家,深信服还有没有必要蹚这个水?


一声惊雷,陈岩拍案而起,他的观点是:独立存储产品不仅要做,还要用绳命去做。


理由如下:


别看现在各个企业已经有了很多数据,但和未来相比简直就是九牛一毛。眼看十四亿人民正在迁徙到云计算的新国度,十年之后中国各个行业的数据量会非常大,超级大,异乎寻常地大,超越想象地大。


越是大量的数据,越是可以精准地预测这个世界的未来,谁预测的未来更精准,就更有机会掌握这个世界的权柄。数据很可能成为新世界的“战斗机”


既然是战斗机,就必须由一艘最广阔,最平稳,最安全的航空母舰来搭载。


而市面上已有的存储产品大多是集中式存储,这种产品的容量存在上限,而且这种架构在设计之初只是用于独立存放,又很难和其他数据打通。未来随着数据暴涨,大批中国企业肯定需要容量无上限又方便联合计算的“分布式存储”。


此时此刻研究分布式存储,不正是对时代最好的回答么?



watermark,image_bG9nby9jc2RuXzEucG5nP3gtb3NzLXByb2Nlc3M9aW1hZ2UvcmVzaXplLGhfNjI=,g_se,x_0,y_0,t_100

集中式存储和分布式存储的区别大概就是这样。


这一番论证无懈可击,大多数技术长老都点头表示认可。最终,几乎是全票通过:深信服自研分布式存储产品,上路!这个产品的名字就定为 EDS(Enterprise Distribute Storage)。


分布式存储系统有多复杂,真的是难以形容。幸好,皮克斯曾经拍过一个动画片,讲的就是存储系统。


这就是《头脑特工队》(《Inside Out》)



watermark,image_bG9nby9jc2RuXzEucG5nP3gtb3NzLXByb2Nlc3M9aW1hZ2UvcmVzaXplLGhfNTY=,g_se,x_0,y_0,t_100



watermark,image_bG9nby9jc2RuXzEucG5nP3gtb3NzLXByb2Nlc3M9aW1hZ2UvcmVzaXplLGhfNDc=,g_se,x_0,y_0,t_100



主人公莱莉的脑海,就是一个巨大的存储系统,每一个球就相当于一份“数据”,无数的存储柜、无数的机械臂,传输系统、管理系统,都在为这些数据的安放服务。



watermark,image_bG9nby9jc2RuXzEucG5nP3gtb3NzLXByb2Nlc3M9aW1hZ2UvcmVzaXplLGhfNTY=,g_se,x_0,y_0,t_100



没错,这群技术宅,就要在代码世界复刻一个这样精密的而庞大的奇观。


大伙儿虽然没明说,但心里多多少少都有“顾虑”——存储系统是IT设施的基石,固然会用百倍的小心去研发测试。但万里有一,哪怕是亿里有一出了问题,客户存储的珍贵资料都可能。。。他们不敢想下去。


事实是,很难找到一个特别合适的人愿意挑梁做存储产品的研发负责人。。。


危急时刻,陈岩找到老板:“实在不行,我直接带队去干吧!”


陈岩回忆这段故事的时候轻描淡写。但是谁都知道,前路荆棘,生死关天,这个决定很难轻描淡写。


待人温和的陈岩,胸中有大丘壑,接过研发的帅印后,他马上定了一个“小目标”:企业级分布式存储产品 EDS 至少要做到百亿小文件的高性能存储。


如果还用《头脑特工队》作比喻,相当于存储系统里至少能放一百亿颗小球。


这是个如同航空母舰一般浩瀚而恐怖的奇观。



watermark,image_bG9nby9jc2RuXzEucG5nP3gtb3NzLXByb2Nlc3M9aW1hZ2UvcmVzaXplLGhfNjI=,g_se,x_0,y_0,t_100



(四)存储系统就是个“火锅店”



毕竟过去几年一直在做存储模块,团队有很深的技术积累,陈岩知道,要完成巨大的存储系统,最艰难的是两个核心组件:存储引擎分布式文件系统


这俩货又是个啥??


它俩虽然看上去很专业,而且工程上也确实复杂,但是原理却挺有趣。


你吃过小龙坎或者宽板凳之类的九宫格火锅吗?只要吃过,我就能给你讲明白。


好,现在假设你和朋友们围在火锅前面了。你面前的火锅就是一个磁盘,而各种菜就是数据。你把菜放到格子里,就相当于把数据存在了磁盘上,过一会儿你把菜捞出来,就相当于从磁盘上删除了数据。



watermark,image_bG9nby9jc2RuXzEucG5nP3gtb3NzLXByb2Nlc3M9aW1hZ2UvcmVzaXplLGhfNjI=,g_se,x_0,y_0,t_100



存储引擎是啥呢?


就是你们这帮吃货呗。


你们七手八脚,有的把菜放到格子里,有的把菜拿出来。


但是,你们是懂规矩的吃货,规矩有两个:


1、一个格里只允许放一种菜。这个格子被吃空之后才能放新的菜。(这很好理解吧,如果一个格子里啥都涮,那还分成九个格子干嘛呢?干脆大锅涮就行了。)
2、不能同时有两个人把筷子伸进同一个格子里。(这也很好理解吧,要是你俩最后都夹到了同一片肉,那给谁呢?)



watermark,image_bG9nby9jc2RuXzEucG5nP3gtb3NzLXByb2Nlc3M9aW1hZ2UvcmVzaXplLGhfNjI=,g_se,x_0,y_0,t_100

存储引擎


于是,虽然锅里电光火石,筷子翻飞,红汤浪涌,但无论用多慢的镜头回看,你们这些吃货都完美地遵循了这两个规则。


其实,存储引擎就是干这个的,它以迅雷不及掩耳的姿势读数据、写数据,但却精准地保护每一个格子里数据的可靠性一致性,一个比特都不能错。



分布式文件系统又是啥呢?


是火锅店的服务员。


假设你们全公司都是吃货,150个人决定去火锅店聚餐。这就涉及到一个问题,一个桌子坐不下。你们10个人一桌,总共坐了15桌。这就叫分布式火锅



watermark,image_bG9nby9jc2RuXzEucG5nP3gtb3NzLXByb2Nlc3M9aW1hZ2UvcmVzaXplLGhfNjI=,g_se,x_0,y_0,t_100

分布式火锅



但是请注意,饭店里的菜品太多了,每个桌子上的每一个格子里都不相同——有人想吃毛肚,但不知道毛肚在哪个桌子的哪个格子里,有人想吃脑花,也不知道脑花在哪个桌子的哪个格子里。


这时候,你只需要跟服务员说,我想吃毛肚,服务员就带你去那个锅,告诉你毛肚在1号格;你说想吃脑花,服务员就带你去另一个锅,告诉你脑花在5号格。


把这些分布在各个地方的文件组织起来的系统,就叫分布式文件系统。



watermark,image_bG9nby9jc2RuXzEucG5nP3gtb3NzLXByb2Nlc3M9aW1hZ2UvcmVzaXplLGhfNjI=,g_se,x_0,y_0,t_100

分布式文件系统


科普完毕,我们把时间拉回到2017年。


陈岩拉起大旗,众将列立。


先来干存储引擎


深信服其实是有家底的。刚才说到,当年推出的超融合一体机就像一个盒饭,包含了计算、存储、网络、安全四个“菜”。实际上,当时为超融合一体机服务的存储团队已经成立了4年,超过100人的规模了,存储所必备的“存储引擎”自然也有很深的技术沉淀。


但是,把之前那个存储引擎直接搬过来用,陈岩是拒绝的。


他的理由很简单:因为存储介质正在更新换代的浪潮中。


举个例子,最早的 HHD(机械硬盘)一次网络传输要10毫秒,后来的 SATA SSD 要100微秒,现在利用 RDMA 传输技术的 NVMe SSD 可以做到一次传输10微秒。这速度一变,整个存储引擎的编程逻辑就要发生根本的变化。


陈岩给我科普。



watermark,image_bG9nby9jc2RuXzEucG5nP3gtb3NzLXByb2Nlc3M9aW1hZ2UvcmVzaXplLGhfNjI=,g_se,x_0,y_0,t_100

这就是一个NVMe 接口的硬盘。


之前的存储引擎是针对传统的 SATA SSD 开发的,而速度更快的 NVMe SSD 正在普及——如果沿用旧的存储引擎,也许可以顶个三五年,但是瓶颈会越来越明显;如果开发新的引擎,虽然耗时耗力,但绝对能做出精品,未来十年打遍天下都不怕。


再看分布式文件系统


实话实说,当时分布式文件系统的理论已经非常成熟,但问题是,理论不等于实践。航空发动机的理论也非常成熟,光刻机的理论也非常成熟,但是中国至今都没办法造出来。这个道理是相同的。


要把一个精密的理论变成眼前真实运转的系统,还需要解决工程上细碎难缠的千百个具体问题。


懂技术的浅友肯定知道,有一个非常出名的开源分布式文件系统,名叫 CEPH。陈岩他们也确实把 CEPH 拿来做了一下测试,但很多性能指标大概只有他们想要的五分之一。


尝试了一圈,陈岩已经无比坚定了他的判断——自己开发。


这下可好,存储引擎分布式文件系统都要从零开发,万丈金字塔,从地基开始挖。等这个产品做出来,少说也得两年多之后,也就是2019年了。。。


几百号人,将近一千个日夜,都要铺在这一个产品上,而且在这段“闭关”的时间内,没办法为公司贡献任何利润。兹事体大,已经不是陈岩一个人下决心就行了。


于是,他怀揣着好多文档、数据、PPT,推开了老板的大门。


本以为要颇费一番口舌的睡服,却在友好轻松的氛围下结束了。陈岩想十年磨一剑,想在历史大河的奔涌中为千万中国企业搞出一艘闪闪发亮永不沉没的航母,这些其实也正是深信服创始人们最初的梦想。面对历史,商业理应展现出应有的敬意。


陈岩顺利地从领导那拿到了“免死金牌”。


但手握金牌,也意味着压力瞬间转移到了他肩上——所有条件都已满足,几年后如果不能拿出一个精品,那恐怕要“以死谢罪”了。。。


接下来的每一天,陈岩和团队同学们都在代码丛林中艰难前行。



watermark,image_bG9nby9jc2RuXzEucG5nP3gtb3NzLXByb2Nlc3M9aW1hZ2UvcmVzaXplLGhfNjI=,g_se,x_0,y_0,t_100

陈岩和他的小伙伴们,这是他们集体去海边摸鱼的照片。


(五)硬骨头



时光飞逝,所有系统都在有条不紊地推进,不过,团队还是被一小块“硬骨头”卡住了。

这块硬骨头就是分布式文件系统里的核心组件:KV数据库


又出来一个新名词,这货又是干嘛的??


其实很简单。刚才说过,分布式文件系统就像火锅店的服务员,帮你精确规划菜品在火锅里的位置。但是菜品实在太多,服务员也记不住,他手上就得有一个地图,标记着哪个菜品的在哪个位置等等信息,这种信息用术语说就叫关键值(Key-Value,简称KV)。


对应到存储系统里,记录着每一个存储对象信息的“地图”,就是KV数据库。(KV数据库里存储的数据叫做元数据,因为它是有关数据的数据。)



watermark,image_bG9nby9jc2RuXzEucG5nP3gtb3NzLXByb2Nlc3M9aW1hZ2UvcmVzaXplLGhfNjI=,g_se,x_0,y_0,t_100



注意,刚才我说卡住了,不是因为这群技术宅做不出来KV数据库,而是他们想要达到的性能目标太高。你还记得最早陈岩定下的目标吗?他要做至少能支撑一百亿个小对象的分布式存储


对象越多,有关他们的元数据也会越多,这份地图也就变得非常大,书写这份地图的速度变得越来越慢,从地图里找到目标的速度也越来越慢。


如果解决不好,它就会成为整个系统的瓶颈。


这时,一位“天降猛男”临危受命,他就是深信服创新研究院李润辉。



watermark,image_bG9nby9jc2RuXzEucG5nP3gtb3NzLXByb2Nlc3M9aW1hZ2UvcmVzaXplLGhfNjI=,g_se,x_0,y_0,t_100

李润辉


李润辉博士毕业于香港中文大学,是存储领域赫赫有名的大拿。从2018年开始,他的小组就在和陈岩团队配合开发存储产品的各个模块。在2019年,李润辉逐渐把主要力量投入KV数据库,进行最后攻坚。


他根据学术界的最新思路,构思了一套在工程上非常精巧的KV数据库——PhxKV。


这套工程的一个基本思想就是:把元数据分级。


有的元数据标记了文件的属性,只和这一个文件相关,这就是次要元数据;
但有些却标注了文件的索引,可以帮助系统快速找到这个文件,这就是关键元数据。


分级之后,把关键元数据存在性能更好、读取更快但却死贵死贵的超快速存储设备中,把次要元数据存在成本更低的普通SSD中。


这样一来,无论是读取还是修改这份数据,都变得比以前快很多,这个模块将再也不是整个系统的瓶颈了。


除了 PhxKV,李润辉还和陈岩他们一起合作,开发了很多顶级性能提升技术,最有代表性的就是“小对象合并”“分布式缓存”


这两个技术的核心思想一脉相承, 都是“化零为整”。


“小对象合并”就是把要写入数据库的小文件合并起来,统一写入数据库;“分布式缓存”就是把大量写入请求先攒在缓存中,然后找合适的机会统一落盘,减少对存储的冲击。



watermark,image_bG9nby9jc2RuXzEucG5nP3gtb3NzLXByb2Nlc3M9aW1hZ2UvcmVzaXplLGhfNjI=,g_se,x_0,y_0,t_100



这些技术虽然指导思想很清晰,但是在工程实现上,已经涉及到微观世界里一个一个比特的精确挪移。就像一个由0和1组成的机械臂,在亿万次的数据冲刷下,每一次腾挪都要保证严丝合缝、万无一失,这对于工程师的经验和耐力都是巨大的考验。


终于,积沙成塔,一个个组件在赛博世界被拼装起来。


每个组件在完成之后,都要经历一次“渡劫”,那就是测试团队非人般的“虐待测试”——包括但不限于拔磁盘、断网、断电,以及各种发送错误的消息包。


PhxKV 作为核心组件,当然不例外。


最初,一切出奇地顺利,测试了10天,一个故障都没发现。李润辉窃喜:“看咱设计的这玩意多棒!”


不过,测试团队的同学经过多年历练,都是久经沙场的老炮儿,可没那么好糊弄,他们换了一个又一个新的测试用例,不测出几个A类问题,不把系统搞死就誓不罢休。。。


遗憾,一些比较深层和偶发的问题还是开始一个个暴露出来了。测试团队前脚发现问题,李润辉带着团队后脚跟着修。讲真,Bug 堪比女朋友:有些 Bug 容易搞定,而有些 Bug 就像幽灵一样,时而重拳出击,时而随风消逝,搞得同学们恨不得要找个崂山道士来施施法。。。


当然,百因必有果,这些 Bug 的原因还是被他们用科学的方式找到了。


李润辉记得,最难的一个 Bug 团队整整修了一个礼拜。那段时间,加班是家常便饭,有一次干得太投入,一抬头窗外已经漆黑,晚上连末班地铁都没赶上。


但是所有人都清楚,只有这样惨绝人寰的测试,才能把系统“灵魂最深处”都洗礼一个遍,而在测试阶段测出问题,比交付给客户之后出问题要好一万倍。


伴随着一群技术宅的死去活来,赛博世界里的引擎被一天天打磨得更闪亮,低吼轰鸣。



watermark,image_bG9nby9jc2RuXzEucG5nP3gtb3NzLXByb2Nlc3M9aW1hZ2UvcmVzaXplLGhfNjI=,g_se,x_0,y_0,t_100



(六)成为“企业级”



很多人都有个误解。


他们觉得“企业级产品”应该像美艳无双的 影后,各个角度都芳华动人无可挑剔,让人垂涎欲滴。
但真正的“企业级产品”应该像聪颖贤惠的 妻子,甘愿陪你在漫长的岁月里前行,永远不离不弃。


深信服这帮技术宅想做的企业级存储也是一样:好的存储产品不是用来“过瘾”的,而是用来“过日子”的;好的存储产品不是给你“烧钱”的,而是给你“赚钱”的。


既然是过日子,就逃不开“柴米油盐”——成本。


对于存储设备来说,最大的成本就是磁盘。所以一个根本原则就是:在存储相同内容的情况下,占用的磁盘空间越少越好。


你直觉上可能会觉得:存储一定的内容所用的磁盘空间应该也是一定的,怎么还能变少呢?


不仅能,方法还不止一种。



首先,可以使用“纠删码”技术。


纠删码是啥?举个栗子你就明白了。


假设你现在就是那个存储设备了,你的任务是存储两个数字:1024和2020。于是你找来两张纸,分别写上1024和2020。但这样有个问题,如果不小心丢了一张纸,那上面的数字也就没了。为了保险起见,你必须把数据写两份。也就是四张纸:1024、1024、2020、2020。如此一来,丢掉任意一张纸,你都可以保证数据安全。



watermark,image_bG9nby9jc2RuXzEucG5nP3gtb3NzLXByb2Nlc3M9aW1hZ2UvcmVzaXplLGhfOTA=,g_se,x_0,y_0,t_100



以上是正常的方式,需要占用四张纸。


你还有一种聪明的方法。先在第一张纸上写1024,再在第二张纸上写2020,然后找来第三张纸写上:“第二个数比第一个数大996”。这就是一个“纠删码”。此时,如果不小心第一张纸丢了,你可以用二和三把第一张的数字算出来;第二张丢了也可以用第一张和第三张算出来;第三张丢了,那丢就丢了吧。所以,仍然是丢掉任意一张纸都可以保证数据安全。



watermark,image_bG9nby9jc2RuXzEucG5nP3gtb3NzLXByb2Nlc3M9aW1hZ2UvcmVzaXplLGhfNjU=,g_se,x_0,y_0,t_100



以上是纠删码的方式,只需要三张纸。


你看,纠删码就像变魔术一样,在介质更少的情况下,保证了同样的可靠性。这就是数学的魔力。



其次,还可以使用“重删”技术。


这个比较好理解:假设老板给同事们每人发了一个《公司章程》PDF版本。同事们怕丢,ABCD四位同事都分别把这个 PDF 文件存在了公司的企业级存储里。但是对于存储系统来说,这四份《公司章程》其实背后是一个 PDF 文件,不需要占用四份空间。它完全可以通过智能识别,只保留一份,把重复的文件删掉——无论这四个同事谁来查询,都给这一份。


这又能节省一大票存储空间。



watermark,image_bG9nby9jc2RuXzEucG5nP3gtb3NzLXByb2Nlc3M9aW1hZ2UvcmVzaXplLGhfOTA=,g_se,x_0,y_0,t_100



再次,还可以用“压缩”技术。


这个你就更熟悉了。例如我们每天看到的 jpg 文件,就是一种把大文件压缩之后的格式,压缩之后的 jpg 往往只有原图的十分之一大小。


但是,陈岩他们要做的是更凶狠的压缩,把 jpg 文件再压缩一次,压缩之后只有 jpg 的十分之一,原图的百分之一。。。


你可能会说,压缩成这样,那不就损失画质了吗?


损失画质还算什么汉子?他们要做的是不损失画质还要压缩这么多。要做到这一点,必须用到最新的人工智能技术来进行压缩和解压。


为此,陈岩三顾茅庐找来了行业内一票顶尖的人工智能博士,专门研究压缩算法。为了保证压缩之后没有质量损失,他们还做了好多实验——让专家用肉眼来盲测坚定,面对两幅图片,一个是压缩过的,一个是没压缩的,直到专家无论放大多少倍都分辨不出来哪个是压缩文件才算是成功。



watermark,image_bG9nby9jc2RuXzEucG5nP3gtb3NzLXByb2Nlc3M9aW1hZ2UvcmVzaXplLGhfNjI=,g_se,x_0,y_0,t_100



在EDS里,陈岩他们还塞进去无数可以降低成本的前沿技术,每一个都可以拿来顶尖的科研论文讲足一万字,这里篇幅有限,只能先说这么多。


总之结果就是:原本200T的内容,放在深信服 EDS 系统里,可能只占用100T的空间。


但是,我想提醒你注意一点:纠删码需要配合计算才能恢复丢失的数据,重删也需要计算力来检测重复文件,压缩就更需要计算力来实现了。也就是说,这些技术减少磁盘占用并不是没有代价的,它的代价恰恰是计算力。


简单一句话:这些技术都在用计算力换存储空间。


但系统中的计算力也是有限的啊。所以,在工程实现中,并不是简单地压缩得越狠越好,也不是重删做得越极致越棒,而是综合考量成本和性能的平衡。


这些精妙的平衡点,不是靠拍脑袋就能想出来的,甚至也不能靠计算得出来的。它像一个神秘迷宫的终点,要在漫长的开发过程中,一点点调试每一个参数,推敲每一种取舍,组合每一种技术才能最终抵达。


在我看来,这才是一个伟大工程最迷人的地方。



watermark,image_bG9nby9jc2RuXzEucG5nP3gtb3NzLXByb2Nlc3M9aW1hZ2UvcmVzaXplLGhfNjI=,g_se,x_0,y_0,t_100



你可能还记得,EDS 的设计目标是要承载百亿小对象的存储和调度。这下,终于到了见证奇迹的时刻。


在最终的压力测试中,各种测试数据不断加码,缓慢而坚定地爬升到了100亿量级。大伙儿都屏气凝神,秒针一格一格地跳动,系统所有“生命体征”都非常完美,监控曲线像一条战斗机的尾迹云丝滑掠过长空。


陈岩长出一口气,吹出去的牛逼,总算实现了!


几百人夜以继日,一行行代码的反复调整,一个个模块的反复测试,才在一个“分布式存储系统”前面加上了“企业级”三个字,最终成为“企业级分布式存储系统”——EDS(Enterprise Distribute Storage)。


我还记得大学刚毕业的时候,那时觉得 EMC、Oracle 这种国际顶尖公司太牛了,一辈子都超不过他们。
但是现在我却不这么觉得了。历史在给我们机遇,我们有机会做最好的前沿研究,做最强的产品化。现在我可以骄傲地说,我们距离国际顶尖大厂已经非常近了。这是我们这一代技术人的幸运。


陈岩对我说。


伴着机箱指示灯的明灭,这些代码被灌装进一个个“盒子”,它们成为了一个生命。


那些为存储技术做了六年积累的同学们,还有为这个产品直接研发了两年半的技术宅们已经等待了太久,他们迫不及待地向全世界宣布这个婴儿的诞生。



watermark,image_bG9nby9jc2RuXzEucG5nP3gtb3NzLXByb2Nlc3M9aW1hZ2UvcmVzaXplLGhfNjI=,g_se,x_0,y_0,t_100



(七)再上前线



2019年初,EDS发布。


与此同时,深信服进行了一次产品线重大改革,把 EDS 和已有的 SD-WAN、应用交付、桌面云划归到了“新 IT”产品线。而彼时正在前线指挥销售战役的张强突然被一道金牌召回深圳,成为了整条产品线四个产品的运营负责人。


知道自己将要回到总部,在外“流浪”了十一年的张强心中像海浪翻涌。


作为销售队伍,他一直是做“媒人”,尽职尽责把产品线这个“闺女”嫁出去,但是闺女本身出落成什么样他从没有机会插手。这次他终于要做一把娘家人,亲自带着孩子成长了。


这是一场横跨十年的成全。


运营负责人不仅要为产品未来的研发方向建言献策,还要把产品的特性、用途和场景用最透彻的方式讲解给销售队伍。


EDS 将要成为无数企业的大脑,责任重大。不知怎的,张强突然回忆起很多年前深信服产品曾经掉链子的“创伤记忆”。履职新岗位,他第一件事儿就想搞搞清楚“这玩意儿到底质量怎么样?”


张强挑挑眉毛,试探性地问陈岩:“研发这个如履薄冰,你睡得着觉么?”


陈岩歪嘴一笑:“我睡得香着呢,怕是你睡不着吧??”


为了让张强放心,陈岩把研发团队里几位带头的博士找来,把我前面那大几千字讲的技术科普用十倍详细的方式给张强和运营团队讲了一遍,又拉着他去看了无数场测试的数据。


张强被研究团队的专业精神和匠人精神彻底震撼了,深施一礼:“我们研发兄弟可以啊!士别三日当刮目相看!”


但是,EDS 的牛X之处,只有张强懂了还远远不够,重要的是怎么让一线的销售队伍和客户也能懂。。。


看到这里,你可能也感觉到了,存储产品是一个科技含量极端密集的产品,但它就像你身边那个高冷的朋友,虽然内心奔涌,但并不容易让人接近——即使是深信服的销售同事也很难一下子100%感受到 EDS 所凝结的那种科技性感商业潜力


实际上,在 EDS 刚面世的时候,虽然有一些勇敢的前线销售同学积极推广,但是更多销售同学却踟蹰观望,不知该怎么使劲儿。


这是个很大的问题。


几百人的智慧结晶,赛博世界的一艘航母,如果因为销售团队对它不够熟悉而不能及时送到需要的人手里,那将会多么遗憾啊。。。


时光流逝,刻不容缓。张强决定,再次肉身冲进烟尘。


从2019年开始,他跑遍了全国每一个大区几乎每一座城市,每到一地,就组织当地的销售同事还有合作渠道宣讲存储产品的技术原理和应用场景。


张强像捏包装纸上泡泡的小孩那样,非得把所有的泡泡都捏碎才罢休——每到一处就一个问题一个问题地认真解决。


有的渠道商吐槽说产品不被认可,他就揪着他们追问,到底哪不好,说清楚,我们想办法改进。后来证明,所谓的产品“不好”绝大多数都是因为不够了解,使用姿势不正确造成的。


收集了大量的反馈之后,张强还组织同事拍了各种“片子”,有的是场景和部署教学,有的是实测性能的场景,有的是突然拔电测试,有的是拔硬盘测试——让销售团队每一个人都直观地感受到产品这“该死的实力”——然后就可以理直气壮有理有据地告诉用户,深信服的东西到底有多强。



watermark,image_bG9nby9jc2RuXzEucG5nP3gtb3NzLXByb2Nlc3M9aW1hZ2UvcmVzaXplLGhfMzQ=,g_se,x_0,y_0,t_100

这就是拔硬盘测试的片子



watermark,image_bG9nby9jc2RuXzEucG5nP3gtb3NzLXByb2Nlc3M9aW1hZ2UvcmVzaXplLGhfNjI=,g_se,x_0,y_0,t_100

憨豆也表示了同意。


眼看大潮将至,深信服高层也制定了“强推” EDS 的策略,加之在前线十几年的老炮儿果然内力深厚,局面被迅速打开。


在2019年推出的当年,EDS 的客户就突破了100个,其中很多都是金融、广电、政府这些重磅大佬。要知道,他们运营的都是国家基础设施,对存储性能和稳定性的要求之严格堪比皇帝选妃,选用之前会进行最苛刻的测试。


某个老牌期货公司,由于业务属于金融交易,对数据存储的安全可靠要求高到变态。这么多年一直在用老外的存储系统,国产根本没有机会。但就在2019年,问题出现了。


期货每晚要开夜盘。夜盘之前必须把白天大概80万行的交易数据同步写入进去。可是,这么高的吞吐量,原有的系统做不到。不仅如此,查询的速度也摸到了极限,这家期货公司提出要求,对方已经做不到了。


深信服这帮人看准机会,为国产存储系统争光,拿 EDS 系统去期货公司测试,在4KB,70%随机读,30%随机写的情况下,每秒吞吐量可以达到22万次。另外,查询时间也比外国友商缩短了50%。这个数据可以用惊艳来形容。


结果顺理成章,EDS 顺利替换了那家外国高端存储。


之前说过,EDS 的目标是承载百亿小文件,这个性能虽然在内部测试中完全没问题,但是却一直没机会在实战中验证。


机会终于来了。


2019年底,南方某市的公安机关,由于治安管理的需要,要进行人脸比对。它背后的存储系统要承载十亿级别的人脸基础数据,还有更多实时加入的新照片,这些都是典型的小文件。


深信服的这帮技术宅又跑去打单子,自告奋勇要承担这个任务。结果,EDS 接入系统,数据很快就接近了百亿,而且还在上升。在这么重的负载下,仍然运行顺畅,披荆斩浪。



watermark,image_bG9nby9jc2RuXzEucG5nP3gtb3NzLXByb2Nlc3M9aW1hZ2UvcmVzaXplLGhfNjI=,g_se,x_0,y_0,t_100

这只是一张示意图(非实际截图),你感受一下人脸比对系统的压力。



金刚钻实打实地验证过,才更敢揽瓷器活。


销售伙伴一起努力,整个2020年,EDS 光速进入了动画制作、石油地质勘探、卫星云图处理、基因编辑等等对数据存储需求极大,但也对存储性能要求极高的顶尖行业。


这种凶猛的姿态,超越了很多人的预期。


但最让张强感慨的并不是暴增的用户数量,而是他们背后所涌动的生命力。


对数据需求大的,很多都是“用脑”的公司,他们凝结了很多中国的优势科技,肯定是未来经济的中坚力量,我们的 EDS 产品帮到他们,就是我们在为这个时代贡献力量,这个事实让我们感到骄傲。


他说。


眼前的这群技术宅,恰如当年那些少年。不搞关系,不讲回扣。一如既往,这是一场技术的胜利。



watermark,image_bG9nby9jc2RuXzEucG5nP3gtb3NzLXByb2Nlc3M9aW1hZ2UvcmVzaXplLGhfNjI=,g_se,x_0,y_0,t_100

这就是在用户现场准备服役的 EDS,看出“分布式”的感觉了吗?


(八)平凡之路



历史的书页像拉洋片一样翻动。


2008年,中国是只问耕耘不问收获的世界工厂;2020年,中国已经是世界第二大经济体,拥有无数核心科技,GDP 超越一百万亿人民币。


2008年,深信服是只有200人的创业公司;2020年,深信服已经是一家拥有8000人,市值近千亿的上市公司。


那些技术宅的预言也一个个成真。


依靠数据医生们可以在赛博空间里复刻出每一个的实时健康状况,无数病人不再因疾病突发而徘徊在生死边缘;
依靠数据人们可以在数字世界刻画出厘米级别的高精地图,无数司机因为辅助驾驶系统而避免了潜在的事故;
依靠数据相关部门可以掌握精确到每一个乡镇的经济动向,无数贫困人口因此可以得到精准扶助。


时至今日,连最木讷的人都无法对数据的魔力无动于衷。



watermark,image_bG9nby9jc2RuXzEucG5nP3gtb3NzLXByb2Nlc3M9aW1hZ2UvcmVzaXplLGhfNDc=,g_se,x_0,y_0,t_100



而站在此刻回望,如果今天的我们没有这些已经打磨成熟的国产企业级存储产品,众多数据将无处安放,我们的企业和政府也不可能拥有今天如此之高的平均效率。由此,我们在这个时代和恶龙作战的每一次冲锋的胜算也会在无形中降低。


数据所眠之地,无外乎一个个“盒子”。但无数个盒子在赛博空间连缀成无边无际的分布式存储,就成为了这个时代的奇观。


包括深信服在内的众多有梦想的科技企业,正是这个奇观的设计师。


张强固执地坚持一个原则:“伟大的产品不应该曲高和寡。”


一个事实是:在我们的国度,最珍贵的数据往往产生在那些专业领域的一线企业中。例如特种原料行业,例如工控设备行业,例如房地产行业,例如连锁零售行业,而很多专业企业至今还没有完全意识到自己手中拥有金矿,也没有“尽早把数据积累起来”的意识。此时此刻,有无数珍贵的数据仍然在流失,这让人感到心痛。


数据流失的一大原因,其实是缺少专门为各个行业深度定制的行业解决方案。就像没有一支由驱逐舰、护卫舰、舰载机组成的航母编队,只凭一艘航母也难以单打独斗。



watermark,image_bG9nby9jc2RuXzEucG5nP3gtb3NzLXByb2Nlc3M9aW1hZ2UvcmVzaXplLGhfNjI=,g_se,x_0,y_0,t_100



和各行各业的解决方案提供商合作一起做出行业解决方案,正是今天张强和陈岩他们全力以赴在做的事情。


每个行业都有不同的特点,对于存储的需求也不同。例如连锁零售企业需要把各个渠道的用户信息汇总起来,进行精准的客户营销。医疗行业可能需要存储各种器械拍下来的片子,由系统和各个科室的病例打通;例如电视台可能需要存储各种音视频资料,并且可以让各个编辑系统都可以调用访问。
一句话,原来我们只提供毛坯房;未来企业客户可以拎包入住!


张强满眼期待。


而到了那时,也许就是另一个新故事的开始,我们不妨心怀憧憬,一期一会。


临别时我问张强,觉得自己是个啥样的人。


他想了想,说觉得自己是个平凡的人,他也把陈岩、李润辉这些深信服的兄弟们都称作平凡的人,用他的话就是:“背着双肩包,放在地铁站马上就认不出来的那种”。但是他觉得,平凡从来不等于安分,平凡人聚在一起也能做出伟大的事情。


恰如你我,每个人的人生轨迹都是一条平凡的线,而十几亿条平凡的线交织在一起,就是我们这个国度的历史。


这段历史强大,坚韧,一往无前。



watermark,image_bG9nby9jc2RuXzEucG5nP3gtb3NzLXByb2Nlc3M9aW1hZ2UvcmVzaXplLGhfNjI=,g_se,x_0,y_0,t_100




再自我介绍一下吧。我叫史中,是一个倾心故事的科技记者。我的日常是和各路大神聊天。如果想和我做朋友,可以加微信:shizhongmax,也可以关注公众号浅黑科技:qianheikeji

;