E-mail: hanshanjituan@hanshanjituan.com   |   电话: 86-021-51876135

火狐体育客户端官方下载

腾讯存储技能开展史
发布时间:2024-05-19 12:28:00来源:火狐体育客户端官方下载 作者:火狐体育官网登录入口最新版

  大家好,我是大鱼,咱们依据采访腾讯云存储技能相关担任人,来聊一聊腾讯云存储从零开端,到现在支撑起ZB级数据存储体系的技能演进进程,以及背面一些风趣的故事!

  在腾讯内部,担任腾讯存储技能研制的部分,一向被认为是生产技能专家的“黄埔军校”。腾讯不少技能方向的担任人,最早也都出自这个团队。

  这或许能够看出这支团队的见识——关于腾讯来说,存储是简直一切事务展开的根底,存储技能和架构的迭代是腾讯最重视的技能方向之一。

  作为海量数据的坚实承载,腾讯存储技能支撑了wx、qq、QZone、mail、Micro cloud、流媒体等内部事务的快速开展,一同也为许多等几十多万个客户腾讯云上客户供给了牢靠的服务,全体数据量高达EB等级。

  腾讯存储技能的开展,起源于2005年前后国内交际网络鼓起。QQ、QZone(相册)事务的开展带来了海量的图片、文件、头像等UGC数据。为应对海量存储的应战,腾讯云开端自研并构建了几套中心存储渠道,包含TFS(通用性存储渠道),CTFS(数据频删型存储,用于短期暂时存储),TDB(根据HDD的键值对存储渠道),TSSD(根据SSD的键值对存储渠道)。

  这些自研渠道为腾讯目标存储的开展奠定了根底。根据存储SET容量模型,腾讯云构建起规范可控的运营体系,支撑起了QQ空间、微云、QQ等产品的海量存储需求。

  2011~2013年,QQ相册等大体量事务的拜访量、存储量迅速增加,对深圳的三通机房在机架、带宽方面产生了较大压力。为应对底层机房,带宽等方面的瓶颈,存储渠道启动了相册一通点等项目,海量事务数据开端从深圳向西安、杭州、广州、上海等地散布,拜访带宽一同调度到天津、南京、东莞等本钱更低的一通机房。

  存储渠道在做数据散布搬家的进程中,本身也在同步迭代演进。比方TFS从3份存储演进为一同支撑1/2/3份数据的多副本存储;CTFS从2份存储演进为一同支撑2/3份数据存储。TSSD渠道也从仅支撑单机独享的Uin-Value定制存储演进为支撑多租户的通用Key-Value存储。

  腾讯相册、微云、邮件等事务在事务开展中,逐步堆集起来较多的UGC前史数据,这些前史数据拜访量低、存储量大,对事务的运营本钱构成了较大的压力。为了应对冷数据存储的本钱应战,2015年前后,腾讯根据纠删码研制了BTFS渠道(Backup-TFS)。对事务进行了数据分层,增量数据拜访量大,用TFS存储3份;前史冷数据从TFS渠道剥离出来,从3副本存储转向1.33副本的纠删存储,下降了存储本钱。这个阶段中,腾讯优化BTFS,使得部分低拜访量事务的增量数据也能够直接存储进来。

  在磨合期,腾讯云根据已有的存储拜访接口和渠道架构对外供给服务。经过一段时刻的运营,腾讯云发现外部第三方事务在体会、可用性、本钱等许多运营方面有极高的要求。为支撑云的需求场景,腾讯云对存储的接入层和索引层架构进行重构,架构扁平,模块精简,一同开端放弃私有接口,转为兼容AWS S3接口与功用。重构后存储架构支撑了腾讯云COS近几年的开展。(注:目标存储COS,CloudObjectStorage,是由腾讯云推出的安全安稳、快捷易用、低本钱的海量云端存储服务。)

  随同公有云的逐步遍及,用户存储的数据成几许倍数增加,硬件开展一日千里,公有云供给商间的竞赛日趋剧烈。2017年,腾讯云的数据量打破一个EB,成为腾讯存储前史上的一个标志性节点。

  AWS S3的存储拜访接口已成为公有云上目标存储事实上的职业规范,存储本钱、运营质量成为客户上云挑选产品供给方的首要考量。

  在这一阶段,腾讯从头审视了机房,机型等方面的技能演进趋势,重构了公有云目标存储引擎(详解见下文)。新架构选用大容量高密度存储机型,针对存储SET导致的搁置资源涣散和阻隔等多个首要矛盾,进行了全面应对和优化。

  先从全体上对腾讯云存储有了一个大致了解后,咱们再从各阶段一些重要节点作业,来了解腾讯云存储技能演化背面的逻辑,供业界参阅。

  腾讯云副总裁 、云架构渠道部总经理谢明,以及腾讯云架构渠道部体系研制中心总监郭振宇,都是腾讯云在2005-2006年开端做一致存储架构时期的重要亲历者。

  2003-2004年,谷歌宣布了俗称“三大件”的论文,即BigTable、GFS和MapReduce,这是从原先的企业级存储向互联网年代大规划运用廉价的散布式存储的一个较前期的实践。

  受此启示,谢明、郭振宇与团队中七八个人开端做通用性存储渠道TFS,把RPC结构和通信协议、存储相关的数据搬家、巡检体系等逐步做起来,第二年头就将这套存储体系用到了 QQ 相册。

  用上TFS后,QQ相册解除了每天800万张图片的上传约束,完毕了那段只需QQ黄钻用户才干无限上传图片的前史,普通用户再也无需清晨24点守在电脑前抢着上传图片。

  但与谷歌 GFS 首要面对查找场景,因而首要处理的问题是大文件存储不同,腾讯的事务里图片较多,小文件才是要处理的首要问题,可是TFS并不适合做小文件存储,因而又创建了KV存储渠道——TDB。

  再往后,腾讯云的事务中又呈现了一些需求频频删去的场景,CTFS应运而生,用于短期的暂时存储。这套体系在频删型的场景,如文件中转站中十分有用。堆集了必定口碑后,其他事务也逐步搬家到CTFS。

  除了这些,团队还针对事务场景进行用户体会优化,例如优化了索引。原先的文件体系索引有许多层,拓展性强,可是每次硬盘要进行屡次拜访。当文件较大,硬盘屡次拜访会形成延时。为此,TFS规划之初就力求硬盘只拜访一次,把chunkID(段表明)和FID索引放在一同,用户读取索引时就能知道图片在哪块盘上,只需拜访一次硬盘就能读取图片,削减磁盘IO次数进步了用户体会。

  时刻到了2009年,腾讯日益扩张的事务与激增的数据量使得存储的拜访带宽问题露出出来。

  那时,腾讯简直一切的数据都在深圳,但其时国内的骨干网宽带与现在不可同日而语。QQ相册顶峰时占用40-50G,而1G的流量对公司的网络就现已是很大的担负了。因而,在操控带宽顶峰的驱动下,腾讯开端考虑把存储向西安搬家。

  谢明回想,其时搬家的第一个设备的数据量是100T。现在看来,这个数字或许并不大,但其时却是腾讯前史上最大的一次数据搬家,因为那时分根本上没有专线可用,数据搬家都是趁着深夜公网闲暇搬家曩昔的!

  在这期间,腾讯也有两件大事产生。一是微信开端盛行,2014年岁除的微信红包,连带着朋友圈的图片共享让微信火爆起来。本来在 PC 年代新年期间不怎么值勤的腾讯工程师们发现,新年期间不得不安排更多人值勤了,以应对岁除和元旦清晨12点到12点10分这十分钟内,抢红包和图片发布剧增的数据。腾讯的存储体系面对着前所未有的压力。

  为此,谢明团队与微信团队交流,对大型缓存体系、延时告诉等技能进行改善。水来土掩,兵来将挡,到2015年腾讯存储现已能够应对岁除夜突发性问题。

  第二件大事是网络硬盘的开展给存储带来很大的本钱压力。作为一项免费服务,怎么操控本钱成了谢明团队的又一个巨大的应战。为此,团队于2014年完结并上线了根据纠删码的BTFS渠道。

  郭振宇举了两个比如来阐明其时团队面对的应战,一个是微信与海外同类产品,如在东南亚人气很高的Line和WhatsApp。为了在竞赛中获得优势,微信做了许多作业,比方东南亚用户与国内进行数据交流时链路很长,团队就根据存储做了加快通道,然后加快了国内外数据传输,速度超越Line和WhatsApp。

  另一个比如是游戏,QQ农场信任关于每个90后都不生疏,但不必定有人了解,全民偷菜的热心曾让腾讯的服务器数度溃散。其时,农场拜访量巨大,但腾讯还没有全存储体系,TDB是根据SAS盘存储的,在每秒数万的并发拜访下,底层存储体系的延时和恳求吞吐应战十分大。

  腾讯根本上把公司一切搁置服务器都用在QQ农场,但仍远远不够,需求许多收购服务器。团队一方面经过张狂的机器扩容,另一方面根据数据规划不太大可是拜访量极高的事务特色,快速研制了全内存的散布式存储体系,在保证数据安全牢靠的前提下,并发拜访的功用得到极大进步。快速上线、快速验证,彻底自研,团队再次闯关成功,“修为”再上一层楼。

  从2010年起,腾讯就开端做敞开渠道云。2013年,腾讯云正式面向B端用户全面敞开。

  在核算云迅猛开展的大布景下,职业竞赛日益剧烈,客户可挑选面较大,对功用、功用、质量、价格等方面的需求不断增强。

  此外,从腾讯云本身现状来说,数据量的不断增大,随之带来软硬件本钱、运维本钱优化的收益日趋增大。

  一同,职业下流的根底设施,如大型数据中心、新机型、新硬件、各种存储介质、网络环境的不断开展演进。比较十几年前,单个IDC机房从数千台,到腾讯现在超百万装机量超大规划机房;网络从千M网卡,开展到百G网卡,整个根底设施产生了翻天覆地的改变。

  腾讯云从2017年开端构思,并于2018年正式启动了下一代云原生目标存储体系规划——YottaStore。

  YottaStore这个姓名实际上获得很有深意,腾讯云架构渠道部存储研制中心总监杨奋强介绍了Yotta这个词背面的意义。

  关于做存储的同学来说,经常会跟GB、TB、PB、EB这些概念打交道。现在全球互联网十分大的巨子公司的数据量根本都是在EB这个量级。EB上面是ZB,全球互联网巨子数据起来也就几个ZB;ZB上面是YB,也便是YottaByte,现在全世界一切的数据加起来也不会超越一个Yotta。别的这个单词中文译名“有他”,给人安全牢靠定心的感觉,体系的Slogan便是“存储有他,才能无限”。

  所以,Yotta——有他既是腾讯存储同学们对这个体系海量数据存储才能的深沉期望,也是对服务质量和牢靠性的巨大许诺。为了完结上述期望和许诺,YottaStore完结了许多业界绝无仅有的技能打破。

  集群规划:YottaStore是一个云原生的数据存储体系,这个体系的理论极限是一个集群能够办理超上千万台服务器。而要办理这上千万台的机器,元数据办理只需求用600G左右的空间,用一台机器就能存下索引结构,这在业界是绝无仅有的。

  资源利用率:当集群规划十分大的时分,其实1%的剩下空间量都是十分十分大的,所以YottaStore的硬盘利用率十分高,加上实时收回机制,有用数据占比达90%以上,这在业界十分罕见。

  别的,因为大集群的全集群均衡才能,服务器资源运用均衡,所以资源运用率也能够做得很高,这样服务器硬件能够最低位装备,一切尖峰流量在这个反常大的池子里,波澜不惊。所以无论是本钱、仍是服务才能,都很大程度获益于超大规划集群带来的盈利。

  灵敏性:YottaStore单集群能够零研制本钱一同支撑各种不同的冗余形式,像两副本、三副本、四副本、五副本,恣意的EC编码,恣意的M、加恣意的N、恣意的算法;单AZ、双AZ、多AZ也都能够灵敏支撑;别的,整个集群能够自适应各式各样不同的机型,包含JBOD;各种硬盘介质,如磁带、HDD、SSD等,存储的拓扑结构、混合布置也都能够恣意指定。这样的灵敏性在业界名列前茅。

  运营才能:以存储节点迭代晋级为例,十万百万规划的一个集群,上线晋级速度都是相同的,假如是同构的数据格式,分钟级就能够完结整个晋级进程;而假如是异构的数据格式,集群能够在短时刻内主动将数据格式通明收敛到最新版。

  可用性:YottaStore开端上线大规划支撑事务的前三个月一向保持百分之百的可用性,到现在一年半了,体系一向单人值周零毛病运转,在业界是极罕见的。可用性数个9很简单,可是可用性100%十分难。例如机房网络颤动,假如容错做的不够好,就很简单就会呈现失利。可是YottaStore在初期上线的很长一段时刻都是百分之百的可用性。

  YottaStore是腾讯云目标存储服务COS的数据存储引擎,支撑起整个腾讯云海量数据的存储。COS的规范存储、低频存储、归档存储、多AZ存储等产品形状都是根据YottaStore推出。

  得益于YottaStore在集群规划、资源利用率、灵敏性等方面的技能打破,近期COS重磅推出的深度归档产品改写了业界存储的最低价:1分钱/GB/月。

  剧烈竞赛环境下,本钱是存储事务胜出的关键因素之一。YottaStore是怎么优化本钱的呢?

  资源利用率进步:根据前文所述的在超大规划集群和超高资源利用率上的技能打破,跟着资源利用率的增高,单位存储的本钱随之下降。

  高密硬件适配:跟着磁盘容量扩展,单机磁盘数变多密度增高,本钱也随之下降;此外,CPU、网卡等新硬件的改变都会导致本钱下降。

  场景优化:针对海量小文件的用户场景,YottaStore选用多种冗余和数据安排战略继续优化本钱。

  此外,关于一套承载着用户事务数据的存储体系来说,数据一个都不能丢、安全牢靠是最重要的许诺。在数据牢靠性方面,YottaStore在数据冗余、数据巡检、数据修正、数据校验等方面做了许多作业,保证了数据的牢靠性。

  到这儿,咱们回忆了腾讯云存储技能开展的悉数进程,也得以从中一窥互联网大厂在底层存储技能与事务开展紧密结合,“合作作战”成功的诀窍,期望对业界有必定的启示。云年代下,腾讯云存储还将有哪些立异,咱们拭目而待!!

火狐体育平台app下载注册-火狐体育客户端官方下载-火狐体育官网登录入口最新版 © 版权所有 沪ICP备18022337号