是如何做到系统无缝迁移的? 褚霸详解阿里云数据库架构演进和实践

本文涉及的产品
云原生数据库 PolarDB MySQL 版,Serverless 5000PCU 100GB
简介: 阿里云数据库从最初的只支持MySQL,到现在支持关系数据库、NoSQL、HTAP、EMR产品体系,在管控系统和数据链路上做了好几次重大架构迭代,云产品很长的生命周期里面会遇到新老架构共存,做到架构连续和系统无缝迁移是个很大的挑战, 本文将为你分享云数据库架构演进和实践。
摘要:阿里云数据库从最初的只支持MySQL,到现在支持关系数据库、NoSQL、HTAP、EMR产品体系,在管控系统和数据链路上做了好几次重大架构迭代,云产品很长的生命周期里面会遇到新老架构共存,如何做到架构连续和系统无缝迁移是个很大的挑战, 本文将为你分享云数据库架构演进和实践。

以下内容均根据演讲PPT整理而成。

在2016年ArchSummit全球架构师北京峰会上,阿里云研究员余锋,做了题为《云数据库架构演进和实践》的精彩演讲。

个人简介:余锋(花名:褚霸),阿里云研究员,有超过18年的网络和底层系统开发经验,擅长构建大规模集群服务,目前负责阿里云数据库研发和产品体系,在分布式数据库和引擎构建上都有丰富的经验。

本文将从业务概述、架构效率、业务连续和架构演化等4个方面进行分享。
  • 一、业务概述
  • 二、架构效率
  • 三、业务连续
  • 四、架构演化
一、业务概述
目前业界的数据库市场生态,主要还是关系型数据库占的比重最大,其次是NoSQL数据库,其他的各种类型数据库占据大约30%的市场空间。

f628bf3450c0122d614e0fe4f8a6da00db3f8ae8

数据库产品的生态演进过程大致如下图所示,关系型数据库从传统的MySQL、PostgreSQL、SQL Server和PPAS到演进的新的关系型数据库比如说阿里云的OceanBase以及PolarDB等;非关系型的数据库也从原本的Redis、MongoDB、Memcache、HBase到OTS;Search Engine类的产品从Elastic Search到Open Search;ETL则由原本的Hadoop、Greenplum和HAWQ扩展到MaxCompute以及PetaDate;至于中间件和一些工具也存在一些相应的演进产品。

3a761ddaa4df5c487735ffe9252e6042b3b5d73c

阿里云数据库产品的输出方式大致有三种:公有云,专有域和专有云,而这三种输出方式也有适合于自己的目标用户,适用于不同的场景。

3f582aa789d6ab060e621571d69027a342c8282a

阿里云的机房目前分布在世界各地,遍布亚洲、欧洲、美洲以及澳洲,可以为用户提供高效、稳定的云计算与云存储服务。

55d272196bb60157a8214248e35cb42d6761fa7a

阿里云数据团队主要分为三个部分:数据库团队、售后团队以及阿里云的合作伙伴。数据库团队负责制定云数据库以及对云数据库进行优化操作,并且保证云数据库的正常运行;售后团队负责对于用户在购买和使用阿里云数据库之后出现的问题进行处理,包括完善云数据库使用文档,对于用户提交的工单和电话咨询进行回复等;对于合作伙伴而言,数据库团队需要帮助合作伙伴将数据迁移到云数据库上来,并且为他们提供驻场的指导和培训。

41d118d0a36bfd3dcec92c4570af21ccfd883bec

二、架构效率
对于阿里云数据库产品来说,其对于业务的支撑能力是毋庸置疑的,无论是从阿里云机器集群的规模还是性能和成本以及产品的形态的多样化角度来看,阿里云数据库产品都是具有绝对优势的。

b60a2f44a5724f329b254f8639ef9a4d4effeb8c

