DTCC 2020 | 阿里云李飞飞:云原生分布式数据库与数据仓库系统点亮数据上云之路

本文涉及的产品
阿里云百炼推荐规格 ADB PostgreSQL,4核16GB 100GB 1个月
云原生数据仓库AnalyticDB MySQL版,基础版 8ACU 100GB 1个月
简介: 数据库将面临怎样的变革?云原生数据库与数据仓库有哪些独特优势?在日前的 DTCC 2020大会上,阿里巴巴集团副总裁、阿里云数据库产品事业部总裁、ACM杰出科学家李飞飞就《云原生分布式数据库与数据仓库系统点亮数据上云之路》进行了精彩分享。

云计算时代,云原生分布式数据库和数据仓库开始崛起,提供弹性扩展、高可用、分布式等特性。

数据库将面临怎样的变革?云原生数据库与数据仓库有哪些独特优势?在日前的 DTCC 2020大会上,阿里巴巴集团副总裁、阿里云数据库产品事业部总裁、ACM杰出科学家李飞飞就《云原生分布式数据库与数据仓库系统点亮数据上云之路》进行了精彩分享。

飞刀.JPG

阿里巴巴集团副总裁、阿里云数据库产品事业部总裁、ACM杰出科学家李飞飞

以下为小编整理的演讲干货实录:

一、背景与趋势

1.背景

数据库的本质是全链路的对“数据”进行管理,包括了生产—处理—存储—消费等,在当下的数据化时代,数据是所有企业最核心的资产之一,所以数据库的价值一直在不断地提升,不断地在新领域发现新的价值。

2.业界趋势

趋势一:数据生产/处理 正在发生质变
关键词:规模爆炸性增长、生产/处理实时化与智能化、数据加速上云
1.png

从Gartner、IDC及各个传统厂商分析中可以得到以下几个结论:

  • 数据在爆炸性增长,非结构化数据的占比越来越高;
  • 生产/处理实时化与智能化的需求越来越高,并追求离在线一体化;
  • 数据库系统、大数据系统、数据管理分析系统等上云的趋势明显,数据加速上云势不可挡。

趋势二:云计算加速数据库系统演进
关键词:商业起步 - 开源 - 分析 - 异构NoSQL - 云原生、一体化分布式、多模、HTAP
2.png

数据库和数据仓库从上世纪八十年代至今的发展缩影

云计算面临两大挑战

挑战一:分布式和ACID的结合
从传统的大数据处理来看,牺牲部分ACID换来的分布式水平拓展虽然非常好,解决了很多场景下的需求,但是应用对ACID的需求一直存在,即使是分布式并行计算的场景当中,应用对ACID的需求也变得越来越强。

挑战二:对资源的使用方式
传统的冯诺依曼架构下计算和存储是紧密耦合的,可将多个服务器通过分布式协议和处理的方式连成一个系统,但是服务器和服务器之间、节点和节点之间,分布式事务的协调、分布式查询的优化,尤其要保证强一致性、强ACID的特性保证的时候,具有非常多的挑战。

全球云数据库市场格局
关键词:资源池化,资源解耦

3.png

云的本质是用虚拟化技术将资源池化,并且将资源进行解耦。阿里云是核心云厂商之一,基于云原生技术,打造了云原生数据库产品体系,代表中国的数据库厂商,在Gartner将OPDBMS(事务处理 )与DMSA(管理与分析)合二为一的挑战下,历史性第一次进入Gartner Cloud DBMS云数据库全球领导者象限,市场份额来全球第三,在中国业界领先。

数据库系统架构演进
关键词:单节点、共享状态、分布式
4.png

上图是基于存储计算紧耦合,DB代表计算节点,架构当中计算节点的CPU Core和内存还是紧耦合在一起。左边的架构单一,资源紧耦合。右边分布式架构,通过Shared Nothing将多个部分连成一片,理论上具备非常好的水平扩展能力,利用分布式的协议进行分布式的事务处理和查询处理,但是也遇到分布式场景下分布式事务处理、分布式查询等非常多的挑战。

