从传统数据库到云数据库演进

本文涉及的产品
RDS SQL Server Serverless,2-4RCU 50GB 3个月
推荐场景:
阿里云百炼推荐规格 ADB PostgreSQL,4核16GB 100GB 1个月
RDS MySQL Serverless 基础系列,0.5-2RCU 50GB
简介: 来自阿里云数据库产品事业部的叶正盛为大家介绍传统数据库到云数据库的演进。

以下是视频内容精华整理。

一、数据库概述

(一)数据库发展简史

数据库的发展与计算机的发展密不可分。如下图所示,从上世纪五十年代大型机开始应用到现在,计算机的发展已经有近百年的历史,在这个发展历程中,数据库也随之发展,从最早应用于大型机的层次数据库和网状数据库,到现在如火如荼的云数据库。随着计算机和数据库技术的快速发展,其应用场景也越来越广泛,时至今日,新媒体、移动APP、云计算等等,几乎各行各业都离不开数据库。
image.png

(二)数据库分类

实际上数据库远远不止上图提到的几种,它是一个非常庞大的产业。据DB-Engines统计的,截止到2020年5月,有357种数据库被收录,这仅仅是公开的数据库,如果算上很多企业内部自研、未公开的,保守估计现在至少有1000种数据库。
从数据模型来讲,数据库总体上可以分为关系型和NoSQL类型的,其中大概四分之三的数据库为关系型数据库,其余为NoSQL类型的数据库。另外从商业和开源角度来看,最早是商业数据库占据多数,开源数据库占一小部分,但是随着互联网技术的发展,开源数据库不断发展,目前来说商业数据库和开源数据库基本平分天下。
如下图,用一个四象限图来对数据库进行分类,总体上包括OLTP、OLAP、NoSQL和Big Data四种类型。其中各个数据库的主要应用场景以及典型数据库如下:
OLTP:主要用于在线事务处理,比如淘宝交易、银行账务处理等,典型代表如MySQL;
OLAP:主要用于数据分析和数据仓库领域,典型代表如terdata;
NoSQL:主要用于存储用户信息等场景,典型代表如Redis、MongoDB等;
BigData:主要用于大数据场景,典型代表如hadoop等;
当然,分类都不是绝对的,各个数据库的应用场景也不唯一,比如ORACLE在OLAP、OLTP领域都用的比较多。具体来说,要根据业务场景和预算等因素来综合选择最适合的数据库。 
image.png

(三)数据库市场前景

当今,MySQL、Oracle和SQL Server是最流行的三大数据库。MySQL在互联网领域用的非常多,Oracle在企业中用的比较多,但是现在也有一部分Oracle的用户流向MySQL和PosgreSQL,SQL Server也有一部分用户流向MySQL。总的来说,当前数据库市场的竞争是非常激烈的,可以说是群雄逐鹿。
2018年,全球数据库市场大概是在461亿美金,而2018年中国数据库市场份额前三的厂商分别是Oracle、阿里云、Microsoft,分别占据了5.79亿美金、4.61亿美金、4.13亿美金的市场份额。然而,从云计算的角度来看,2019年中国公共云数据库市场份额阿里云可以说是一家独大,占据了约61%的市场份额,其他厂商一共瓜分了剩余39%的市场份额。可以说,未来数据库的市场会越来越大,竞争越来越激烈。
为什么这么多厂商都要做数据库呢?从专业的领域来看,数据库在当前的商业领域中是比较关键的一环;另外,值得肯定的是,未来的应用都是智能化的应用,数据库是其中至关重要的一环,
数据生产、数据存储、数据消费都是依赖数据库的,只有数据库这一环做好了,上层的应用才能真正做到智能化。因此,当前包括阿里巴巴、华为、腾讯等厂商都在数据库领域投入了大量的人力、物力、财力,就是为了在将来能够掌握关键技术,做好上层智能化应用。

二、阿里巴巴数据库发展历程

阿里巴巴数据库发展主要包括如下图所示的四个阶段,从最初建设了亚洲最强大的Oracle集群,发展到现在已经拥有多种自建的、性能优秀的数据库,并且在云数据库领域大放光彩。
image.png
这里不得不提到Gartner关于云数据库的分析报告,如下图所示,其在2019年的报告中提出,云数据库快速发展,预计到2022年75%的数据库都在云上。
image.png

三、传统数据库面临的挑战

