首届云上广交会存储服务架构与实践

疫情压力下,广交会63年来首次整体搬上”云端”,首次整体搬上”云端”的广交会运行平稳,服务了217个国家和地区的采购商观展。作为本届广交会的技术服务商,腾讯为广交会网上举办提供整体技术支持、平台研发服务与云资源支撑。

其中,腾讯云对象存储COS,为本届为期十天的广交会,提供10*24小时不间断的、高可靠的云上存储服务,服务了近2.6万家参展企业通过图文、视频、3D等形式的海量展品展示,支撑了180万件商品和数千个直播间同时在线,满足了以VR呈现产品展厅/企业全景等新型推介形式。

1、 腾讯云对象存储COS为首届云上广交会设计的架构

1)COS无目录层次结构、无数据格式限制、无容量上限

腾讯云存储COS,是无目录层次结构、无数据格式限制、无容量上限的云上分布式存储服务;很好满足本次广交会的图文、视频、3D、VR等多种形式的海量展品/展厅/企业全景展示。

COS是对象存储,基于对象Key来访问对象,对象就是文件,且不限定文件格式,且文件大小基本无限制,所以,COS能很好支持本次广交会的图文、视频、3D、VR等多种形式文件。

COS基于扁平式架构来组织对象,没有目录层次结构的束缚,所以,文件数量无上限,轻松扩展到10亿+文件,且性能基本没有降低。对于文件存储是不可想象的,文件存储基于目录树来组织文件,目录深度(目录深度,是指目录树的包含嵌套子目录的层次的数据)和广度(目录广度,目录里所包含文件或子目录的数量)都是有限制,而且随着目录深度和目录广度的攀升,性能将逐步降低,因为,每次IO请求,均要去目录树查找到所要访问的文件,查找所需时间跟目录深度和目录广度呈线性关系,再叠加目录树的修改、多节点并发修改,将会更加糟糕。COS扁平式架构,完美解决目录树耗时查询和并发修改等问题,实现容量无上限。

COS容量无上限,解决存储最普遍的痛点,扩容。正因为扩容的苦楚,每次使用存储之前,精确做容量规划,来避免后续扩容烦恼。但像广交会这样的活动,提前是很难估计容量需求,特别是第一次线上广交会,更是没有历史数据供参考。COS容量无上限正好解决此痛点。

2)COS多AZ架构

为保障”云端”广交会的10*24小时不间断运行,腾讯云对象存储 COS 默认提供99.95%的可用性和99.999999999%(11个9)的数据持久度。

为进一步提升数据可用性和安全度,COS提供多AZ存储架构;一个可用区AZ(Availability zone) 指的是一个腾讯云中的数据中心的地理区域,腾讯云不同可用区之间完全隔离,保证不同可用区间最大程度的稳定性和容错性。可用区具有冗余电源、联网和连接。腾讯云在一个地域提供多个可用区,可用区之间通过高带宽、低延迟网络与完全冗余的专用城域光纤互连。

COS多AZ高可靠架构,将数据打散到同一个地域的不同可用区,为用户数据提供了数据中心级别的容灾能力,将用户数据分散存储在同城中的不同机房,当某个机房因为自然灾害、断电等极端情况整体故障时,依然提供稳定可靠的存储服务,将可用性提升到99.995%,数据持久度提升到12个9。

多AZ架构,采用纠删码冗余存储技术。以3AZ为例,采用9+9纠删码冗余存储技术,客户原始数据写入时会被切成9个数据块,同时生成9个校验信息块,打散成3份存储在不同的可用区机房内,每个机房存储6个数据块,各个机房间数据保持一致。当某个机房发生极端情况时,客户可以从其余的12份数据块中正常读取数据,不会出现业务中断或者数据丢失的情况;满足客户对数据高可靠、业务高可用的需求。

多AZ架构,实现了云上同城双活、同城多活的服务品质,满足数据中心级高可用诉求,容忍同城(同地域)任意一个或多个数据中心故障,保持业务高可用,数据不丢失、业务不中断。整个故障切换过程用户无感知、业务不中断、数据不丢失。可满足关键业务系统对于RPO=0、RTO=0的极致要求。

在多AZ架构上,提供了高达6万QPS高性能(高出业界3~6倍),在保障高可靠存储服务的同时,提供大并发高性能服务能力;很好满足广交会这样大型活动的稳定运行需求。

