订阅
纠错
加入自媒体

从崩溃到有序,阿里巴巴数据中心如何一路走来?

2019-11-14 15:33
与非网
关注

从崩溃到有序,阿里巴巴数据中心如何一路走来?

自研数据库时代:开创未来

2016 年,阿里决定开始自研数据库。

对于自研数据库的原因,有以下三点:

第一,阿里需要一个能够全球部署的原生分布式数据库;

第二,双 11 的场景对数据库提出了极高的要求:

性能:在双 11 零点需要数据库提供非常高的读写能力;

存储成本:数据库使用 SSD 来存储数据,而数据存在明显的冷热特性,大量冷的历史数据和热的在线数据存放在一起,日积月累,占用了大量宝贵的存储空间,存储成本的压力越来越大。继续在开源数据库基础上进行改进已经无法满足业务需求。

第三,新的硬件技术的出现,如果说 SSD 的大规模使用和 X86 服务器性能的极大提升推动了去 IOE 的进程,那么 NVM 非易失内存,FPGA 异构计算,RDMA 高速网络等技术将第二次推动数据库技术的变革。

POLARDB

2017 年 9 月,POLARDB 盛大发布。

POLARDB 是阿里自主研发的下一代关系型分布式云原生数据库,目前兼容三种数据库引擎:MySQL、PostgreSQL、高度兼容 Oracle 语法。计算能力最高可扩展至 1000 核以上,存储容量最高可达 100T,能够解决数据量瓶颈、扩展难以及数据一致性和可用性难保证等主要问题。

大概能够理解为,过去需要 70 个小时的 10TB 的业务数据创建只读副本,在 POLARDB 上只需 2 分多钟。更关键的是,它的成本只有商用数据库的十分之一。发布后半年内,上千个用户用上了这个新数据库。

X-DB

此外,针对淘宝订单地域多样的特殊业务场景,要求数据要可扩展,持续可用、强一致。因此,新一代数据库必须要包含全球部署、对存储数据冷热隔离等几个重要特点。

一个自研的超大规模数据库系统 X-DB 由此诞生。短短几个月,X-DB 就在集团体系内完成了 MySQL、AliSQL 集群的升级换代。

可以看到,对阿里的自研数据库而言,2017 年意义非凡。正是从这一年开始,以大致胜的 X-DB 和以快致胜的 POLARDB 成为了阿里数据库的两款拳头产品。
(X-DB 现已更名 POLARDBX,成为 POLARDB 的分布式版本,共同通过阿里云为社会提供服务。)

神龙架构

同年,阿里云“神龙架构”横空出世,此后的 2018、2019 年,神龙架构一年一个台阶,第二代、第三代神龙服务器接踵而至。

在今年的阿里云栖大会上,阿里云正式发布第三代自研神龙架构,全面支持 ECS 虚拟机、裸金属、云原生容器等,贯穿整个 IaaS 计算平台,并在 IOPS、PPS 等方面提升 5 倍性能,用户能在云上获得物理机 100%的计算能力。在历经软件虚拟化、通用硬件虚拟化、专用硬件芯片虚拟化三个阶段后,第三代神龙架构实现了裸金属服务器、ECS 虚拟机等计算平台的架构统一,用户可获得高质量的弹性资源。

阿里云官方透露,神龙架构已大规模应用于淘宝、天猫、菜鸟等业务。未来,阿里云遍布全球的百万服务器将全面升级至第三代神龙架构。

上述是阿里在数据库方面的改进和革新,三个阶段分别代表着阿里在三个不同的发展时期对不同业务需求做出的应对之举。每一个阶段过渡的背后,都是一代代阿里人对于信念和执着的真实写照。

那么,数据库之外,阿里还做了哪些尝试和颠覆?

从崩溃到有序,阿里巴巴数据中心如何一路走来?

其它技术突破

Tair

在双 11 的历史上,阿里自研缓存 Tair 是非常重要的技术产品,Tair 是一个高性能、分布式、可扩展、高可靠的 key/value 结构存储系统。数据库正是因为有了 Tair 的帮助,才扛起了双 11 如此巨大的数据访问量。