不管是传统的中间件分布分表的形式还是企业级的透明分布式数据库都会面临一个挑战,一旦做了分布式架构,数据只能按照一个逻辑进行Sharding和Partition,业务逻辑和分库逻辑不是完美一致,一定会产生跨库事务和跨sharding处理,每当ACID要求较高的时候,分布式架构会带来较高的系统性能挑战,例如在高隔离级别下当distributed commit占比超过整个事务的5%或者更高以上的话,TPS会有明显的损耗。

完美的Partition Sharing是不存在的,这些是分布式业务需要解决的核心挑战,以及在这个架构需要做到的高一致性保障。

云原生的架构,本质上底下是分布式共享存储,上面是分布式共享计算池,中间来做计算存储解耦,这样可以非常好地提供弹性高可用的能力,做到分布式技术集中式部署,对应用透明。避免传统架构当中的很多挑战,比如分布式事务处理、分布式数据如何去做partition和sharding。

5.png

共享存储、共享资源池、共享计算池的时候,它的水平拓展性还存在一定局限性。我们可以结合分布式和云原生的架构融合来解决这个问题。

在上图展示中,把Shared Nothing的能力和Shared Storage/Shared everything的能力打通,每个shard下面是一个资源池,能力非常强,弹性很高,同时也可以把这样的部分用分布式技术联系起来,既享受到分布式水平拓展的能力的好处,同时又避免大量的分布式事务和分布式处理场景。因为单个节点计算存储能力都特别强,200TB的数据按照传统的分布式架构,假设1个节点只能处理1TB,那就需要200个分布式节点。云原生架构1个节点可以处理100TB,也就是为2000TB的数据,传统分布式架构需要200个节点,将云原生架构结合起来需要两三个节点,分布式事务处理、分布式查询的概率会大大降低,整个系统的效率会大大提升。

趋势三:下一代企业级数据库关键技术
关键词:HTAP:大数据数据库一体化、云原生+分布式、智能化、Multi-Model 多模、软硬件一体化、安全可信

6.png

大数据、数据库一体化的趋势包括离在线一体、Transaction and Analytical Processing一体化,离线计算和在线交互式分析的一体化,统称为大数据与数据库一体化。

云原生和分布式技术的深度融合,智能化、机器学习、AI技术在数据库领域的融合,如何简化运维、简化数据库的使用方式。除了结构化数据,如何处理非结构化数据,比如文本等数据,软硬件一体化,如何结合硬件的能力如RDMA和NVM,发挥出硬件的优势。最后是系统的安全可信能力。

二、核心技术&产品介绍

2.1企业级云原生分布式数据库

1)云原生关系型数据库PolarDB

阿里云自研关系型数据库的核心产品是云原生关系型数据库PolarDB,通过这下面张图就可以理解PolarDB的思想,存储和计算分离,通过RAFT来做高可用、高可靠的保障,在计算节点来做一个计算池,下一代版本的PolarDB可以做到多写多读multi-master,计算节点在下一代会进一步解耦,做成共享内存池,CPU Core可以做到共享计算池,然后去访问一份共享内存, PolarPorxy负责做读写分离和负载均衡工作。
7.png

基于这个架构,100%兼容MySQL/PG和高度兼容Oracle的PolarDB诞生了,针对开源和商业数据库的使用场景,在性能上做了大量的优化,比如做Parallel Query Processing,取得了非常优异的性能,整个TCO相对传统数据库可以做到只有1/3到1/6,TPCC同样的负载下性能有大幅度提升。

在PolarDB的基础上做了Global Database,跨Region的架构解决了很多出海客户就近读写的需求。
8.png

2)云原生分布式数据库PolarDB-X
9.png

分布式版本的PolarDB-X:基于X-DB以及原来的分库分表DRDS将二者合二为一成为一个透明的一体化分布式数据库PolarDB-X。每个分布式节点包括两个数据节点、一个日志节点,通过优化Paxos确保数据节点和日志节点的数据一致性。

它的特点在于三节点可以做到跨AZ部署做到同城容灾,不需要传统的商业数据库利用数据同步链路来做容灾,直接在存储层做到同城容灾。

异地的两地三中心甚至更多异地容灾架构,比如跨异地的直接部署,因为网络的Latency非常大,可能会影响到性能,还是需要通过类似ADG、DTS这样的产品架构来做数据同步,做到异地容灾架构。

