简介: 数据库将面临怎么的改革?云原生数据库与数据仓库有哪些独特劣势?在日前的 DTCC 2020大会上,阿里巴巴团体副总裁、阿里云数据库产品事业部总裁、ACM卓越科学家李飞飞就《云原生分布式数据库与数据仓库零碎点亮数据上云之路》进行了精彩分享。
云计算时代,云原生分布式数据库和数据仓库开始崛起,提供弹性扩大、高可用、分布式等个性。
数据库将面临怎么的改革?云原生数据库与数据仓库有哪些独特劣势?在日前的 DTCC 2020大会上,阿里巴巴团体副总裁、阿里云数据库产品事业部总裁、ACM卓越科学家李飞飞就《云原生分布式数据库与数据仓库零碎点亮数据上云之路》进行了精彩分享。
阿里巴巴团体副总裁、阿里云数据库产品事业部总裁、ACM卓越科学家李飞飞
一、背景与趋势
1.背景
数据库的实质是全链路的对“数据”进行治理,包含了生产—解决—存储—生产等,在当下的数据化时代,数据是所有企业最外围的资产之一,所以数据库的价值始终在一直地晋升,一直地在新畛域发现新的价值。
2.业界趋势
趋势一:数据生产/解决 正在产生量变
关键词:规模爆炸性增长、生产/解决实时化与智能化、数据减速上云
从Gartner、IDC及各个传统厂商剖析中能够失去以下几个论断:
- 数据在爆炸性增长,非结构化数据的占比越来越高;
- 生产/解决实时化与智能化的需要越来越高,并谋求离在线一体化;
- 数据库系统、大数据系统、数据管理剖析零碎等上云的趋势显著,数据减速上云势不可挡。
趋势二:云计算减速数据库系统演进
关键词:商业起步 - 开源 - 剖析 - 异构NoSQL - 云原生、一体化分布式、多模、HTAP
数据库和数据仓库从上世纪八十年代至今的倒退缩影
云计算面临两大挑战
挑战一:分布式和ACID的联合
从传统的大数据处理来看,就义局部ACID换来的分布式程度拓展尽管十分好,解决了很多场景下的需要,然而利用对ACID的需要始终存在,即便是分布式并行计算的场景当中,利用对ACID的需要也变得越来越强。
挑战二:对资源的应用形式
传统的冯诺依曼架构下计算和存储是严密耦合的,可将多个服务器通过分布式协定和解决的形式连成一个零碎,然而服务器和服务器之间、节点和节点之间,分布式事务的协调、分布式查问的优化,尤其要保障强一致性、强ACID的个性保障的时候,具备十分多的挑战。
寰球云数据库市场格局
关键词:资源池化,资源解耦
云的实质是用虚拟化技术将资源池化,并且将资源进行解耦。阿里云是外围云厂商之一,基于云原生技术,打造了云原生数据库产品体系,代表中国的数据库厂商,在Gartner将OPDBMS(事务处理 )与DMSA(治理与剖析)合二为一的挑战下,历史性第一次进入Gartner Cloud DBMS云数据库寰球领导者象限,市场份额来寰球第三,在中国业界当先。
数据库系统架构演进
关键词:单节点、共享状态、分布式
上图是基于存储计算紧耦合,DB代表计算节点,架构当中计算节点的CPU Core和内存还是紧耦合在一起。右边的架构繁多,资源紧耦合。左边分布式架构,通过Shared Nothing将多个局部连成一片,实践上具备十分好的程度扩大能力,利用分布式的协定进行分布式的事务处理和查询处理,然而也遇到分布式场景下分布式事务处理、分布式查问等十分多的挑战。
不论是传统的中间件散布分表的模式还是企业级的通明分布式数据库都会面临一个挑战,一旦做了分布式架构,数据只能依照一个逻辑进行Sharding和Partition,业务逻辑和分库逻辑不是完满统一,肯定会产生跨库事务和跨sharding解决,每当ACID要求较高的时候,分布式架构会带来较高的零碎性能挑战,例如在高隔离级别下当distributed commit占比超过整个事务的5%或者更高以上的话,TPS会有显著的损耗。
完满的Partition Sharing是不存在的,这些是分布式业务须要解决的外围挑战,以及在这个架构须要做到的高一致性保障。
云原生的架构,实质上底下是分布式共享存储,下面是分布式共享计算池,两头来做计算存储解耦,这样能够十分好地提供弹性高可用的能力,做到分布式技术集中式部署,对利用通明。防止传统架构当中的很多挑战,比方分布式事务处理、分布式数据如何去做partition和sharding。
共享存储、共享资源池、共享计算池的时候,它的程度拓展性还存在肯定局限性。咱们能够联合分布式和云原生的架构交融来解决这个问题。
在上图展现中,把Shared Nothing的能力和Shared Storage/Shared everything的能力买通,每个shard上面是一个资源池,能力十分强,弹性很高,同时也能够把这样的局部用分布式技术分割起来,既享受到分布式程度拓展的能力的益处,同时又防止大量的分布式事务和分布式解决场景。因为单个节点计算存储能力都特地强,200TB的数据依照传统的分布式架构,假如1个节点只能解决1TB,那就须要200个分布式节点。云原生架构1个节点能够解决100TB,也就是为2000TB的数据,传统分布式架构须要200个节点,将云原生架构联合起来须要两三个节点,分布式事务处理、分布式查问的概率会大大降低,整个零碎的效率会大大晋升。
趋势三:下一代企业级数据库关键技术
关键词:HTAP:大数据数据库一体化、云原生+分布式、智能化、Multi-Model 多模、软硬件一体化、平安可信
大数据、数据库一体化的趋势包含离在线一体、Transaction and Analytical Processing一体化,离线计算和在线交互式剖析的一体化,统称为大数据与数据库一体化。
云原生和分布式技术的深度交融,智能化、机器学习、AI技术在数据库畛域的交融,如何简化运维、简化数据库的应用形式。除了结构化数据,如何解决非结构化数据,比方文本等数据,软硬件一体化,如何联合硬件的能力如RDMA和NVM,施展出硬件的劣势。最初是零碎的平安可信能力。
二、核心技术&产品介绍
2.1企业级云原生分布式数据库
1)云原生关系型数据库PolarDB
阿里云自研关系型数据库的外围产品是云原生关系型数据库PolarDB,通过这上面张图就能够了解PolarDB的思维,存储和计算拆散,通过RAFT来做高可用、高牢靠的保障,在计算节点来做一个计算池,下一代版本的PolarDB能够做到多写多读multi-master,计算节点在下一代会进一步解耦,做成共享内存池,CPU Core能够做到共享计算池,而后去拜访一份共享内存, PolarPorxy负责做读写拆散和负载平衡工作。
基于这个架构,100%兼容MySQL/PG和高度兼容Oracle的PolarDB诞生了,针对开源和商业数据库的应用场景,在性能上做了大量的优化,比方做Parallel Query Processing,获得了十分优异的性能,整个TCO绝对传统数据库能够做到只有1/3到1/6,TPCC同样的负载下性能有大幅度晋升。
在PolarDB的根底上做了Global Database,跨Region的架构解决了很多出海客户就近读写的需要。
2)云原生分布式数据库PolarDB-X
分布式版本的PolarDB-X:基于X-DB以及原来的分库分表DRDS将二者合二为一成为一个通明的一体化分布式数据库PolarDB-X。每个分布式节点包含两个数据节点、一个日志节点,通过优化Paxos确保数据节点和日志节点的数据一致性。
它的特点在于三节点能够做到跨AZ部署做到同城容灾,不须要传统的商业数据库利用数据同步链路来做容灾,间接在存储层做到同城容灾。
异地的两地三核心甚至更多异地容灾架构,比方跨异地的间接部署,因为网络的Latency十分大,可能会影响到性能,还是须要通过相似ADG、DTS这样的产品架构来做数据同步,做到异地容灾架构。
3)数据库及利用迁徙革新ADAM
ADAM,全称Advanced Database Application And Application Migration,通过对利用代码和逻辑树的剖析生成一个评估报告。评估报告主动生成,能够提供从传统数据库迁徙到PolarDB和ADB的迁徙剖析。
一键迁徙的计划通过ADAM来做利用代码的扫描,通过DTS去做数据的实时同步,迁徙到云原生的数据库当中,能够做到对于客户的利用无切入的革新。
如图所示:
总结来说,分布式只是一个技术,实际上很多数据库的利用是不须要分布式,通过云原生的能力就能够很好地满足利用弹性、高可用、程度拓展的需要。真正须要分布式的能力就能够联合Shared Nothing架构和技术来做扩大,所以要依据利用需要从客户视角登程设计零碎和利用迁徙革新计划。
2.2云原生数据仓库与数据湖
一体化设计成为下一代数据分析系统的核心理念
数据库市场不仅是TP关系型数据库。这也是为什么Gartner将传统的OPDBMS(事务处理)与DMSA(治理与剖析)合二为一成为Cloud DBMS,并且断言Modern DBMS can do both and there is only one Cloud DBMS market。除了事务处理,数据库系统也需通过计算剖析实现数据处理的一体化,例如在数据仓库和数据湖畛域发挥作用。
**云原生数据仓库+云原生数据湖构建新一代数据存储、解决计划
**
数据分析畛域是群雄格局的现状,在线查问、离线计算,有十分多细分畛域,利用云原生计算技术的资源池化、资源解耦,会看到下一代云原生的数据系统。下一代的云原生数据仓应该具备实时在线的“增删改查”能力,在此基础上反对离在线一体化,既能做在线交互式剖析和查问又能做简单的离线ETL和计算,反对多维度的数据分析,这就是对云原生数据仓库的外围要求。
数据仓库当中的增删改查和TP数据库存在肯定区别,因为对隔离机制的要求相比没有那么高,例如不须要做到snapshot isolation,因为是一个剖析零碎,然而肯定要反对传统数据库的在线增删改查的能力,不是只能反对Batch Insertion的场景。
1)云原生数据仓库
数据仓库实用于范式化、有构造的数据处理,实用于曾经Normalized数据管理和利用,曾经有了十分清晰稳固的业务逻辑,须要范式化进行治理。
云原生数据仓库利用云原生架构对传统数据仓库进行降级和革新,资源池化、资源解耦实现弹性、高可用、程度拓展、智能化运维是云原生的外围实质之一。
如果把这些联合在一起,阿里云就是OSS、亚马逊就是S3,低成本的对象存储作为冷存储池,同时利用高效的云盘做一个本地的缓存,计算节点进行解耦,对本地节点进行减速,通过高速网络连成一个池,再对利用做对立的通明式服务。
AnalyticDB 云原生数据仓库
这个架构开展底下是对象存储,利用RAFT协定实现数据一致性,对每个计算节点的本地缓存减速利用ESSD弹性云盘。下面是计算池,在数据仓库为了实现大数据和数据库一体化,数据仓库畛域的计算节点也须要将大数据的离线计算能力做得更强,离线大数据系统基本上都是基于BSP+DAG,传统数据库畛域则是MPP架构,所以为了做到离在线一体化将MPP和BSP+DAG进行联合,做一个Hybrid的计算引擎,针对此再做一个Hybrid的查问和计算优化器。下面的是MetaData治理,力求做到原数据共享。
云原生数据仓库AnalyticDB MySQL
AnalyticDB(ADB)就是基于这个思维设计的云原生数据仓库,ADB MySQL兼容MySQL这个生态,成为TPC-DS性能与性价比榜单第一。将交互式剖析和简单的离线ETL计算对立反对起来。ADB基于PG也做了另外一个版本,就是ADB for PG。针对传统数据仓库,例如TeraData、利用PG对Oracle的兼容性来做传统数据仓库的降级,利用云原生的架构,存储和计算拆散,针对传统数据仓库进行云原生的降级革新,查问执行器和其余模块中做了大量优化。
云原生数据仓库AnalyticDB for PostgreSQL
例如向量化执行(vector execution)、Code Generation,ADB PG也反对把非结构化数据向量化变成高维向量数据当前解决,而后将向量数据和结构化数据在一个引擎当中进行解决实现非结构化数据和结构化数据的交融解决。ADB PG拿到了TPC-H性能和性价比榜单第一的问题。
2)新一代数据仓库解决方案
基于此推出了新一代数据仓库的架构,底下是外围的云原生数据仓库ADB,下面是数据建模和数据资产治理,因为数据仓库畛域不仅仅是引擎的问题,还包含建模等一系列问题。针对传统数据仓库做了降级到云原生数据仓库的解决方案,利用ADB、生态合作伙伴以及整个智能化工具实现一体化的解决方案。
DLA 云原生数据湖剖析(Serverless,对立元数据+凋谢存储与剖析计算)
数据源更加简单与多样的场景是云原生数据湖和数据仓库最大的区别。数据湖的外围场景是对多源异构的数据源进行对立的治理和计算与剖析解决。云原生数据湖领有对立的界面对多源异构数据进行治理、计算和剖析,外围点在于元数据管理和发现,集成不同的计算引擎对多源异构数据进行治理和剖析。
Data Lake Analytics + OSS 云原生数据湖
上图为云原生数据湖剖析Data Lake Analytics的架构,上面是对象存储或者其它不同的存储源,搭载Kubernetes+Container技术,通过serverless技术来做剖析和计算,以及多用户之间的隔离平安爱护,这样能够满足客户针对多源异构数据实现低成本、弹性的丰盛的计算和剖析解决需要。
2.3智能化、平安可信与生态工具
1)云原生+智能化数据库管控平台
智能化的数据管控平台利用云原生技术和人工智能技术进行智能化的数据库治理运维,包含分区、索引举荐、异样检测、慢SQL治理、参数调优等,这样能够大量晋升治理运维的效率,咱们研发了一个Database Autonomy Service模块(DAS)来实现数据库系统的主动驾驶,大幅度晋升运维管控的效率。
2)云端全程加密数据永不泄露
除了传统的Access Control,传输与落盘加密,咱们研发了全加密数据库,确保数据的相对平安,联合平安硬件TEE来做到这一点,能够做到数据处理的全程加密。
3)数据库生态工具
除了后面提到的数据库利用迁徙工具ADAM和数据库同步工具DTS,咱们还提供了丰盛的其余数据库生态工具,包含数据管理服务DMS和数据数据库备份服务DBS,能够提供数据血缘关系、数仓开发与建模、数据安全治理、数据备份容灾、CDM等一系列的企业级数据处理能力和面向开发者的服务能力。
4)数据库备份解决方案DBS
DBS能够做传统数据多云多端的备份,把线下的数据备份到云上,也能够把云上的数据备份到线下,实现秒级RPO,反对多种数据源多源多端的云备份,并且反对Snapshot Recovery。
三、案例剖析
1)双十一购物节•数据库挑战
上图为2020年“双十一”实在曲线,145倍的零碎峰值霎时爆发,利用云原生能力和分布式能力的联合能够完满平滑地反对“双十一”高并发海量数据的挑战。
2)中国邮政•大型传统商用数据库替换
中国邮政以前是基于传统的商业数据仓库,现在利用ADB云原生数仓进行降级,提供更牢靠的离在线一体化计算剖析能力,实现对全国数据寄递平台对立到一个零碎的诉求。
3)某超大型部委客户
国税总局的全国税务数据对立零碎利用,利用PolarDB-X分布式数据库以及DTS和ADB实现了从TP到AP数据处理、计算、剖析、查问、解决一整套的解决方案,同时通过DMS来做数据开发和治理。撑持高并发、低提早的简单查问;撑持海量实时数据实时可见和高效入库;反对金融级别的精准计算。
4)阿里云数据库技术反抗新冠疫情
利用云原生数据库提供的弹性高可用和智能化运维能力,联合分布式去做程度拓展,为宽广的企业和用户提供十分好的弹性高可用能力,疫情期间在线教育行业开始大规模地应用云原生、分布式的新一代数据库技术架构和产品实现降本增效反抗疫情。
5)客户案例•中国联通
中国联通的外围cBSS零碎,针对传统的商业数据库进行降级革新,利用分布式数据库PolarDB-X的能力帮忙实现这种外围的计费零碎实时在线的交易数据处理。
6)客户案例•马来西亚电商巨头 PrestoMall
马来西亚的第三大电商PrestoMall,因为用传统的商业数据库Oracle老本太高,尤其是大促场景霎时高并发的挑战,利用云原生数据库PolarDB对传统商业数据库进行降级革新,实现了TCO的大幅降落。
7)客户案例•国内广告商数据湖剖析+计算解决方案
某国内当先广告厂商,文字、图片、和结构化数据等多源异构数据的解决无奈对立到一个数据仓库外面进行,利用数据湖来做一个对立的剖析引擎。利用DLA+OSS构建了新一代serverless数据湖,大大晋升了对多源异构数据的拜访解决和计算能力、同时节俭了大量的计算成本。针对简单丰盛的计算剖析场景,实现平滑的解决方案顺利从AWS迁徙过去。
四、总结
上图为阿里云数据库的产品大图,从OLTP、OLAP、NoSQL到数据库生态工具与云原生智能化管控,阿里云心愿利用丰盛的云原生数据库产品体系为企业级客户和用户提供更好更牢靠的产品与性价比更高的解决方案。
作者:louth
原文链接
本文为阿里云原创内容,未经容许不得转载