但是,在 2016 年双 11 期间,Tair 遇到热点这一技术难题,由于热点无法预测,加上访问量非常大,很容易就超出了单机的容量限制,CPU 和网卡都会成为瓶颈。

对 Tair 来说,在保证高并发访问的同时,如何确保低延迟,如何确保成本低于业务增速的技术挑战越来越大。对于分布式存储系统来说,热点问题都是比较难解决的。而缓存系统流量特别大,热点问题更为突出。

2017 年,团队开发出热点散列技术,当发现热点后,应用服务器和 Tair 服务端就会联动起来,根据预先设定好的访问模型,将热点数据动态散列到 Tair 服务端其它数据节点的 HotZone 存储区域去访问。通过将热点散列到整个集群,所有集群的水位均降低到了安全线下。

“预热”技术

双 11 期间,购物车等数据库在零点的一刹那,由于 Buffer pool 中的数据是“冷”的,当大量请求在零点一瞬间到来时,数据库需要先“热”起来,需要把数据从 SSD 读取到 Buffer pool 中,这就导致瞬间大量请求的响应时间变长,影响了用户的体验。

因此推出“预热”技术,即在双 11 前,让各个系统充分“热”起来,包括 Tair,数据库,应用等等。为此专门研发了一套预热系统,预热分为数据预热和应用预热两大部分,数据预热包括:数据库和缓存预热,预热系统会模拟应用的访问,通过这种访问将数据加载到缓存和数据库中,保证缓存和数据库 BP 的命中率;应用预热包括:预建连接和 JIT 预热,我们会在双 11 零点前预先建立好数据库连接,防止在高峰时建立连接的开销,也保证了 JAVA 代码可以提前充分编译。

存储计算分离

如果计算和存储绑定在一起,无法实现极致的弹性,因为计算节点的迁移必须“搬迁”数据。此外,发现在双 11 高峰时,对于计算能力的要求陡增,但是对于存储能力的要求并没有发生显著变化,如果可以实现存储计算分离,双 11 高峰只需要扩容计算节点即可,因此催生出存储计算分离技术。

2018 年双 11,随着存储计算分离技术的大规模使用,标志着数据库进入了一个新的时代。

在线离线混部

日常让离线任务跑在在线(应用和数据库)的服务器上,双 11 大促在线应用使用离线的计算资源,在实现存储计算分离技术后,数据库可以在双 11 使用离线的计算资源,从而实现极致的弹性能力。通过使用云资源和混部技术,可以最大程度降低双 11 交易峰值带来的成本。

智能化

数据库和智能化相结合也是阿里一直在探索的一个方向,比如 Self-driving Database 等。2017 年,第一次使用智能化的技术对 SQL 进行自动优化。近年来,全网推广 SQL 自动优化和空间自动优化,希望可以借此来降低 DBA 的工作负担,提升开发人员效率,并有效提升稳定性。相信,在未来的双 11 备战工作中,会有越来越多的工作可以交给机器来完成。

达摩院

2017 年云栖大会上,“达摩院”成立,致力于通过科技研究和创新探索未知领域,誓要争夺未来 10 年的技术高峰。阿里巴巴达摩院由三大主体组成,一是在全球建设的自主研究中心;二是与高校和研究机构建立的联合实验室;三是全球开放研究项目 - 阿里巴巴创新研究计划(AIR 计划)。
如今,达摩院建立 14 个实验室,专注于机器智能、数据运算、机器人技术、金融科技 X 实验室五个方面的研究。

平头哥

2018 年,平头哥成立,平头哥是阿里全资收购杭州中天微后的半导体芯片业务主体,主要针对下一代云端一体芯片新型架构开发数据中心和嵌入式 IoT 芯片产品。平头哥从云和端两个方面进行软硬深度协同的技术创新,目标是让数据和计算更普惠,持续拓展数据技术的边界。

如今,平头哥已陆续有多款产品亮相:

2019 年 7 月,平头哥发布了高性能 RISC-V 架构处理器玄铁 910,集成 16 个核心,主频 2.5GHz,采用 12 级乱序流水线,最大支持 8MB 二级缓存,搭载 AI 增强的向量计算引擎,可用在人工智能加速器、网络通信和自动驾驶等领域。当时公布的数据显示,玄铁 910 较业界主流芯片性能提高 40%,较标准指令性能高出 20%。

