技术白皮书—技术架构

本文涉及的产品
RDS MySQL Serverless 基础系列,0.5-2RCU 50GB
云原生数据库 PolarDB 分布式版,标准版 2核8GB
云数据库 RDS MySQL,高可用系列 2核4GB
简介: 架构演进理念 当前,分布式领域有3大技术方向:Sharding技术,NewSQL原生分布式技术,云原生DB技术。每种分布式都有其独特的优势和特点。PolarDB-X的架构继承了DRDS和X-DB技术的稳定性,结合了PolarDB的云原生技术,融入了NewSQL对于分布式数据一致性的能力,为用户提供新的“云原生+分布式”的产品体验。

p330045.png

整体架构

PolarDB-X的整体架构如下:p330051.png核心组件

  • 元数据服务(Global Meta Service,GMS),主要提供分布式的元数据,提供全局授时服务(TSO)、维护Table/Schema、Statistic等Meta信息、维护账号、权限等安全信息。
  • 计算节点(Compute Node,CN),主要提供分布式SQL引擎,包含核心的优化器和执行器。基于无状态的SQL引擎提供分布式路由和计算,解决分布式事务2PC协调、分布式DDL执行、全局索引维护等。
  • 存储节点 (Date Node,DN),主要提供数据存储引擎,基于多数派Paxos共识协议提供高可靠存储、分布式事务的MVCC多版本存储,另外提供计算下推能力满足分布式的计算下推要求(比如Project/Filter/Join/Agg等下推计算),可支持本地盘和共享存储。
  • 日志节点(Change Data Capture,CDC),主要提供兼容MySQL生态的主备复制协议,兼容Binlog协议和数据格式、支持主备复制Replication的协议和交互。

核心模块p330055.png

如同大多数传统单机关系型数据库,PolarDB-X分为网络层、SQL解析层、优化层、执行层、存储层,其中优化层包含逻辑优化和物理优化,执行层包含单机两阶段执行、单机并行执行和多机并行执行,存储层包含应用了多种传统单机数据库优化和执行技术。

生态工具

PolarDB-X高度兼容MySQL协议和生态,可支持MySQL开源生态中常用的MySQL驱动(JDBC/ODBC)、多语言兼容(Java/GO/C/C++/Python等)、数据导入导出工具、各种客户端GUI等。PolarDB-X提供完整的生态工具方案,如下图所示:p330056.png

闭环的生态工具:

  • 数据管理DMS,基于阿里巴巴集团十余年的数据库服务平台的云版本,提供免安装、免运维、即开即用、多种数据库类型与多种环境统一的web数据库管理终端,可以为企业用户快速复制搭建与阿里集团同等安全、高效、规范的数据库DevOps研发流程解决方案。
  • 数据库自治服务(Database Autonomy Service,简称DAS),一种基于机器学习和专家经验实现数据库自感知、自修复、自优化、自运维及自安全的云服务,帮助用户消除数据库管理的复杂性及人工操作引发的服务故障,有效保障数据库服务的稳定、安全及高效。
  • 数据传输服务(Data Transmission Service,简称DTS),支持关系型数据库、NoSQL、大数据等数据源,集数据迁移、订阅及实时同步功能于一体,能够解决公共云、混合云场景下,远距离、毫秒级异步数据传输难题。其底层基础设施采用阿里双11异地多活架构,为数千下游应用提供实时数据流。
  • 数据库备份(Database Backup,简称DBS),低成本、企业级的云原生备份平台。它可以为多种环境的数据库提供强有力的保护,包括本地数据中心、其他云厂商、公共云及混合云。

产品架构

PolarDB-X作为阿里云的成熟云产品,在产品化的配套能力上支持比较完整,包括白屏化的运维操作、多样化的交付形态、完整的OpenAPI、配套的生态工具等。