3)数据库及应用迁移改造ADAM
10.png

ADAM,全称Advanced Database Application And Application Migration,通过对应用代码和逻辑树的分析生成一个评估报告。评估报告自动生成,可以提供从传统数据库迁移到PolarDB和ADB的迁移分析。

一键迁移的方案通过ADAM来做应用代码的扫描,通过DTS去做数据的实时同步,迁移到云原生的数据库当中,可以做到对于客户的应用无切入的改造。

如图所示:
11.png

总结来说,分布式只是一个技术,实际上很多数据库的应用是不需要分布式,通过云原生的能力就可以很好地满足应用弹性、高可用、水平拓展的需求。真正需要分布式的能力就可以结合Shared Nothing架构和技术来做扩展,所以要根据应用需求从客户视角出发设计系统和应用迁移改造方案。

2.2云原生数据仓库与数据湖

12.png

一体化设计成为下一代数据分析系统的核心理念

数据库市场不仅是TP关系型数据库。这也是为什么Gartner将传统的OPDBMS(事务处理)与DMSA(管理与分析)合二为一成为Cloud DBMS,并且断言Modern DBMS can do both and there is only one Cloud DBMS market。除了事务处理,数据库系统也需通过计算分析实现数据处理的一体化,例如在数据仓库和数据湖领域发挥作用。

13.png

云原生数据仓库+云原生数据湖构建新一代数据存储、处理方案

数据分析领域是群雄格局的现状,在线查询、离线计算,有非常多细分领域,利用云原生计算技术的资源池化、资源解耦,会看到下一代云原生的数据系统。下一代的云原生数据仓应该具备实时在线的“增删改查”能力,在此基础上支持离在线一体化,既能做在线交互式分析和查询又能做复杂的离线ETL和计算,支持多维度的数据分析,这就是对云原生数据仓库的核心要求。

数据仓库当中的增删改查和TP数据库存在一定区别,因为对隔离机制的要求相比没有那么高,例如不需要做到snapshot isolation,因为是一个分析系统,但是一定要支持传统数据库的在线增删改查的能力,不是只能支持Batch Insertion的场景。

1)云原生数据仓库

数据仓库适用于范式化、有结构的数据处理,适用于已经Normalized数据管理和应用,已经有了非常清晰稳定的业务逻辑,需要范式化进行管理。

14.png

云原生数据仓库利用云原生架构对传统数据仓库进行升级和改造,资源池化、资源解耦实现弹性、高可用、水平拓展、智能化运维是云原生的核心本质之一。

如果把这些结合在一起,阿里云就是OSS、亚马逊就是S3,低成本的对象存储作为冷存储池,同时利用高效的云盘做一个本地的缓存,计算节点进行解耦,对本地节点进行加速,通过高速网络连成一个池,再对应用做统一的透明式服务。

AnalyticDB 云原生数据仓库

15.png

这个架构展开底下是对象存储,利用RAFT协议实现数据一致性,对每个计算节点的本地缓存加速利用ESSD弹性云盘。上面是计算池,在数据仓库为了实现大数据和数据库一体化,数据仓库领域的计算节点也需要将大数据的离线计算能力做得更强,离线大数据系统基本上都是基于BSP+DAG,传统数据库领域则是MPP架构,所以为了做到离在线一体化将MPP和BSP+DAG进行结合,做一个Hybrid的计算引擎,针对此再做一个Hybrid的查询和计算优化器。上面的是MetaData管理,力求做到原数据共享。

云原生数据仓库AnalyticDB MySQL
16.png

AnalyticDB(ADB)就是基于这个思想设计的云原生数据仓库,ADB MySQL兼容MySQL这个生态,成为TPC-DS性能与性价比榜单第一。将交互式分析和复杂的离线ETL计算统一支持起来。ADB基于PG也做了另外一个版本,就是ADB for PG。针对传统数据仓库,例如TeraData、利用PG对Oracle的兼容性来做传统数据仓库的升级,利用云原生的架构,存储和计算分离,针对传统数据仓库进行云原生的升级改造,查询执行器和其他模块中做了大量优化。