8 月,平头哥又发布 SoC 芯片平台“无剑”,无剑平台由 SoC 架构、处理器、各类 IP、操作系统、软件驱动和开发工具等模块构成,面向 AIoT 提供的集芯片架构、基础软件、算法与开发工具于一体的整体解决方案。根据官方的说法,无剑能够帮助芯片设计企业将设计成本降低 50%,设计周期压缩 50%。

9 月,在阿里今年的云栖大会上,平头哥发布了其第一颗自研芯片含光 800,该芯片推理性 78563IPS,业界第一,能效比 500IPS/W,是目前全球最强 AI 推理芯片。目前,含光 800 正在应用于城市大脑、拍立淘等业务,基于该芯片的 AI 云服务也已正式上线,明年双 11 将大规模应用平头哥自研的含光 AI 芯片。
另外,在生态建设方面,平头哥还将成立芯片开放社区。不仅如此,平头哥还在研发用于阿里云神龙服务器的 SoC 专用芯片。未来,阿里还将进一步完善产品形态,推出包括云端 AI 训练芯片和终端 AI 推理芯片,满足更多场景的算力需求。

“双 11”回顾

回顾历届双 11,根据阿里云官方分享的数据可以看到,阿里云的发展历程和算力峰值都在不断变化和提升。


      对于本次如何撑住了双 11 世界级的流量洪峰,阿里巴巴集团 CTO、阿里云智能总裁张建锋总结道:

第一,阿里在核心虚拟机系统上,自研神龙架构,用自研的服务器来做虚拟化。一般的服务器随着压力增长,最终负载能力会慢慢下降,它不是线性的。而神龙服务器压力越大,输出也是保持线性的,这是非常难做到的;

第二,自研了云原生的数据库。今年有两个数据库,一个是自研的 OceanBase,大家知道我们在 TPC-C 测试里面拿下了全球第一。第二是 POLARDB,也广泛用在这次双 11 上,每秒峰值也是远远超越于原来 Oracle 这样传统的数据库。

第三,计算与存储做了分离,现在阿里存储是有一个地方专门存数据。数据都是从远端存取的,有一个专门的池,所以存储可以很方便的扩容。原来做不到是因为远端存储,访问网络速度跟不上。

第四,之所以现在能够做到在远端存储,能够比本地读写磁盘更快,是因为阿里做了 RDMA 网络,这也是全球第一个大规模做 RDMA 网络的公司。

在上述四个方面都做了核心突破,以此来应对愈发庞大的交易峰值。相信,随着达摩院和平头哥的发展和产品融合,未来将会有更完善的产品去助力算力提升,应对更大的流量洪峰,满足更高的业务发展需求。

结语

十年来,阿里巴巴数据库团队秉承着推动中国数据库技术变革的使命,从商业数据库到开源数据库再到自研数据库,一直在为这个使命而努力奋斗。

如果说“去 IOE”是变革的开始,那么云就是变革的继续,如今的阿里云,已经在中国公有云市场占据了近一半的份额,稳居全球前三大云之列,40%的中国 500 强企业和 80%的科技类公司都汇集在阿里云之上,使用着阿里云提供的云服务。

下一个十年,阿里云又将带来怎样的惊喜和颠覆?

未来可期是留给我们最好的答案。

作者:李晨光

<上一页  1  2  
声明: 本文系OFweek根据授权转载自其它媒体或授权刊载,目的在于信息传递,并不代表本站赞同其观点和对其真实性负责,如有新闻稿件和图片作品的内容、版权以及其它问题的,请联系我们。

发表评论

0条评论,0人参与

请输入评论内容...

请输入评论/评论长度6~500个字

您提交的评论过于频繁,请输入验证码继续

暂无评论

暂无评论

    云计算 猎头职位 更多
    文章纠错
    x
    *文字标题:
    *纠错内容:
    联系邮箱:
    *验 证 码:

    粤公网安备 44030502002758号