云数据库高速发展,那么传统自建数据库面临的挑战有哪些呢?自建数据库主要分为自建商业数据库和自建开源数据库,他们面临的挑战也不一样。总的来说,自建商业数据库比如IBM DB2、Oracle、SQL Server,面临的挑战主要有如下:
软件价格高;
运维压力大;
集中式设计,扩展性差;
技术体系封闭,对新数据模型支持弱。
很多企业也会自建开源数据库,比如MySQL、PosgreSQL、Redis等,这些数据库目前面临的主要挑战有:
运维压力大;
缺少商业服务保障;
可靠性、安全性难保障。
四、云数据库

(一)云数据库特性

云数据库已经成为商业活动中的必需品,那么什么是云数据库呢?总结起来,云数据库应该有如下6大特性:
开箱即用:购买后无需安装即可使用;
自动运维:最大程度的自动化运维,如高可用保障、自动恢复等;
弹性扩展:能够适应业务的发展,进行弹性扩展;
兼容生态:开放、友好,能够适应商业生态,使得应用平滑的迁移上云;
服务保障:有着服务保障的承诺,比如服务质量、可用性等等;
更安全:无论是数据传输加密、访问权限控制等等,都要有相应的安全保障体系。

(二)阿里云数据库

下图是阿里云数据库的整体架构。可以看出,阿里云数据库支持非常多的类型,比如MySQL、SQL Server等等,还有很多自研的产品,比如PolarDB、ADB等。阿里云数据(DBaaS)的架构包括基础资源管理层、平台功能层、用户接入层,其中基础资源管理层包括物理机、虚拟机、存储、虚拟网络等,平台功能层为用户提供了实例配置、诊断优化、弹性升降级等众多功能,用户接入层包括在线购买、控制台、数据迁移和Open API等面向用户的功能。基于上面的三层架构,阿里云还提供了帐号、计费、可用区管理等云公共服务。
image.png
如今阿里云数据库已经有超过10万的客户,超过四十万的实例,可以说是中国最强的数据库研发团队。阿里云数据库提供了最丰富的数据库选型,包括MySQL8.0、SQL Server2019、Redis6.0、MongoDB4.2等,并且100%兼容生态,客户业务无需修改,可以直接迁移到阿里云,而且所有的内核都是经过了双十一高并发与稳定性考验。总得来说,阿里云数据库有如下特性:
1.开箱即用
1分钟创建实例
自动参数调优配置
内置监控告警
一键数据迁移
2.更快
内核优化
参数优化
性能至少提升30%
快速弹性扩展
3.更稳
可用性SLA:99.99%(业界第一)
稳定硬件选型与压测
管理了数十万实例的HA系统
快速内核bug修复
4.更安全
内置备份恢复,避免删库跑路,可以恢复到一周内任意时间点
有回收站功能,避免误操作
SQL操作审计
传送与存储加密:TDE、SSL
通过了PCI/DSS/ISO/SOC等保安全认证
虽然当前已经有很多用户在使用我们的云数据库,但是也有一些企业出于某些方面的考虑在使用自建数据库,比如管理灵活等。基础此,阿里云最近发布了一款云产品:云数据库专属集群,如下图所示,其将云数据库和自建数据库的优势进行结合。它支持现有RDS所有功能,可以做到安全隔离、自动可控,支持的数据源多,有着极高的性价比。
image.png

(三)阿里云新一代云原生数据库体系

