挑战未来:下一代企业级应用数据库系统

本文涉及的产品
RDS MySQL Serverless 基础系列,0.5-2RCU 50GB
云原生数据库 PolarDB 分布式版,标准版 2核8GB
云原生数据仓库AnalyticDB MySQL版,基础版 8ACU 100GB 1个月
简介: 随着数据量以及数据类型的不断增多,业务需求逐渐从“大数据”转向“快数据”。数据库系统领域充满机遇,也布满挑战,越来越多的企业开始思考下一代数据库技术。在2019年杭州云栖大会开发者峰会上,阿里巴巴副总裁、阿里云智能数据库产品事业部总经理、高级研究员李飞飞就为大家分享了阿里云对于下一代企业级应用数据库系统的实践。

摘要:随着数据量以及数据类型的不断增多,业务需求逐渐从“大数据”转向“快数据”。数据库系统领域充满机遇,也布满挑战,越来越多的企业开始思考下一代数据库技术。在2019年杭州云栖大会开发者峰会上,阿里巴巴副总裁、阿里云智能数据库产品事业部总经理、高级研究员李飞飞就为大家分享了阿里云对于下一代企业级应用数据库系统的实践。

数据库:云上应用关键一环

正如AWS总裁所说的“The real battle will be in databases”,数据库已经成为上云的关键一环,连接IaaS层与智能化应用最为关键的步骤就是数据库。

image.png

数据库发展-业务视角

从业务视角来看,数据库的发展有这样几类,最传统的关系型事务处理数据库叫OLTP,对于事务型数据库而言,最关键的问题是保证结构化数据的读写一致性,主要挑战是高并发的问题,即在海量数据下如何正确处理海量事务等。另外还有分析型数据库,也就是所谓的传统数仓,它所解决的问题是面对大量数据如何进行实时的交互式分析。在2008年和2009年,谷歌的三驾马车——GFS、MapReduce和BigTable诞生之后,就衍生出了NoSQL数据库,因为传统关系型数据库由于具有强一致性,因此在大数据情况下对于扩展能力还存在很大的限制,NoSQL数据库则牺牲了一定的一致性,换取了扩展的能力。除此之外,数据库还包括数据管理、备份以及传输等相关生态工具。以上这些就形成了数据库四个不同的业务视角。

image.png

阿里云数据库-中国云数据库领导者

阿里云在云原生数据库方面做了很多工作,其中最核心的产品当属POLARDB和AnalyticDB。目前,阿里云数据库在亚太市场排名第一、全球排名第三,并且用户和开发者的数目已经超过了10万。

image.png

数据库系统演进

数据库系统的演进最早从结构化数据库开始,逐渐衍生出了关系型数据库,核心技术是SQL和OLTP。后来数据越来越多,由于读写冲突的原因,需要将数据从OLTP数据库里面转移到数据仓库里面。在建仓的过程中,可能还会把非结构化数据转化为结构化数据,并存储到数仓里,这样一来就可以在数仓对结构化数据和非结构化数据进行交互式分析,这部分的核心技术是ETL和OLAP。数据库技术发展到今天,数据类型越来越多,出现了更多新的数据类型,如图、时序以及文档等,也需要有新的数据库系统,因此现在除了RDS、NoSQL之外还有了NewSQL,将传统关系型数据库的能力和NoSQL的能力完美地结合起来,这就是所谓的NewSQL数据库。除此之外,数据库领域也非常关注Multi-Mode和HTAP。

image.png

Multi-Model多模数据库系统

数据库可以分为北向和南向,南向是数据库的存储层,在南向,数据结构和类型可能是多种多样的,比如结构化数据、图数据、时序数据、向量数据以及文档数据等;而在北向,则希望能够在查询层提供一个标准的统一查询接口,比如SQL。南向存储形式多样,而北向查询接口统一就构成了标准的数据湖服务。除此之外,还可以在南向仅提供一种标准的数据存储形式,而北向则提供多种多样的查询接口,让用户可以按照图、文档等方式进行查询。

image.png

数据库智能化+自动化管控平台

对于开发者而言,数据库系统变化的一个重要趋势是越来越智能化,包括Oracle在内的各大数据库厂商都在强调数据库智能化。数据库的智能化可以分为两个主要方面,一方面是内核的智能化,比如对于数据进行查询以及冷热分离,可以借助人工智能和机器学习的方法进行优化。另外一方面是数据库运维管控平台的智能化,使得数据库系统可以像自动驾驶汽车一样管理数据库实例。