云原生数据仓库AnalyticDB for PostgreSQL

17.png

例如向量化执行(vector execution)、Code Generation,ADB PG也支持把非结构化数据向量化变成高维向量数据以后处理,然后将向量数据和结构化数据在一个引擎当中进行处理实现非结构化数据和结构化数据的融合处理。ADB PG拿到了TPC-H性能和性价比榜单第一的成绩。

2)新一代数据仓库解决方案

基于此推出了新一代数据仓库的架构,底下是核心的云原生数据仓库ADB,上面是数据建模和数据资产管理,因为数据仓库领域不仅仅是引擎的问题,还包括建模等一系列问题。针对传统数据仓库做了升级到云原生数据仓库的解决方案,利用ADB、生态合作伙伴以及整个智能化工具实现一体化的解决方案。

18.png
19.png

DLA 云原生数据湖分析(Serverless,统一元数据+开放存储与分析计算)

20.png

数据源更加复杂与多样的场景是云原生数据湖和数据仓库最大的区别。数据湖的核心场景是对多源异构的数据源进行统一的管理和计算与分析处理。云原生数据湖拥有统一的界面对多源异构数据进行管理、计算和分析,核心点在于元数据管理和发现,集成不同的计算引擎对多源异构数据进行管理和分析。

Data Lake Analytics + OSS 云原生数据湖

21.png

上图为云原生数据湖分析Data Lake Analytics的架构,下面是对象存储或者其它不同的存储源,搭载Kubernetes+Container技术,通过serverless技术来做分析和计算,以及多用户之间的隔离安全保护,这样可以满足客户针对多源异构数据实现低成本、弹性的丰富的计算和分析处理需求。

2.3智能化、安全可信与生态工具

1)云原生+智能化数据库管控平台

22.png

智能化的数据管控平台利用云原生技术和人工智能技术进行智能化的数据库管理运维,包括分区、索引推荐、异常检测、慢SQL治理、参数调优等,这样可以大量提升管理运维的效率,我们研发了一个Database Autonomy Service模块(DAS)来实现数据库系统的自动驾驶,大幅度提升运维管控的效率。

2)云端全程加密数据永不泄露

23.png

除了传统的Access Control,传输与落盘加密,我们研发了全加密数据库,确保数据的绝对安全,结合安全硬件TEE来做到这一点,可以做到数据处理的全程加密。

3)数据库生态工具

24.png

除了前面提到的数据库应用迁移工具ADAM和数据库同步工具DTS,我们还提供了丰富的其他数据库生态工具,包括数据管理服务DMS和数据数据库备份服务DBS,可以提供数据血缘关系、数仓开发与建模、数据安全管理、数据备份容灾、CDM等一系列的企业级数据处理能力和面向开发者的服务能力。

4)数据库备份解决方案DBS

25.png

DBS可以做传统数据多云多端的备份,把线下的数据备份到云上,也可以把云上的数据备份到线下,实现秒级RPO,支持多种数据源多源多端的云备份,并且支持Snapshot Recovery。

三、案例分析

1)双十一购物节•数据库挑战

26.png

上图为2020年“双十一”真实曲线,145倍的系统峰值瞬间迸发,利用云原生能力和分布式能力的结合可以完美平滑地支持“双十一”高并发海量数据的挑战。

2)中国邮政•大型传统商用数据库替换

27.png

中国邮政以前是基于传统的商业数据仓库,如今利用ADB云原生数仓进行升级,提供更可靠的离在线一体化计算分析能力,实现对全国数据寄递平台统一到一个系统的诉求。

3)某超大型部委客户

28.png

国税总局的全国税务数据统一系统应用,利用PolarDB-X分布式数据库以及DTS和ADB实现了从TP到AP数据处理、计算、分析、查询、处理一整套的解决方案,同时通过DMS来做数据开发和管理。支撑高并发、低延迟的复杂查询;支撑海量实时数据实时可见和高效入库;支持金融级别的精准计算。

4)阿里云数据库技术对抗新冠疫情

29.png

利用云原生数据库提供的弹性高可用和智能化运维能力,结合分布式去做水平拓展,为广大的企业和用户提供非常好的弹性高可用能力,疫情期间在线教育行业开始大规模地使用云原生、分布式的新一代数据库技术架构和产品实现降本增效对抗疫情。