下图是阿里云面向云计算设计的新一代云原生数据库产品体系。其中包括工具类产品,比如数据传输DTS、数据管理DMS和数据库备份DBS,这些工具类产品均不需要安装,全部是开箱即用,与云原生数据库打通,更加安全、高效;还有云原生数据库产品,比如PolarDB、AnalyticDB等等,既有面向OLTP场景的产品,也有面向OLAP场景的产品以及其他应用场景的产品;除以上外,还有一个自动运维的产品——数据库自治服务(DAS),就像自动驾驶一样,如果将数据库放在阿里云上,阿里云可以进行自动的诊断优化、弹性扩展等,DAS也是未来数据库发展的重要方向。
image.png
以下是阿里云数据库几种典型产品的简介。
(1)PolarDB
PolarDB可以算是云原生数据库的领导者,用户广泛,且国内外众多的厂商也在学习其内在技术,是阿里云增长最快的数据库,其主要特性以及基本架构如下图所示。值得一提的是,在这次新冠疫情中, Polar也贡献了自己的一份力量,如猿辅导、好未来等在线教育机构使用PolarDB为广大用户提供优质的在线教育,心动网络、elex等厂商基础PolarDB为大众提供游戏服务,保障了大家疫情期间的学习和娱乐。
image.png
PolarDB还有一个版本是Oracle兼容版,下图是阿里云为用户提供的Oracle迁移标准解决方案,主要是基于PolarDB+ADAM+DTS的方案,该方案的兼容性非常高,可以说是业界兼容度最高的产品了,使用DTS不需要停机就可以在线将数据库由Oracle迁移到PolarDB-O上,迁移成本大大下降;目前PolarDB-O虽然还不能达到Oracle相同的性能,但是在测试中也能达到Oracle70%的性能,性价比很高;另外PolarDB-O拥有云原生特性以及国产化认证,相信未来会有更广泛的应用。
image.png
PolarDB-O提供了业界最佳的Oracle兼容性,比如客户端兼容、SQL兼容以及其他的重大特性兼容,大家可以到网站上查阅相关文档进行详细了解。
(2)PolarDB-X
PolarDB-X是PolarDB的分布式版本,它不是一个中间件的架构,而是一个一体化的分布式架构,增加了很多分布式的专用组件,并且能够自动的进行分布式扩展,其架构以及主要特性如下图所示。目前,PolarDB-X在互联网行业和政企、金融业有着广泛的应用,对于比较大的业务场景来说,PolarDB-X是非常适合的产品。
image.png
(3)ADB
云原生数据库ADB是数据仓库中非常专业的解决方案,在弹性扩展上非常强,可以从1个节点扩展到5000个节点;在QPS上,从1到百万级的都支持,OPS从1到千万级都可以支持。ADB的理念是“会使用数据库就会使用大数据”,因为大数据相对来说还是比较复杂的,而ADB是一个数据仓库的理念,兼容MySQL和PG两种协议,上手比较简单。ADB融合了传统的数据仓库、云计算、大数据等技术,可以认为是新一代的云原生数据仓库。ADB性能优秀,性价比高,目前在很多行业已经有了大范围的应用,比如国家电网、EMS、天弘基金等等。其架构与主要特性如下图所示。
image.png
(4)DLA
DLA是云原生数据湖解决方案,因为数据往往分散在很多地方,比如关系型数据库、数据仓库、大数据、文件存储OSS中等等,数据湖可以把分布在不同地方的数据库联合起来,使得用户可以进行数据的联合分析。DLA支持的数据源非常多,是一个Serverless服务,在各个领域应用广泛,比如明日方舟、友盟等,其基本架构以及特性如下图所示。
image.png
(5)DTS
从传统数据库到云数据库,数据传输云服务DTS是非常重要的一个产品,它能够提供数据迁移、数据同步、数据订阅的服务,可以称为“数据高速公路”,其架构见下图。DTS在阿里云上也是应用非常广泛的一款产品,服务了至少几十万的用户,帮助其完成数据库的上云工作。
image.png

五、总结

下图是阿里云数据库服务的产品大图。从中可以看出,无论是(阿里云)云外数据库,还是传统自建数据库,都可以通过DTS服务迁移到阿里云上,然后根据业务的具体情况,从阿里云提供的众多数据库中选择最合适的;最上层有面向开发者的数据管理DMS工具,可以将其与数据库打通,进行相关业务的开发,并且提供了相应的企业版,帮助企业用户进行数据库的研发和管理;下层还有数据库自治服务DAS,提供了数据库的智能优化、异常修复、安全保护等服务。
image.png
从传统自建数据库到云数据库迁移的过程中,不同的数据库,有着不同的解决方案,而且没有绝对统一的方案,要依据业务和当前数据库建设方案来选择最适合的迁移方案,下图是几种推荐的方案。
image.png
毫无疑问,如今阿里云数据库已经成为中国云数据库的领导者,也是全球数据库领域的佼佼者,在亚太和全球数据库市场占据了不小的份额,有着丰富的云数据库产品服务以及PolarDB和AnalyticDB两大自研产品。另外,阿里云数据库与达摩院建立了深厚的合作基础,不断的进行前沿探索,比如安全数据库、自动驾驶数据库等等。总的来说,阿里云数据库更快、更稳、更安全,为阿里巴巴内部以及其他企业提供了优秀的数据库服务,希望未来能够帮助更多的企业快速发展。
image.png
关键词:数据库、阿里巴巴、云数据库、数据库迁移、PolarDB、ADB