image.png

新硬件:软硬件一体化设计

数据库系统变化的另外一个重要趋势是RDMA、SSD、NVM、GPU/FPGA等新硬件带来的软硬件一体化的设计。无论是内核开发还是应用开发,新硬件的出现和使用都对开发者提出了更高的要求。

image.png

下一代企业级数据库:云原生+分布式

今天的数据库领域存在三种主流架构,即单节点架构、存储和计算分离云原生架构以及经典的分布式架构。阿里云认为下一代的企业级数据库的架构一定需要结合云原生架构和分布式架构的优势。也就是说需要在上层实现Shared Nothing,使得应用可以水平拓展,能够应对双11这样的海量数据和高并发的场景。中间做分库分表,但是传统架构下的分库分表可能对业务有所改造和侵入,也会增加跨Shard以及跨库查询的概率,使得性能会大大下降。因此,阿里云希望在下面一层使用Shared Everything的云原生架构。这样就使得每个Shard的处理能力大大增加,使得跨库查询和Distributed Commit的概率大大降低,系统的复杂度也会大大的降低,同时开发对应用的侵入程度也会降低。

image.png

阿里云数据库技术与产品是完整的生态体系

利用云原生+分布式的这种技术架构就能够支撑双11瞬间120倍的流量峰值增长。通过利用OLTP的POLARDB和OLAP的ADB就可以形成一个从数据产生、事务处理到实时消费、分析的完整闭环。

image.png

阿里云RDS For MySQL/AliSQL

当开发者来到阿里云的数据库平台,所看到的RDS For MySQL其实并不是官方版本的MySQL,而是阿里巴巴自己维护的AliSQL分支。在AliSQL之上,阿里巴巴做了大量企业级应用,比如支持TDE、BYOK等,还实现了线程池,增加了企业级应用开发的功能,也大大简化了开发者使用MySQL生态进行应用开发的复杂度。此外,RDS还支持单节点、双节点以及三节点的部署方式。正因为做出了这些贡献,阿里巴巴获得了MySQL 2018年的社区贡献奖,也是亚太地区唯一获得这个奖项的公司。

image.png

阿里云RDS AliSQL三节点金融级高可用集群

阿里云RDS AliSQL实现了三节点金融级高可用集群,其最大的优势就是高可用,因为它将CAP理论中的三点比较完美地结合起来。其核心思路是三节点中存在一个RDS的Leader以及两个Follower,通过Paxos形成三节点之间的Binlog同步,这样就可以保证数据和应用的高可用。

image.png

阿里云PostgreSQL独有的增强功能

除了MySQL之外,阿里云的PostgreSQL在社区版本上做了大量优化,比如Ganon支持GPU时空遥感引擎,varbitx支持对用户画像数据进行处理,BYOK实现了存储层加密等。在POLARDB for PostgreSQL版本上可以做到16个计算节点的拓展,在AnalyticDB for PostgreSQL上引入了HyperLog预估分析,比传统使用直方图进行预估分析准确得多,并且成本也低很多。因此,对于中小型业务,可以使用标准的社区版的RDS for PostgreSQL;对于混合型复杂业务,可以使用POLARDB for PostgreSQL;对于海量分析型BI以及报表业务,可以使用AnalyticDB for PostgreSQL,这样就形成了PostgreSQL生态的完整闭环。

image.png

POLARDB架构细节

接下来展开分享下一代企业级数据库架构,首先介绍大家比较熟悉的POLARDB。POLARDB的主要架构设计模式是计算与存储分离,使用RDMA做共享存储,在存储层通过Data Chunk和Parallel Raft协议保证数据高可用,这就实现了单一实例的多个主备架构。同时,前面增加一层PolarProxy实现多节点之间的读写分离和负载均衡。在下层实现了PolarFS文件系统,对接底层的PolarStore分布式共享存储。现在,POLARDB发布了MySQL 5.6版本以及MySQL 8.0版本,还有PostgreSQL的版本以及高度兼容Oracle的版本,各种各样的生态都能够在POLARDB数据库上得以完美的体现。

image.png