5)客户案例•中国联通

30.png

中国联通的核心cBSS系统,针对传统的商业数据库进行升级改造,利用分布式数据库PolarDB-X的能力帮助实现这种核心的计费系统实时在线的交易数据处理。

6)客户案例•马来西亚电商巨头 PrestoMall

31.png

马来西亚的第三大电商PrestoMall,因为用传统的商业数据库Oracle成本太高,尤其是大促场景瞬间高并发的挑战,利用云原生数据库PolarDB对传统商业数据库进行升级改造,实现了TCO的大幅下降。

7)客户案例•国际广告商数据湖分析+计算解决方案

32.png

某国际领先广告厂商,文字、图片、和结构化数据等多源异构数据的处理无法统一到一个数据仓库里面进行,利用数据湖来做一个统一的分析引擎。利用DLA+OSS构建了新一代serverless数据湖,大大提升了对多源异构数据的访问处理和计算能力、同时节省了大量的计算成本。针对复杂丰富的计算分析场景,实现平滑的解决方案顺利从AWS迁移过来。

四、总结

33.png

上图为阿里云数据库的产品大图,从OLTP、OLAP、NoSQL到数据库生态工具与云原生智能化管控,阿里云希望利用丰富的云原生数据库产品体系为企业级客户和用户提供更好更可靠的产品与性价比更高的解决方案。

【相关阅读】

【内含干货PPT下载】DTCC 2020 | 阿里云叶正盛:数据库2025

【内含干货PPT下载】DTCC 2020 | 阿里云赵殿奎:PolarDB的Oracle平滑迁移之路

【内含干货PPT下载】DTCC 2020 | 阿里云朱洁:NoSQL最新技术发展趋势

【内含干货PPT下载】DTCC 2020 | 阿里云王涛:阿里巴巴电商数据库上云实践

【内含干货PPT下载】DTCC 2020 | 阿里云张鑫:阿里云云原生异地多活解决方案

DTCC 2020 | 阿里云梁高中:DAS之基于Workload的全局自动优化实践

【内含干货PPT下载】DTCC 2020 | 阿里云程实:云原生时代的数据库管理

【内含干货PPT下载】DTCC 2020 | 阿里云吉剑南:在线分析进入Fast Data时代的关键技术解读