相关实践学习
AnalyticDB MySQL海量数据秒级分析体验
快速上手AnalyticDB MySQL,玩转SQL开发等功能!本教程介绍如何在AnalyticDB MySQL中,一键加载内置数据集,并基于自动生成的查询脚本,运行复杂查询语句,秒级生成查询结果。
阿里云云原生数据仓库AnalyticDB MySQL版 使用教程
云原生数据仓库AnalyticDB MySQL版是一种支持高并发低延时查询的新一代云原生数据仓库,高度兼容MySQL协议以及SQL:92、SQL:99、SQL:2003标准,可以对海量数据进行即时的多维分析透视和业务探索,快速构建企业云上数据仓库。 了解产品 https://www.aliyun.com/product/ApsaraDB/ads
目录
相关文章
|
6月前
|
SQL 关系型数据库 MySQL
2024年阿里云数据库创建_数据库账号密码和连接教程
阿里云数据库怎么使用?阿里云百科整理阿里云数据库从购买到使用全流程,阿里云支持MySQL、SQL Server、PostgreSQL和MariaDB等数据库引擎,阿里云数据库具有高可用、高容灾特性,阿里云提供数据库备份、恢复、迁移全套解决方案。详细阿里云数据库购买和使用流程方法如下
|
3月前
|
运维 数据库 数据库管理
云数据库问题之阿里云在运营商领域数据库替换的整体解决方案要如何实现
云数据库问题之阿里云在运营商领域数据库替换的整体解决方案要如何实现
|
3月前
|
Oracle 数据管理 关系型数据库
云数据库问题之云计算的普及化对中国数据库厂商的全球化发展有什么影响
云数据库问题之云计算的普及化对中国数据库厂商的全球化发展有什么影响
|
4月前
|
存储 小程序 数据库
【微信小程序-原生开发】实用教程08 - 开通微信云开发,操作云数据库新增数据(含修改数据权限),初始化云服务(含获取微信云环境 id),获取云数据,滚动公告栏
【微信小程序-原生开发】实用教程08 - 开通微信云开发,操作云数据库新增数据(含修改数据权限),初始化云服务(含获取微信云环境 id),获取云数据,滚动公告栏
69 0
|
6月前
|
小程序 前端开发 数据库
【微信小程序4】云数据库:如何把数组一次性写入数据库中
【微信小程序4】云数据库:如何把数组一次性写入数据库中
87 1
|
6月前
|
Java 数据处理 调度
更高效准确的数据库内部任务调度实践,阿里云数据库SelectDB 内核 Apache Doris 内置 Job Scheduler 的实现与应用
Apache Doris 2.1 引入了内置的 Job Scheduler,旨在解决依赖外部调度系统的问题,提供秒级精确的定时任务管理。
|
6月前
|
人工智能 关系型数据库 分布式数据库
AI与云数据库的深度结合:黄铭钧院士点赞PolarDB,引领云数据库2.0时代
最近,阿里云PolarDB开发者大会的举办引起了广泛关注,中国科学院外籍院士、世界级数据库专家黄铭钧在阿里云PolarDB开发者大会上表示,AI与云数据库的深度结合是数据库发展的必然趋势。他点赞以PolarDB为代表的中国数据库正在引领全球云原生数据库的发展。那么本文就来简单聊聊AI与云数据库的深度结合,引领云数据库2.0时代,以及院士点赞国产数据库的意义和数据库产业突破的重要性和前景。
453 2
AI与云数据库的深度结合:黄铭钧院士点赞PolarDB,引领云数据库2.0时代
|
6月前
|
存储 安全 关系型数据库
云数据库和传统数据库之间的迁移和集成有哪些挑战?
云数据库和传统数据库之间的迁移和集成有哪些挑战?
81 0
|
6月前
|
存储 SQL NoSQL
什么是云数据库?它与传统数据库有什么不同之处?
什么是云数据库?它与传统数据库有什么不同之处?
284 0
|
6月前
|
关系型数据库 MySQL 数据库连接
阿里云国际站代理商:MySQL云数据库数据库链接不上怎么办?
@luotuoemo 飞机@TG 【聚搜云】服务器运维专家! 阿里云国际站代理商:MySQL云数据库数据库链接不上怎么办?