此外,阿里云POLARDB还实现了并行查询优化,使得查询的平均性能提升了27倍。大家知道MySQL等数据库的查询优化器或者查询执行器在实际上并没有做并行查询优化。而阿里云POLARDB则实现了线程池,因此可以实现并行化查询。举个简单的例子,一个包含100个Group by的SQL语句,如果做并行查询Group by,执行时间可能是原本串行执行Group by的1%。

阿里云POLARDB分布式版本——POLARDB-X

阿里云POLARDB分布式版本POLARDB-X简单而言就是把DRDS和POLARDB进行集合,形成上层Shared Nothing,下层Shared Everything、共享存储的架构,这种架构在针对海量数据进行开发的场景下具有诸多优势。

智能化OLAP:AnalyticDB实时交互式数据仓库

在生态兼容方面,AnalyticDB MySQL版本兼容MySQL生态,AnalyticDB PostgreSQL版本兼容PostgreSQL生态。AnalyticDB使用行列混存引擎,因此支持高吞吐写入和高并发查询AnalyticDB也采用计算和存储分离的架构,它会把计算资源进行池化实现灵活调度,将计算节点分为写入节点和只读节点,并做智能化的调度,根据实际负载决定读写节点的分配情况。AnalyticDB具有向量化的执行引擎,支持对结构化数据和非结构化数据进行联合分析,对人工智能以及机器学习的很多应用非常有帮助。

image.png

AI for DB-DBAdvisor:智能化数据库管控与内核

阿里云在智能与安全方面提供了DBAdvisor工具。DBAdvisor能够帮助开发者优化数据库管控策略,比如索引策略和分库分表策略等。DBAdvisor能够根据实际业务复杂推荐如何做Sharding。此外,SDDP,Self-Driving Database Platform是DBAdvisor最核心的组件,其能够帮助阿里经济体的数据库每天节省大约27TB的存储空间。

image.png

云上数据安全

云上的数据库安全非常重要,目前阿里云已经拥有标准的数据库安全体系。而在未来,开发者也需要考虑更多的安全因素,比如日志是否不可篡改、数据库内核是否可以全程加密等。在云上数据库安全方面,阿里云在全球首先实现了全加密数据库PostgreSQL版本,能够做到在任何情况下数据都不会泄漏。

image.png

数据传输云服务DTS

想要享受云数据库所带来的开发便利,那么数据从一端传输到另外一端的工具必不可少。阿里云提供了数据传输云服务DTS,它支持多种不同的数据源到异构数据库的实时同步,同时也可以支持一定程度的ETL,这样在数据传输的过程中,还可以到其他系统中进行消费。

image.png

阿里云数据库:数据上云高速公路

综合上述内容,阿里云数据库形成了一个从关系型数据库到分析型数据库,再到NoSQL数据库和工具的完美生态。

image.png

拥抱开放生态,携手客户与开发者共成长

阿里云希望并且欢迎和开发者共同成长,一起为社区做出贡献。AliSQL在开源领域获得了很多荣誉,阿里云DRDS也会在未来几个月内进行开源。阿里云希望和大家携手共建世界一流的分布式数据库系统。

image.png