相关实践学习
基于MaxCompute的热门话题分析
本实验围绕社交用户发布的文章做了详尽的分析,通过分析能得到用户群体年龄分布,性别分布,地理位置分布,以及热门话题的热度。
SaaS 模式云数据仓库必修课
本课程由阿里云开发者社区和阿里云大数据团队共同出品,是SaaS模式云原生数据仓库领导者MaxCompute核心课程。本课程由阿里云资深产品和技术专家们从概念到方法,从场景到实践,体系化的将阿里巴巴飞天大数据平台10多年的经过验证的方法与实践深入浅出的讲给开发者们。帮助大数据开发者快速了解并掌握SaaS模式的云原生的数据仓库,助力开发者学习了解先进的技术栈,并能在实际业务中敏捷的进行大数据分析,赋能企业业务。 通过本课程可以了解SaaS模式云原生数据仓库领导者MaxCompute核心功能及典型适用场景,可应用MaxCompute实现数仓搭建,快速进行大数据分析。适合大数据工程师、大数据分析师 大量数据需要处理、存储和管理,需要搭建数据仓库?学它! 没有足够人员和经验来运维大数据平台,不想自建IDC买机器,需要免运维的大数据平台?会SQL就等于会大数据?学它! 想知道大数据用得对不对,想用更少的钱得到持续演进的数仓能力?获得极致弹性的计算资源和更好的性能,以及持续保护数据安全的生产环境?学它! 想要获得灵活的分析能力,快速洞察数据规律特征?想要兼得数据湖的灵活性与数据仓库的成长性?学它! 出品人:阿里云大数据产品及研发团队专家 产品 MaxCompute 官网 https://www.aliyun.com/product/odps 
目录
相关文章
|
3月前
|
存储 缓存 Cloud Native
MPP架构数据仓库使用问题之ADB PG云原生版本的扩缩容性能怎么样
MPP架构数据仓库使用问题之ADB PG云原生版本的扩缩容性能怎么样
MPP架构数据仓库使用问题之ADB PG云原生版本的扩缩容性能怎么样
|
3月前
|
数据采集 存储 数据处理
数据平台问题之知识管理系统的效果如何评估
数据平台问题之知识管理系统的效果如何评估
|
3月前
|
分布式计算 DataWorks 关系型数据库
MaxCompute 生态系统中的数据集成工具
【8月更文第31天】在大数据时代,数据集成对于构建高效的数据处理流水线至关重要。阿里云的 MaxCompute 是一个用于处理大规模数据集的服务平台,它提供了强大的计算能力和丰富的生态系统工具来帮助用户管理和处理数据。本文将详细介绍如何使用 DataWorks 这样的工具将 MaxCompute 整合到整个数据处理流程中,以便更有效地管理数据生命周期。
123 0
|
19天前
|
分布式计算 Java 开发工具
阿里云MaxCompute-XGBoost on Spark 极限梯度提升算法的分布式训练与模型持久化oss的实现与代码浅析
本文介绍了XGBoost在MaxCompute+OSS架构下模型持久化遇到的问题及其解决方案。首先简要介绍了XGBoost的特点和应用场景,随后详细描述了客户在将XGBoost on Spark任务从HDFS迁移到OSS时遇到的异常情况。通过分析异常堆栈和源代码,发现使用的`nativeBooster.saveModel`方法不支持OSS路径,而使用`write.overwrite().save`方法则能成功保存模型。最后提供了完整的Scala代码示例、Maven配置和提交命令,帮助用户顺利迁移模型存储路径。
|
1月前
|
存储 边缘计算 城市大脑
阿里云入选Gartner®分布式混合基础设施魔力象限
Gartner正式发布了《分布式混合基础设施魔力象限》(Magic Quadrant™ for Distributed Hybrid Infrastructure),阿里云在入选的中国厂商中于执行能力(纵轴)和愿景完整性(横轴)上均处在最高、最远的位置。
|
2月前
|
运维 Kubernetes 调度
阿里云容器服务 ACK One 分布式云容器企业落地实践
3年前的云栖大会,我们发布分布式云容器平台ACK One,随着3年的发展,很高兴看到ACK One在混合云,分布式云领域帮助到越来越多的客户,今天给大家汇报下ACK One 3年来的发展演进,以及如何帮助客户解决分布式领域多云多集群管理的挑战。
阿里云容器服务 ACK One 分布式云容器企业落地实践
|
1月前
|
存储 边缘计算 城市大脑
阿里云入选Gartner®分布式混合基础设施魔力象限
Gartner正式发布了《分布式混合基础设施魔力象限》(Magic Quadrant™ for Distributed Hybrid Infrastructure),全球共9家厂商入围,阿里云成功入选,位居利基者(Niche Players)象限。
|
2月前
|
人工智能 Kubernetes Cloud Native
深度对话 解锁阿里云分布式云原生技术落地新姿势
深度对话 解锁阿里云分布式云原生技术落地新姿势
深度对话 解锁阿里云分布式云原生技术落地新姿势
|
2月前
|
存储 运维 应用服务中间件
阿里云分布式存储应用示例
通过阿里云EDAS,您可以轻松部署与管理微服务应用。创建应用时,使用`CreateApplication`接口基于模板生成新应用,并获得包含应用ID在内的成功响应。随后,利用`DeployApplication`接口将应用部署至云端,返回"Success"确认部署成功。当业务调整需下线应用时,调用`ReleaseApplication`接口释放资源。阿里云EDAS简化了应用全生命周期管理,提升了运维效率与可靠性。[相关链接]提供了详细的操作与返回参数说明。
|
3月前
|
存储 SQL 分布式计算
Hadoop生态系统概述:构建大数据处理与分析的基石
【8月更文挑战第25天】Hadoop生态系统为大数据处理和分析提供了强大的基础设施和工具集。通过不断扩展和优化其组件和功能,Hadoop将继续在大数据时代发挥重要作用。

热门文章

最新文章