PolarDB-X部署架构整体基于Kubernetes,运行在高性能的物理机,产品架构设计如下:

  1. PolarDB-X实例由多个节点组成,产品购买以节点为单位,初次购买必须包含2个节点,后续扩容和缩容最小为1个节点。每个节点会有多种规格,比如4c16g、8c32g、16c64g等。
  2. PolarDB-X根据资源隔离诉求的不同,可以分为:通用规格、独享规格、独占物理机规格。 比如通用规格,同一硬件资源下的不同PolarDB-X实例,会互相充分利用彼此空闲的计算资源(如CPU),通过复用计算资源享受规模红利,性价比会更高。而独享规格每个PolarDB-X实例会独占所分配到的计算资源(如CPU),而不会与同一服务器上的其他集群共享资源,性能表现更加稳定。
  3. PolarDB-X支持公有云、混合云的多样化交付。在公有云,支持多地域、多可用区的交付,同时在网络和安全层面,支持VPC、IP白名单、非对称账号密码、TDE加密等方式,确保数据服务安全。 在混合云,支持基于DBStack轻量化输出,可在用户已有机器硬件上完成数据库部署和运维。

架构优势

高可用

经过阿里多年双11验证的X-DB(X-Paxos共识协议能力),提供数据强一致,保证节点故障切换时RPO=0。另外支持多样化的部署和容灾能力,比如基于Paxos强同步的同城三机房、三地五中心,另外搭配binlog异步复制的两地三中心、异地灾备、异地多活等。尤其在异地长距离传输上,基于Batching & Pipelining 进行网络优化来提升性能。

高兼容

PolarDB-X主要兼容MySQL,包括SQL、函数类型等,技术上引入全局时间授时服务,提供全局一致性的分布式事务能力,通过TSO+2PC提供数据库完整的ACID能力,满足分布式下的Read-Commited/Repeatable-Read的隔离级别。同时在分布式事务的基础上,提供全局二级索引能力,通过事务多写保证索引和主表数据强一致的同时,引入基于代价的CBO优化器实现索引选择。除此以外,在元数据和生态对接层面,PolarDB-X基于Online DDL的技术提供了分布式下元数据的一致性。同时硬件层面,兼容主流国产操作系统和芯片认证,比如麒麟、鲲鹏、海光等。

另外在业界主流的分布式数据库里,分布式下的redolog/binlog等数据库变更日志其实一直被厂商所忽视,从关系数据库的发展历史来看,生态和标准对于市场规模化非常重要,PolarDB-X 会支持全局binlog能力,全面兼容和拥抱MySQL数据库生态,用户可以将PolarDB-X当做一个MySQL库,采用标准的binlog dump协议获取binlog日志。

高扩展

PolarDB-X基于Share-Nothing的架构支持水平扩展,同时支持数据库在线扩缩容能力,在OLTP场景下可支持千万级别的并发、以及PB级别的数据存储规模,同样在OLAP场景下,引入MPP并行查询技术,扩展机器后查询能力可线性提升,满足TPC-H等的复杂报表查询诉求。

HTAP

随着移动互联网和Iot设备的普及,数据会产生爆炸式的增长趋势,传统的OLTP和OLAP的解决方案是基于简单的读写分离或者ETL模型,将在线库的数据T+1的方式抽取到数据仓库中进行计算,这种方案存在存储成本高、实时性差、链路和维护成本高。PolarDB-X 设计中支持OLTP和OLAP的混合负载的能力,可以在一个实例里同时运行TPC-C和TPC-H的benchmark测试,保证AP的查询不影响TP流量的稳定性。核心技术层面,我们也有自己的创新性,比如我们会在计算层精确识别出TP和AP的流量,结合多副本的特性和多副本的一致性读能力,智能将TP和AP路由到不同的副本上,同时在AP链路上默认开启MPP并行查询技术,从而在满足隔离性的基础上,线性提升AP的查询能力。在存储层上,我们也在完善计算下推能力,未来也会提供高性能列存引擎,实现行列混合的HTAP能力。

极致弹性

PolarDB-X结合PolarDB云原生的技术,可以基于PolarDB的共享存储+RDMA网络优化能力,提供秒级备份、极速弹性、以及存储按需扩展的能力。基于共享存储的基础上,结合分布式的多点写入能力,可以在不迁移数据的前提下提供秒级弹性的能力,给到用户完全不一样的弹性体验。