相关实践学习
阿里云云原生数据仓库AnalyticDB MySQL版 使用教程
云原生数据仓库AnalyticDB MySQL版是一种支持高并发低延时查询的新一代云原生数据仓库,高度兼容MySQL协议以及SQL:92、SQL:99、SQL:2003标准,可以对海量数据进行即时的多维分析透视和业务探索,快速构建企业云上数据仓库。 了解产品 https://www.aliyun.com/product/ApsaraDB/ads
相关文章
|
1月前
|
存储 人工智能 NoSQL
AI大模型应用实践 八:如何通过RAG数据库实现大模型的私有化定制与优化
RAG技术通过融合外部知识库与大模型,实现知识动态更新与私有化定制,解决大模型知识固化、幻觉及数据安全难题。本文详解RAG原理、数据库选型(向量库、图库、知识图谱、混合架构)及应用场景,助力企业高效构建安全、可解释的智能系统。
|
4月前
|
存储 关系型数据库 数据库
附部署代码|云数据库RDS 全托管 Supabase服务:小白轻松搞定开发AI应用
本文通过一个 Agentic RAG 应用的完整构建流程,展示了如何借助 RDS Supabase 快速搭建具备知识处理与智能决策能力的 AI 应用,展示从数据准备到应用部署的全流程,相较于传统开发模式效率大幅提升。
附部署代码|云数据库RDS 全托管 Supabase服务:小白轻松搞定开发AI应用
|
5月前
|
安全 druid Nacos
0 代码改造实现应用运行时数据库密码无损轮转
本文探讨了敏感数据的安全风险及降低账密泄漏风险的策略。国家颁布的《网络安全二级等保2.0标准》强调了企业数据安全的重要性。文章介绍了Nacos作为配置中心在提升数据库访问安全性方面的应用,并结合阿里云KMS、Druid连接池和Spring Cloud Alibaba社区推出的数据源动态轮转方案。该方案实现了加密配置统一托管、帐密全托管、双层权限管控等功能,将帐密切换时间从数小时优化到一秒,显著提升了安全性和效率。未来,MSE Nacos和KMS将扩展至更多组件如NoSQL、MQ等,提供一站式安全服务,助力AI时代的应用安全。
369 14
|
2月前
|
存储 弹性计算 Cloud Native
云原生数据库的演进与应用实践
随着企业业务扩展,传统数据库难以应对高并发与弹性需求。云原生数据库应运而生,具备计算存储分离、弹性伸缩、高可用等核心特性,广泛应用于电商、金融、物联网等场景。阿里云PolarDB、Lindorm等产品已形成完善生态,助力企业高效处理数据。未来,AI驱动、Serverless与多云兼容将推动其进一步发展。
182 8
|
2月前
|
存储 弹性计算 安全
现有数据库系统中应用加密技术的不同之处
本文介绍了数据库加密技术的种类及其在不同应用场景下的安全防护能力,包括云盘加密、透明数据加密(TDE)和选择列加密。分析了数据库面临的安全威胁,如管理员攻击、网络监听、绕过数据库访问等,并通过能力矩阵对比了各类加密技术的安全防护范围、加密粒度、业务影响及性能损耗。帮助用户根据安全需求、业务改造成本和性能要求,选择合适的加密方案,保障数据存储与传输安全。
|
4月前
|
安全 Java Nacos
0代码改动实现Spring应用数据库帐密自动轮转
Nacos作为国内被广泛使用的配置中心,已经成为应用侧的基础设施产品,近年来安全问题被更多关注,这是中国国内软件行业逐渐迈向成熟的标志,也是必经之路,Nacos提供配置加密存储-运行时轮转的核心安全能力,将在应用安全领域承担更多职责。
|
3月前
|
存储 人工智能 数据库
视图是什么?为什么要用视图呢?数据库视图:定义、特点与应用
本文三桥君深入探讨数据库视图的概念与应用,从定义特点到实际价值全面解析。视图作为虚拟表具备动态更新、简化查询、数据安全等优势,能实现多角度数据展示并保持数据库重构的灵活性。产品专家三桥君还分析了视图与基表关系、创建维护要点及性能影响,强调视图是提升数据库管理效率的重要工具。三桥君通过系统讲解,帮助读者掌握这一常被忽视却功能强大的数据库特性。
901 0
|
5月前
|
SQL 数据库
软考软件评测师——数据库系统应用
本文介绍了关系数据库的基础知识与应用,涵盖候选码定义、自然连接特点、实体间关系(如1:n和m:n)、属性分类(复合、多值与派生属性)以及数据库设计规范。同时详细解析了E-R图转换原则、范式应用(如4NF)及Armstrong公理体系。通过历年真题分析,结合具体场景(如银行信用卡额度、教学管理等),深入探讨了候选键求解、视图操作规范及SQL语句编写技巧。内容旨在帮助读者全面掌握关系数据库理论与实践技能。
|
8月前
|
SQL 关系型数据库 网络安全
Navicat Premium 17 最新版下载与配置:5分钟完成企业级数据库工具部署
Navicat Premium 17 是一款支持多种主流数据库(如 MySQL、Oracle、PostgreSQL 等)的多数据库管理工具,提供可视化数据建模、SQL 编辑和数据同步等功能。试用版提供 14 天全功能体验,商业版支持跨平台使用。安装环境要求 Windows 10/11 或 macOS 12.0+,最低配置为 4GB 内存。下载并解压安装包后,按步骤启动安装程序、接受许可协议、自定义安装路径并完成安装。首次运行时需激活许可证并配置数据库连接。常见问题包括无法写入注册表、试用期续费及连接数据库权限问题。高级功能涵盖 SSH 通道加速、自动化任务调度和性能调优建议。
2309 19

热门文章

最新文章