作者介绍:刘金明,2008年硕士毕业加入腾讯,一直在架构平台部从事文件存储服务平台的建设和运营,专注于成本、体验和功能的持续优化。文件存储服务平台目前已接入微云、邮件、腾讯视频、QQ群以及腾讯云对象存储COS等数万个业务,存储量数百P。
腾讯TEG架构平台部研发的分布式文件存储系统TFS自2006年诞生至今已超过10年,存储量突破EB级别。随着业务的不断发展和演化,针对业务不同的使用场景,定制化开发了多个业务支撑平台。文件存储服务平台就是基于TFS研发的高可用,高稳定,强安全的云端存储服务系统。目前已接入QQ、微云、QQ邮箱、腾讯视频等腾讯内部数百个业务以及腾讯云对象存储服务COS的数万个客户,存储量数百P。
有别于图片平台和视频点播平台对数据格式的深入理解,文件存储服务平台更关注数据的存储和全局分布调度,同时支持全局排重和跨业务转存能力,在保证数据足够安全可靠的情况下做到成本收益最大化,另外平台可支撑任意数量、任意大小和任意格式的数据存入,满足用户丰富的应用场景。
为了支持海量的存储规模,并解决一些如地震、洪水等不可抗力因素造成的数据安全隐患,平台将数百P数据分布在国内外多个机房,任何一个机房都不会成为资源瓶颈。同时平台实现了用户索引和数据的分离存储,用户可根据C段IP来申请上传服务,平台通过IP直通车将请求定位到路由最近的可服务的机房,并返回给用户匹配的运营商IP来实际上传上传数据,达到就近上传的效果。其次用户可选择接入分布在全球500+节点的CDN服务,将极热文件分发到CDN,极大的提升下载体验。
当我们上传一个电影或者安装包到微云的时候,当我们用邮箱给不同的朋友发送一些材料的时候,当我们想把家人用QQ传送的文件保存到微云的时候,我们发现不管文件有多大,我们都可以在秒级内传完,这是因为平台构建了全局文件信息摘要索引,平台下所有业务可以根据文件摘要信息相互排重和互转,极大提升用户体验且降低存储成本。
多级存储:平台提供多种存储级别供用户选择,并提供了配套的级别调整能力。通过TFS家族中的标准存储引擎,低频存储引擎和近线存储引擎,分别实现了线上实时存储的高频存储服务,低频存储服务,以及近线存储服务。高频存储拥有低访问时延和较高的吞吐量,因而适用于有大量热点文件,需要频繁访问数据的业务场景,例如热点视频,移动应用,游戏程序,动态网站等。低频存储拥有较低存储成本和较低访问时延,适用于较低访问频率的业务场景,例如网盘数据,低频档案等。近线存储是拥有极低存储成本的在线存储服务,相比离线存储,近线存储在访问时,无需用户等待,适用于数据访问频率极低但是必要时仍需要在线读取的业务场景,例如较冷的媒体资源,灾难备份数据等。用户可以根据自身的业务场景选择存储级别,同时在使用过程中可以自动或者手动的调整存储级别以适应当前业务场景。
冷热智能调度:往往一个业务的文件可能不只适应一个存储系统,比如QQ邮箱中的附件会随着时间的推移逐渐变冷,腾讯微云中的文件大多数用户备份的文件都极冷,但是也有一些热门电影等热文件存在,通过对各个业务的深入理解,以及大量的数据分析,平台对每种业务采用了不同的调度策略。像微云这种冷数据居多的业务,上传直接选用近线存储,通过平台记录的文件访问次数,当访问频率超出近线存储阈值时,实时调度到低频或者高频存储,同时在数据逐渐变冷后,再调度到近线存储,实现了文件在各个存储引擎之间的智能调度,大大节省了存储成本。
数据存储的持久性和可用性:平台分别从磁盘、服务器、集群、机房、跨地域等五个方面进行容灾,使得小到磁盘的某个扇区异常,大到某个机房网络中断甚至遭受如地震等不可抗力因素造成机房销毁时都可以保证用户数据的安全,数据持久性高达11个9,服务可用性99.95%。
保证数据的可销毁性:用户要求删除对象数据时,数据将从内存以及磁盘中删除,并且原磁盘使用空间将会被新的对象数据覆盖,从而实现彻底删除,无法复原。下线的存储服务器报废时,磁盘通过消磁销毁里面的数据。
保护数据私密性:外部客户接入可通过腾讯云安全平台提供的统一鉴权服务来保证数据的私密性。鉴权服务平台的每条权限记录由用户、操作、条件、资源四部分组成,即说明在什么条件下,谁是否可以对哪条资源做什么类型的操作都由鉴权服务统一控制,从而保证用户数据的私密性,方便用户更智能地分配资源的权限。
保护数据抵抗攻击:平台提供防盗链功能,用以屏蔽恶意来源的访问,DDOS攻击防护和CC攻击防护,可以过滤恶意攻击数据包,清洗出正常流量。
海量UGC业务存储场场景:平台能够随着用户数据量的增多自动扩容,满足客户海量存储的场景,并且自动选择用户就近节点上传、下载,大幅度缩短了终端上传文件的时间,同时也提高了文件上传的成功率,在腾讯微云业务已经得到了很好的应用。
大数据计算场景:平台比传统的NAS设备有更充足的带宽支持,避免了访问时延长或者服务不可用的情况出现,并且可根据用户对计算时间的要求,对存储和带宽的规模进行调整,使客户成本收益最大化。
数据备份的场景:前文已经提到,平台提供了一套分级存储的方案,对冷数据存储的场景,客户可选择将数据保存在低频或近线存储中,如此可以在不降低数据持久性的前提之下,为客户提供一个海量低价的空间。
热点资源的分发下载场景:面对视频点播源,游戏资源等热点文件下发的场景,平台可结合CDN使用,使客户灵活应对大流量和高并发的业务场景,目前已支撑包括腾讯视频、全民K歌以及快手、CNTV等大流量客户。
视频、图片等云端数据处理场景:用户保存在文件存储服务平台中的视频、图片、文档等数据如需视频转码,图片缩放、识别鉴黄、文档预览等高级处理服务,可通过配套的数据处理服务,同时可选择FPGA卡等硬件加速,使得数据无需再下载到用户本地就可以快速、稳定的在云端处理完成。
架构平台部会继续在TFS家族中追求存储成本的降低,以及功能的极致,体验。近期会推出成本极低的归档存储服务,适用于访问极低的归档类存储场景,如视频监控,医疗档案、数据备份等,进一步丰富存储产品线,使得客户可选择更低的成本存储海量数据,同时更进一步的丰富产品功能,继续加强上传、下载等核心体验,为客户提供更优质的服务。
文章来源公众号:腾讯架构师(TencentArchitecture)
原创声明:本文系作者授权腾讯云开发者社区发表,未经许可,不得转载。
如有侵权,请联系 cloudcommunity@tencent.com 删除。
原创声明:本文系作者授权腾讯云开发者社区发表,未经许可,不得转载。
如有侵权,请联系 cloudcommunity@tencent.com 删除。