开放生态

PolarDB-X全面拥抱和坚定MySQL的开源生态,做到代码完全自主可控的同时满足分布式MySQL的兼容性,架构做到简单开放,只要具备一定MySQL背景的同学即可完成持续运维。除此以外,PolarDB-X和阿里云的数据库生态有完整的闭环对接,支持如DTS/DBS/DMS等,可打通阿里云的整个大生态。

相关文章
|
SQL 关系型数据库 测试技术
timescaleDB双机热备流复制与测试
最近有项目要用到热备功能,timescaledb只能兼容pg的流复制,不能兼容其他的复制策略,所以这里我们采用pg的流复制功能镜像部署,并进行了一些测试
1053 0
|
机器学习/深度学习 数据采集 人工智能
Machine Learning机器学习之贝叶斯网络(BayesianNetwork)
Machine Learning机器学习之贝叶斯网络(BayesianNetwork)
|
8月前
|
存储 机器学习/深度学习 人工智能
AllData数据中台核心菜单十二:数据同步平台
杭州奥零数据科技有限公司成立于2023年,专注于数据中台业务,维护开源项目AllData并提供商业版解决方案。AllData提供数据集成、存储、开发、治理及BI展示等一站式服务,支持AI大模型应用,助力企业高效利用数据价值。
AllData数据中台核心菜单十二:数据同步平台
|
4月前
|
机器学习/深度学习 存储 人工智能
RAG技巧与底层代码剖析
你是否还在用现成框架调包实现RAG?本文带你撕开技术黑箱,仅用numpy等Python基础库构建RAG系统,从零手撕RAG内核!从文本划分、向量化、相似度检索到生成优化,逐行代码解剖检索增强生成的核心逻辑,更深度解析9大实战技巧:从智能分块策略到动态上下文压缩,助你突破回答质量瓶颈。拒绝做调参工具人,这次彻底掌握RAG的底层基因!
421 17
|
4月前
|
人工智能 JSON 测试技术
AI 驱动 API 研发提效:解析 Apipost 在 API 文档生成场景的全流程能力
随着AI和大模型技术发展,软件开发步入智能化时代。API研发作为核心环节,高效调试与文档编写至关重要。Apipost是国内领先的API协同工具,提供从API设计到性能测试的完整闭环,支持AI驱动的文档生成、Markdown润色及OpenAPI生成等功能,显著提升团队效率。其AI功能可一键补全参数描述、生成示例代码与响应样例,减少重复劳动,助力开发者专注于业务逻辑优化。无论是快速迭代还是大规模接口设计,Apipost都为高效协作提供了强大支持。
165 0
|
存储 安全 数据库
云计算:架构、类型及其优缺点
【8月更文挑战第20天】
2912 0
|
安全 数据挖掘 测试技术
基于SSM+Vue的家居商城系统(源码+部署说明+演示视频)(2)
基于SSM+Vue的家居商城系统(源码+部署说明+演示视频)
222 0
|
运维 Cloud Native 安全
带你读《云原生架构白皮书2022新版》——DevOps(上)
带你读《云原生架构白皮书2022新版》——DevOps(上)
734 99
|
数据安全/隐私保护
详细讲解,软件生成 抗震隔震反应谱、公路桥梁反应谱、水利、铁路、地铁、自定义反应谱
地震波格式转换、时程转换、峰值调整、规范反应谱、计算反应谱、计算持时、生成人工波、时频域转换、数据滤波、基线校正、Arias截波、傅里叶变换、耐震时程曲线、脉冲波合成与提取、三联反应谱、地震动参数、延性反应谱、地震波缩尺、功率谱密度
|
监控 算法 安全
JVM工作原理与实战(二十三):堆的垃圾回收-引用计数法和可达性分析法
JVM作为Java程序的运行环境,其负责解释和执行字节码,管理内存,确保安全,支持多线程和提供性能监控工具,以及确保程序的跨平台运行。本文主要介绍了判断堆上的对象是否可以回收的方法(引用计数法、可达性分析法)、查看垃圾回收日志等内容。
204 0