在另一方面,阿里云的数据库在可运维方面是一个闭环的系统,并且其具有强大的恢复能力;在可服务方面,阿里云数据库也拥有强大的自证清白的能力和审计能力。

ae8f103ac8e5830a38ffc8ce8fa23d75a23b5c48

阿里云数据库产品是支持快速迭代的,其实在设计数据库产品时需要考虑面向未来的架构来支撑产品的快速迭代。数据库的设计需要进行合理的分层抽象设计,努力实现对称性的设计,构造出系统的美感,并且让系统具有可以快速复制的能力,当然设计时需要掌握一个度,不能过度设计以免对于未来的迭代造成不利的影响。

5b4ede92f208aa1546e768208ad4cd757ff6b592

在云数据库设计实践的过程中,开发的组织效率也是一个非常关键而且重要的因素。架构师需要对于中台和流水线进行合理的设计,并且保证接口的稳定易得,可以使用微服务的架构。除此之外,对于开发人员的能力或者素质也要有一个整体的把握。

f0ea3b5c5b247bdabc50485e9eb42f3db571dddb

自省能力也是非常重要的一部分,需要通过自省能力来支撑产品和研发决策。

44088a5f73b6a569ea6ac094636e0d8b2de22ab4

三、业务连续
在对云数据库进行架构设计时需要考虑的一个重要问题就是如何保证业务的连续性。我们设计出的云数据库产品需要具有较高的服务可用性,需要对其进行容灾设计和冗余设计,并且对于突发的情况还需要考虑对服务进行降级。除此之外还需要保证数据的可靠性,需要在设计时考虑校对发现机制并且使数据库具有按时间点进行灾难恢复的能力。

3234ab89905e6144d2fcb5f3b08a08c08bdfb30e

在考虑业务连续性的设计时,还需要考虑到服务等级协议,使得用户得到保护而不单单是平台,并且为用户提供实例维度的体验。另外还需要考虑产品生命周期管理、应急预案以及数据库的灰度能力。

653408c92275a63b03724790291038ba70433e5b


四、架构演化

云数据库的架构演进需要依靠创新能力作为支撑,在架构演化的过程中也需要充分利用技术生态产生的红利。并且在云数据库架构演化的迭代过程中还需要考虑新旧系统的无缝切割以及组织架构更替的平滑过渡。

68b4272dbd88d6ba15d7461ce56d2e13ae7c5aae


