QQ空间|腾讯存储技术背后的十五年往事( 三 )


“压力其实是挺大的,因为你中间一旦有什么问题,风险还是很高的。”
而在之后,这样情况也并不只是在春节的时候发生,无论是哪家公司筹谋的活动,大家都会来微信朋友圈来“晒”。
“很多时候,友商活动策划做的是否完美,我们可以‘检验’的,而检验的依据就是某一时间段节点给腾讯存储带来的压力。因为微信的业务太大了,一个活动产生了爆点,就会额外给我们存储带来很大的压力,因为用户所有分享在朋友圈的图片和内容最终是要存储在我们数据中心的。”
得益于2014年春节期间的经历,腾讯存储团队在春节过后就开始针对这些“爆点”制定了柔性策略。
2015年春节,微信与央视合作,为观看春晚的微信用户发红包,也让微信的用户量快速增长,除夕凌晨零点的朋友圈等存储场景也达到了数十倍的增长。
QQ空间|腾讯存储技术背后的十五年往事
文章插图
2016年腾讯存储团队春节值班零点后留影
“微信是一个要出海的业务,出海其实给我们带来了很多挑战。”
说这句话的是现任腾讯云架构平台部系统研发中心总监郭振宇:“微信出海是有一些竞争对手,特别是在东南亚有LINE,还有WhatApp,东南亚的人和自己国内人进行数据沟通的链路很长。”
显然,这是不利于微信抢占海外市场的。
作为公司业务的支持方,我们在存储上面要配合微信团队做更定制化的服务,因为微信也是腾讯重要战略业务,所以当时我们团队为微信做了很多存储相关的业务系统。
郭振宇接着说:“比如怎么样让图片传输更快,我们在全国建立了很多接入点,用户数据只需要传到最近的地方,国外只传到国外数据中心,内地也只需传到内地数据中心。”
而这一切,其实对于存储团队来说,都不再是什么难题。
来自外部的“挑战”云计算的发展,让很多厂商都瞄向了To B的生意,腾讯云亦是如此,但这又何其容易?
集团层要制定大的战略,事业部要具有To B的思维,技术上也需要具有To B 的意识。
但腾讯的存储部门却在此走了一次“弯路”。
QQ空间|腾讯存储技术背后的十五年往事
文章插图
腾讯云副总裁、云架构平台部总经理谢明
“说到腾讯云,其实在2012年腾讯开放平台就已经开始做云了,但是开放平台跟现在的腾讯云并不一样,开放平台时候,我们和合作伙伴对接时我们是资源方,因为你要用QQ、QQ空间的资源。但是到后来腾讯云做To B服务的时候,这时候要靠自己的实力去证明我们是专业的。”谢明如是说。
此时,支持腾讯自己业务的TFS存储系统等,已经成熟且稳定。在腾讯看来,将TFS存储系统进行一次产品包装后也能服务好外部第三方业务。
谷歌其实就是这么做的,目前,Google的云存储产品GCS建立在ColossusV2的根基上。ColossusV2是典型的元数据Federation架构的分布式文件存储系统,说白了ColossusV2就是Google由GFS存储系统改进优化而来的。
“但Google的GFS存储系统是诞生于云计算兴起之前。”现任云架构平台部存储研发中心总监杨奋强接着说:
那时候扁平式的对象存储场景不像今天这样丰富清晰,所以分布式文件系统管理的单位是文件,过多过小的文件会导致元数据管理爆炸,所以主要面向几十M的大文件,这样一个百字节的元数据可以管理几十M的大文件,元数据单字节管理效率大概百K级别,冗余的目录树显然对对象存储场景是多余而且低效的。
而此时,又有几个问题摆在了腾讯云存储产品团队和存储技术团队面前:

  • 云计算迅猛发展,行业竞争的日益激烈,客户可选择面较大,对功能、性能、质量、价格等方面的需求不断增强;
  • 从自身现状来说,数据量的不断增大,随之带来软硬件成本、运维成本、优化成本的日趋增大;
  • 行业下游的基础设施,如大型数据中心、新机型、新硬件、各种存储介质、网络环境的不断发展演进。
在这个形势下,2017年,腾讯存储部门决定要做一个新的存储系统,一个更适合云计算的Blob存储系统。
着眼于未来“开始我们想的名字是BlobStorage。”
杨奋强笑着对雷锋网说:“Blob的意思是一大块连续的二进制数据,像一个视频文件就是一个Blob数据,Storage的意思是存储空间。”
显然,这完全是大家印象中程序员的“正常操作”,但没有获得谢明的赞同。
最终存储系统的名字被确定为「YottaStore」。
“我们是做存储的,每天打交道的词汇比如说GB、TB、PB、EB、ZB,而在ZB上面是YB,也就是YottaByte,目前全世界所有的数据加起来也不超过一个Yotta。”杨奋强接着说。