3)COS跨地域复制

本次”云端”广交会,为了进一步保障万无一失,启用腾讯云存储COS跨地域高可用方案,做为应急预案,一旦某地域不可用,或链路不可达,立即切换到另一个地域,业务平滑切换另一个地域的COS,整个切换自动完成,业务无感知,保障业务连续性。地域,是公有云概念,是指物理数据中心的地理区域,腾讯云不同地域之间完全隔离,保证不同地域间最大程度的稳定性和容错性。腾讯云COS已在全球30+地域开服,跨地域高可用,能容忍地震、海啸、洪水等极端自然灾害。

COS跨地域高可用方案架构如下图所示,本次”云端”广交会的图片/视频等数据,写入地域A的主存储桶A,通过COS跨地域复制功能,基于腾讯云内网,快速、自动同步给地域B的备存储桶B;每次同步增量数据,即保障主存储桶与备存储桶的数据一致,又节省传输带宽,节省主存储同步数据的负担。

本次”云端”广交会的访客,浏览展品图文视频展示,通过互联网HTTPS/HTTP协议读取COS,默认访问主地域的主存储桶。一旦主地域不可访问,主动访问备地域的备存储桶,由于,被存储桶数据与主存储桶一样,所以,能访问到与主存储桶一样的数据。本次”云端”广交会启用腾讯云COS + CDN 一体化方案,将主地域的主存储桶设置为CDN的主源站,备地域的备存储桶设置为CDN的备源站,CDN依次去主源站、备源站拉取数据,若CDN缓存未命中,去主源站A存储桶读数据,假设A存储桶链路不通,CDN去备源站B存储桶读数据,平滑实现主切备,自动完成主切备的全过程,对用户完全透明。

COS跨地域复制,可在不同存储区域的存储桶中自动、异步地复制增量对象。可实现跨地域级别的容灾、就近访问提高可用性。COS 跨地域复制功能丰富,支持双向复制,以及一对多复制。

客户对文件产生的所有增量操作,包括删除文件操作(开启多版本的情况下删除文件操作实际上是创建一个 0 字节的特殊 delete marker 文件)都会经由源桶通知 costrsf 模块,任务入 CMQ 队列成功之后则返回成功,后续由 costrsf 模块异步的同步文件到目的存储桶,所有的元信息以及访问控制信息 ACL 都会原封不动的同步到目的端,目的端文件的版本号会和源文件的版本号也保持一致。源文件会维持一个 x-cos-replication-status 字段来保存跨地域复制任务的状态,客户可以通过 HEAD Object 接口来查询文件的复制状态。

COS多AZ架构和跨地域复制,在本地地域实现多数据中心多活,在其他地域再保存复制数据,已容忍整体地域不可用情况下的数据安全和业务连续性。多AZ架构,保障本地域任意数据中心不可用的业务高可用,数据立即同步,业务及时切换,RPO=0、RTO=0。跨地域复制,保障任意地域不可用的业务连续性,异步复制数据,RPO大于0。相比用户自建两地三中心,COS实现了多地多中心,COS多AZ架构实现本地域多个数据中心高可用,COS跨地域复制实现跨地域容灾,可靠性更高、灵活性更大;并能在一键式开通、按需使用、按用量计费,节省用户宝贵时间、砍掉建设费用、节省使用费用、省去维护费用。

4)COS全球加速

本次”云端”广交会,服务全球客户,正好是COS全球加速典型场景。

COS全球加速,让全球用户加速访问COS,利用全球分布的云机房,帮助全球各地用户快速访问最近的腾讯云接入层,提升业务访问成功率和稳定性。使用全球加速功能就近接入之后,客户端到接入层的”加速”实际上是,由稳定快速的内网专线网络传输链路,来代替外网不稳定的跨国或跨地域的访问链路。

开启了全球加速后,用户上传图片的请求链路则发生了变化,请求将由腾讯云智能调度,如下图所示,就近接入到广州接入层,走腾讯云内网专线传输至北京存储层落盘。稳定快速的内网专线网络传输链路代替了不稳定的跨地域的访问链路,因此请求的可用性和速率都能得到提升。

四、结语

腾讯云COS为首届”云端”广交会保驾护航,支撑10*24小时不间断平稳运行,为云上会展提供新方案、新范例。