---
title: "数据链路概述 - OceanBase 数据库 V4.2.3 | OceanBase 文档中心"
description: 数据链路概述 OceanBase 数据链路提供了从客户端到数据库端的最佳数据访问能力，对用户屏蔽 OceanBase 分布式数据库的感知，提供分布式数据库的可扩展、高性能和高可用的服务能力。数据链路包含两个部分：数据库代理和数据库驱动。 数据库代理 OceanBase 数据库代理 ODP（OceanBase Data…
---
切换语言

- 中文站 - 简体中文
- International - English
- 日本站 - 日本語

文档反馈![](https://mdn.alipayobjects.com/huamei_22khvb/afts/img/A*P8CuR4UJ_FkAAAAAAAAAAAAADiGDAQ/original) OceanBase 数据库分布式版 - V 4.2.3

# 数据链路概述

更新时间：2024-09-06 17:21:31

[编辑](https://github.com/oceanbase/oceanbase-doc/edit/V4.2.3/zh-CN/700.reference/100.oceanbase-database-concepts/600.data-link/100.data-link-overview.md)  

OceanBase 数据链路提供了从客户端到数据库端的最佳数据访问能力，对用户屏蔽 OceanBase 分布式数据库的感知，提供分布式数据库的可扩展、高性能和高可用的服务能力。数据链路包含两个部分：数据库代理和数据库驱动。

## 数据库代理

OceanBase 数据库代理 ODP（OceanBase Database Proxy，又称 obproxy）是 OceanBase 专用的代理服务。 OceanBase 数据库中的数据会以多副本的形式存放在各个 OBServer 节点上，ODP 则负责接收用户的 SQL 请求，结合请求中涉及数据的分布，将用户 SQL 请求转发到最佳的 OBServer 节点上，在 OBServer 节点上执行完成后接受结果并将执行结果返回给用户。

作为 OceanBase 数据库的关键组件，ODP 具有以下特性：

- **高性能转发**

  ODP 完整兼容 MySQL 协议，并支持 OceanBase 自研协议，采用多线程异步框架和透明流式转发的设计，保证了数据的高性能转发，同时确保了自身对机器资源的最小消耗。
 - **最佳路由**

  ODP 会充分考虑用户请求涉及的副本位置、用户配置的读写分离路由策略、OceanBase 多地部署的最优链路，以及 OceanBase 各机器的状态及负载情况，将用户的请求路由到最佳的 OBServer，最大程度的保证了 OceanBase 整体的高性能运转。
 - **连接管理**

  针对一个客户端的物理连接，ODP 维持自身到后端多个 OBServer 节点的连接，采用基于版本号的增量同步方案维持了每个 OBServer 节点连接的会话状态，保证了客户端高效访问各个 OBServer。
 - **专有协议**

  ODP 与 OBServer 节点默认采用了 OceanBase 专有协议，如：增加报文的 CRC 校验来保证 OBServer 节点链路的正确性，增强传输协议以支持 Oracle 兼容需要的数据类型和交互模型。
 - **易运维**

  ODP 本身无状态，支持无限水平扩展，支持同时访问多个 OceanBase 集群。可以通过丰富的内部命令实现对自身状态的实时监控，提供极大的运维便利性。

有关数据库代理的详细内容，请参见 [数据库](https://www.oceanbase.com/docs/common-oceanbase-database-cn-1000000000749998) [代理](https://www.oceanbase.com/docs/common-oceanbase-database-cn-1000000000749998)。

## 数据库驱动

数据库驱动程序由数据库厂商或者其他一些专门开发数据库驱动程序的厂商提供，它们提供给外部应用程序一个访问该数据库的接口。OceanBase 数据库目前提供了 MySQL 模式数据库（兼容 MySQL ）和 Oracle 模式数据库（兼容 Oracle ）。在 OceanBase MySQL 模式下，用户可以直接使用 MySQL 官方提供的 Connector 来使用 OceanBase 数据库。在 OceanBase Oracle 模式下，需要使用 OceanBase 自研的数据库驱动。OceanBase 数据库驱动同时支持 OceanBase 的 MySQL 和 Oracle 两种模式，在使用时可以自动识别 OceanBase 的运行模式是 MySQL 还是 Oracle，无需额外设置。

#### 功能适用性

OceanBase 数据库社区版仅提供了 MySQL 模式。

OceanBase 数据库支持各类语言的数据库驱动，主要有如下产品：

- **OBCI**

  兼容 OCI 接口，支持 OceanBase Oracle 模式的 C 语言驱动。

  有关 OBCI 的详细介绍，请参见 [OBCI](https://www.oceanbase.com/docs/common-oceanbase-database-cn-1000000000750003)。
 - **OceanBase Connector/C**

  兼容 ODBC 接口，支持 OceanBase MySQL 和 OceanBase Oracle 模式的 C 语言驱动。

  有关 OceanBase Connector/C 的详细介绍，请参见 [OceanBase Connector/C](https://www.oceanbase.com/docs/common-oceanbase-database-cn-1000000000750005)。
 - **OceanBase Connector/J**

  兼容 JDBC 接口，支持 OceanBase MySQL 和 OceanBase Oracle 模式的 Java 语言驱动。

  有关 OceanBase Connector/J 的详细介绍，请参见 [OceanBase Connector/J](https://www.oceanbase.com/docs/common-oceanbase-database-cn-1000000000750004)。

有关数据库驱动的详细内容，请参见 [数据库驱动](https://www.oceanbase.com/docs/common-oceanbase-database-cn-1000000000750002)。

 上一篇 下一篇 ![有帮助](https://gw.alipayobjects.com/mdn/ob_asset/afts/img/A*y6ocSqN8cqsAAAAAAAAAAAAAARQnAQ)![无帮助](https://gw.alipayobjects.com/mdn/ob_asset/afts/img/A*BG9IQJyLHF8AAAAAAAAAAAAAARQnAQ)![反馈](https://gw.alipayobjects.com/mdn/ob_asset/afts/img/A*eTWdQKCRKHwAAAAAAAAAAAAAARQnAQ)[AI](https://www.oceanbase.com/obi) 咨询热线