相关实践学习
使用PolarDB和ECS搭建门户网站
本场景主要介绍基于PolarDB和ECS实现搭建门户网站。
阿里云数据库产品家族及特性
阿里云智能数据库产品团队一直致力于不断健全产品体系,提升产品性能,打磨产品功能,从而帮助客户实现更加极致的弹性能力、具备更强的扩展能力、并利用云设施进一步降低企业成本。以云原生+分布式为核心技术抓手,打造以自研的在线事务型(OLTP)数据库Polar DB和在线分析型(OLAP)数据库Analytic DB为代表的新一代企业级云原生数据库产品体系, 结合NoSQL数据库、数据库生态工具、云原生智能化数据库管控平台,为阿里巴巴经济体以及各个行业的企业客户和开发者提供从公共云到混合云再到私有云的完整解决方案,提供基于云基础设施进行数据从处理、到存储、再到计算与分析的一体化解决方案。本节课带你了解阿里云数据库产品家族及特性。
相关文章
|
13天前
|
存储 安全 搜索推荐
酒店管理系统的数据库的应用以及选择
酒店管理系统数据库关乎运营效率和服务质量。数据库用于数据存储、管理、分析及客户关系管理,确保房态与预订精准。选择时重视性能稳定性、数据安全、易用性、可扩展性和成本效益。合适的数据库能提升酒店运营效率并优化客户体验。
21 2
|
21天前
|
存储 关系型数据库 MySQL
轻松入门MySQL:数据库设计之范式规范,优化企业管理系统效率(21)
轻松入门MySQL:数据库设计之范式规范,优化企业管理系统效率(21)
|
24天前
|
安全 网络安全 数据库
数据安全之认识数据库漏洞扫描系统
数据库漏洞扫描系统是一种专业的数据库安全产品,它基于对数据库访问控制、数据库审计、资源管理、数据库加密以及数据库系统本身安全机制的深入分析,深入研究和发现数据库系统本身存在的BUG以及数据库管理、使用中存在的问题。
37 4
|
1月前
|
人工智能 运维 监控
构建高性能微服务架构:现代后端开发的挑战与策略构建高效自动化运维系统的关键策略
【2月更文挑战第30天】 随着企业应用的复杂性增加,传统的单体应用架构已经难以满足快速迭代和高可用性的需求。微服务架构作为解决方案,以其服务的细粒度、独立性和弹性而受到青睐。本文将深入探讨如何构建一个高性能的微服务系统,包括关键的设计原则、常用的技术栈选择以及性能优化的最佳实践。我们将分析微服务在处理分布式事务、数据一致性以及服务发现等方面的挑战,并提出相应的解决策略。通过实例分析和案例研究,我们的目标是为后端开发人员提供一套实用的指南,帮助他们构建出既能快速响应市场变化,又能保持高效率和稳定性的微服务系统。 【2月更文挑战第30天】随着信息技术的飞速发展,企业对于信息系统的稳定性和效率要求
|
9天前
|
人工智能 Serverless 数据处理
利用阿里云函数计算实现 Serverless 架构的应用
阿里云函数计算是事件驱动的Serverless服务,免服务器管理,自动扩展资源。它降低了基础设施成本,提高了开发效率,支持Web应用、数据处理、AI和定时任务等多种场景。通过实例展示了如何用Python实现图片压缩应用,通过OSS触发函数自动执行。阿里云函数计算在云计算时代助力企业实现快速迭代和高效运营。
46 0
|
13天前
|
存储 NoSQL 安全
物流系统数据库的应该以及选择
物流系统数据库在信息化建设中扮演关键角色,用于数据存储、管理和共享,支持决策,并优化资源配置。选择数据库时要考虑类型(如关系型或NoSQL)、性能稳定性、成本易用性、安全性和未来发展需求。完善数据管理与安全措施,确保数据准确性和系统扩展性,是提升物流效率和企业竞争力的关键。
16 3
|
30天前
|
SQL 存储 安全
【软件设计师备考 专题 】数据库管理系统的功能和特征
【软件设计师备考 专题 】数据库管理系统的功能和特征
73 0
|
1月前
|
SQL 数据可视化 Apache
阿里云数据库内核 Apache Doris 兼容 Presto、Trino、ClickHouse、Hive 等近十种 SQL 方言,助力业务平滑迁移
阿里云数据库 SelectDB 内核 Doris 的 SQL 方言转换工具, Doris SQL Convertor 致力于提供高效、稳定的 SQL 迁移解决方案,满足用户多样化的业务需求。兼容 Presto、Trino、ClickHouse、Hive 等近十种 SQL 方言,助力业务平滑迁移。
阿里云数据库内核 Apache Doris 兼容 Presto、Trino、ClickHouse、Hive 等近十种 SQL 方言,助力业务平滑迁移
|
1月前
|
SQL 编解码 数据库
MyKtv点歌系统前台主要功能实现,内附数据库脚本,可以直接运行
MyKtv点歌系统前台主要功能实现,内附数据库脚本,可以直接运行
14 1
MyKtv点歌系统前台主要功能实现,内附数据库脚本,可以直接运行
|
1月前
|
存储 分布式计算 大数据
现代化数据库技术——面向大数据的分布式存储系统
传统的关系型数据库在面对大规模数据处理时遇到了诸多挑战,而面向大数据的分布式存储系统应运而生。本文将深入探讨现代化数据库技术中的分布式存储系统,包括其优势、工作原理以及在大数据领域的应用。