基于湖库一体架构,统一管理结构化、半结构化与非结构化等多模态数据,一个系统承载事务处理、实时分析与 AI 工作负载。
数据库代理概述
更新时间:2026-08-24 15:58:06
本页面为您介绍 OB Cloud 云数据库代理服务的概念。
背景信息
OB Cloud 数据库代理位于客户端和数据库之间,负责接收客户端的请求,并将请求转发到后端的 OB Cloud 云数据库。保证最佳路由,尽量避免分布式事务;保证多副本场景下,单台服务器故障不影响应用,提升 OB Cloud 云数据库的高可用能力。
自 2026 年 2 月 9 号起,数据库代理集群支持升级至 2.0 架构版本,点击升级全部代理架构按钮后,会为每个地址创建独立的共享代理集群,在保证与 1.0 版本同样的高性能和高可用的基础上实现更小颗粒度的集群规格控制。详细的操作步骤,请参见 数据库代理服务管理。
OB Cloud 数据库代理具有连接管理、最佳路由、高性能转发、易运维、高可用和专有协议等特性。以下是常用的一些概念介绍:
| 术语 | 说明 |
|---|---|
| 代理连接地址(原代理终端) | 数据库代理连接地址是数据库代理的核心,支持自定义连接地址访问策略、修改连接地址前缀和端口号等。通过数据库代理连接地址连接RDS实例可以使用数据库代理的高级功能。 |
| 连接管理 | 针对一个客户端的物理连接,数据库代理维持自身到后端多个 OBServer 节点的连接,采用基于版本号的增量同步方案维持了每个 OBServer 节点连接的会话状态,保证了客户端高效访问各个 OBServer 节点。 |
| 最佳路由 | 数据库代理充分考虑用户请求涉及的副本位置、用户配置的读写分离路由策略、OceanBase 多地部署的最优链路,以及 OceanBase 各机器的状态及负载情况,将用户的请求路由到最佳的 OBServer 节点,最大程度地保证了 OceanBase 整体的高性能运转。 |
| 高性能转发 | 数据库代理完整兼容 MySQL 协议,并支持 OceanBase 自研协议,采用多线程异步框架和透明流式转发的设计,保证了数据的高性能转发,同时确保了自身对机器资源的最小消耗。 |
| 易运维 | 数据库代理本身无状态,支持无限水平扩展,支持同时访问多个 OceanBase 集群。您可通 OB Cloud 控制台对数据库代理状态进行实时监控,这使得运维简单便利。 |
| 高可用 | 数据库代理高可用分为两部分:一方面保证自身高可用,持续提供代理服务;另一方面数据库代理是 OceanBase 高可用体系的主要组成部分,可以对用户屏蔽宕机、升级等情况,保证 OB Cloud 云数据库服务的稳定和快速恢复。 |
| 专有协议 | 数据库代理与 OBServer 节点默认采用了 OceanBase 专有协议,如增加报文的 CRC 校验保证与 OBServer 节点链路的正确性,增强传输协议以支持 Oracle 兼容性的数据类型和交互模型。 |
代理类型介绍
OB Cloud 云数据库提供两种规格类型的代理服务:共享规格和独享规格。
共享规格:数据库代理服务实例与其他客户共享计算资源,根据客户实际实例大小固定分配相关的数据库代理实例规格,适用于流量较为固定且平均的业务。
独享规格:数据库代理服务实例单独占用计算资源,客户可以根据实际业务诉求随时扩容数据库代理资源规格,适用于较大访问流量的业务。独享规格代理服务开启后,系统依据您所使用的资源量按小时进行计费。
两种规格类型的功能和差异具体如下:
| 对比项 | 共享规格 | 独享规格 |
|---|---|---|
| 计费类型 | 免费 | 按量计费 |
| 资源类型 | 共享CPU物理资源 | 独占CPU物理资源,具备更稳定的性能。 |
| 部署架构 | 高可用集群部署架构,保证故障平滑转移。 | 高可用集群部署架构,保证故障平滑转移。 |
| 实例规格 | 支持配置为 2C ~ 8C | 支持配置为 2C ~ 64C |
| 读写分离 | 支持 | 支持 |
| 事务拆分 | 支持 | 支持 |
| 连接保持 | 支持 | 支持 |
| 变配业务无感 | 支持。变配时,代理会自动切换到新规格节点。 | 支持。变配时,代理会自动切换到新规格节点。 |
| SSL 加密 | 支持 | 支持 |
Serverless 数据库代理集群
说明
- Serverless 数据库代理集群功能目前处于公测状态,为白名单功能,如需使用请联系 OceanBase 技术支持。当前仅支持 AWS 渠道,后续会在其余云上陆续支持。
- 当前支持共享规格、独享规格通过变更配置按钮切换到 Serverless 规格,Serverless 规格切换到独享、共享规格暂时不支持。
什么是 Serverless 数据库代理集群
ODP Serverless 是 OceanBase 数据库代理的 Serverless 版本。它根据业务流量的实际负载,自动调整 ODP 的计算资源,全程无需您手动规划集群规格。ODP Serverless 适用于负载波动较大、难以提前预估流量峰谷的业务场景,例如电商平台大促、SaaS 多租户业务、定时报表任务等。
与 Serverless 数据库代理集群不同,共享规格和独享规格的数据库代理需要您手动设置代理集群的规格,当出现资源瓶颈或冗余时再手动扩容或缩容代理集群,适用于负载趋势较为平稳、或希望固定一部分代理集群计算资源的业务场景。
除弹性伸缩能力外,Serverless 数据库代理集群在容灾性、连接数限制等其余属性上与非 Serverless 代理集群并无区别。
Serverless 数据库代理集群费用介绍
ODP Serverless 当前处于免费阶段。开通 ODP Serverless 后,您不需要为 ODP Serverless 的弹性计算能力以及代理集群规格支付任何额外费用。需注意的是,虽然 ODP Serverless 本身免费,但是在 AWS 上您仍需为私网请求支付跨可用区流量费。
Serverless 数据库代理集群弹性伸缩原理
ODP Serverless 结合突发负载检测和垂直弹性资源推荐机制,持续评估代理集群的资源需求。当系统在多个连续检测周期内判断当前规格无法满足业务负载时,将自动触发弹升,逐步提升代理集群的 CPU 和内存规格。每次调整后,系统都会重新评估资源压力;如果当前规格仍然不足,则继续弹升,直到代理集群恢复到合理、稳定的运行水位。
代理集群初始规格(Base Capacity)
Serverless 代理集群初始创建出的集群规格。初始规格等于租户规格 × Unit 数 × 1/4。例如租户规格为 4C 2 Unit,则 Serverless 代理集群初始规格为 4C × 2/4 = 2C。
代理集群弹性上限(Max Capacity)与下限(Min Capacity)
ODP 在突发流量下允许自动扩容到的最大 CPU 规格以及在流量低谷期维持的最小 CPU 规格。弹性上限等于 OceanBase 全功能副本节点规格的 1/4。例如 16C 多机房部署 2-2-2 的 OceanBase 集群,单个 Serverless 代理集群弹性上限为 16C × 6/4 = 24C。弹性下限为 1C。
弹性扩缩容对客户端连接的影响
一般情况下,Serverless 数据库代理集群采用原地扩容的方式扩大或缩小节点规格,此时扩缩容对客户端连接无任何影响。少数情况下可能会出现非原地扩容的情况,涉及代理集群节点的新建和删除,被删除的数据库代理节点上的原有连接将会中断。针对这种扩容方式,我们会提前三天发送邮件和站内信通知您节点删除时间,您可以联系我们修改时间。建议您为客户端配置自动重试机制,以避免非原地弹升造成的连接中断问题。