DTCC 2020 | 阿里云王涛:阿里巴巴电商数据库上云实践

在DTCC 2020大会上,阿里云数据库高级技术专家王涛分享了阿里巴巴电商数据库上云的实践,包括选择、思考与未来展望。阿里巴巴采用云原生管控和数据库技术,实现RDS自研,解决RPO为零问题,支持异地多活、异地多写和异地只读等业务特性。王涛还介绍了数据库管控平台的演进历程,以及在上云过程中面临的网络、存储和安全等方面的决策与解决方案。
摘要由CSDN通过智能技术生成

摘要:第十一届中国数据库技术大会(DTCC2020),在北京隆重召开。大会以“架构革新 高效可控”为主题,重点围绕数据架构、AI与大数据、传统企业数据库实践和国产开源数据库等内容展开分享和探讨。在数据库智能运维专场上,邀请了阿里云数据库高级技术专家王涛为大家介绍阿里巴巴电商数据库上云的选择、思考与实践。阿里巴巴电商数据库原先是在自己独立的IDC维护的,伴随着阿里巴巴上云项目,数据库轻松实现上云。阿里云云原生管控以及云原生数据库技术可以帮助业务实现平滑上云目标,进而实现资源最大化成本最优化的目标。阿里巴巴希望利用阿里云的技术体系,帮助客户大规模上云,打造自己的运维管控平台。

演讲嘉宾简介:

王涛,阿里云数据库高级技术专家,来自阿里云数据库产品事业部,喜欢并热爱数据库。
职业生涯:程序员->DBA->DevOps架构师。2007年开始参与、设计、主导了阿里巴巴数据库体系演进,主导参与了阿里巴巴数据库体系演进,经历了数据库去IOE,规模化MySQL运维,阿里数据库异地多活,数据库上云等多个核心项目。目前为阿里云RDS管控负责人,为大家提供安全、稳定、经济、智能的数据库服务。

以下内容根据演讲视频以及PPT整理而成。

本次分享主要围绕以下四个方面:
一、阿里巴巴电商数据库应用场景介绍
二、数据库管控平台演进
三、数据库上云的选择与思考
四、未来展望

一、阿里巴巴电商数据库应用场景介绍

1. 阿里业务特性介绍 —— RDS三节点企业版

什么是阿里巴巴电商数据呢?大家看到的淘宝、天猫、盒马、饿了么上的数据都属于阿里巴巴电商数据,这些业务说使用的数据库目前都在云上。阿里巴巴之前的数据库是RDS高可用版,采用一主多备模式,但是发现实例无法做到RPO为零。尝试使用了MySQL半同步等措施,但依然无法解决RPO为零的问题。其次是考虑采取CAP理论或者BASE理论的问题。CAP指的是一致性(Consistency)、可用性(Availability)、分区容忍性(Partition tolerance)。但事实上数据库是无法做到同时满足CAP中的三点特性的,只能满足其中一到两项。对于BASE理论大家或许不太熟悉,其核心在于可以做到中间不一致,A和B机器可能单独的时候不一致,但是一旦连上之后就会一致。数据管控系统上通常遵守BASE理论,数据库更多的时候是选择CAP原理。解决RPO等于0的问题有几种实现方式,首先是MySQL半同步、还有MySQL Group Replication,这是MySQL 5.7版本之后推出的新功能,但是要求三份数据一样,这个成本是无法接受的。因此阿里逐渐走向了RDS自研的方向。

阿里巴巴在选择数据库协议也是在Paxos协议 or Raft协议中徘徊,最终选择了Paxos协议。Why Paxos,No Raft? 从下图右侧可以看到前面都在提交数据X、后面来了数据Y,在S3中先执行了P3.1,P4.5,A4.5 Y,这意味着Paxos协议不一定要有序,而Raft是有序的。Raft协议会要求S3先执行P3.1、A 3.1 X然后再执行P4.5,A 4.5 Y。这是Paxos协议和 Raft协议最大的不同。其次,Paxos协议有三种角色,提交者(Propose),接收者(Accept)以及Learn。阿里巴巴自研的RDS对这三种角色进行了转化,Propose叫做Leader,指的是可读可写的数据库节点,Accept叫做Follower,多数派,有全量的数据,可以将自己变成Leader。还有Logger(阿里自研角色),只负责接收日志,没有数据。Leader和Follower有全量数据&

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值