OceanBase Database Proxy (ODP) is the proxy server dedicated for OceanBase Database. In OceanBase Database, replicas of user data are stored on multiple OBServers. When an SQL statement is received from the user, ODP forwards it to the optimal OBServer, and returns the execution result to the user.
Feature
As a key component of OceanBase Database, ODP has the following features:
High-performance forwarding
ODP is fully compatible with the MySQL protocol and supports the proprietary protocol of OceanBase. It adopts the multi-threaded asynchronous framework and transparent streaming forwarding to ensure high-performance data forwarding. In addition, it consumes minimal cluster resources.
Optimal routing
ODP fully considers the location of the replica involved in the user request, read/write split routing policy configured by the user, optimal procedure for multi-region deployment of OceanBase, and the status and load of each OceanBase server. It routes the user requests to the optimal OBServer, and ensures the high-performance operation of OceanBase.
Connection management
For the physical connections of a client, ODP maintains its connections to multiple OBServers at the backend. It also adopts the incremental synchronization solution based on version numbers to maintain the session status of each OBServer connection. This ensures efficient client access to each OBServer.
Proprietary protocol
ODP and OBServer use the proprietary protocol of OceanBase by default. For example, ODP adds Cyclic Redundancy Check (CRC) to messages to ensure the correctness of the OBServer connections. ODP also enhances the transmission protocol to support the Oracle-compatible data types and interaction models.
Easy O&M
ODP is stateless and supports unlimited horizontal scale-out. It allows you to access multiple OceanBase clusters at the same time. You can perform real-time monitoring of ODP status through various internal commands, which greatly facilitates O&M.
License
ODP Community is fully open-source under the MulanPubL - 2.0license. You can copy and use the source code for free. Follow the requirements outlined in the Mulan license when you modify or distribute the source code.