Background information
OBKV is a module provided by OceanBase Database for accessing TableAPI and HBase-compatible APIs in a more simple and efficient way. OBKV can provide multiple data modules in a single database to meet diversified data requirements in different scenarios.
OceanBase Database supports OBKV in V2.x and later and improves OBKV in V3.x and V4.x. As OceanBase Database constantly develops, OBKV (TableAPI and HBase wide-column model) serves not only Ant Group users but also open source and public cloud customers, allowing them to access OceanBase Database by using no-SQL APIs.
For more information about OBKV, see Overview.
Features
Since OceanBase Database Proxy (ODP) starts to serve OceanBase Database, it provides only SQL services and corresponding ports and supports only SQL protocol-related processing. To better serve various customers based on the OBKV capabilities of OceanBase Database, apart from existing SQL service capabilities, ODP provides a remote procedure call (RPC) service port (2885 by default) to provide proxy services for no-SQL requests. The following capabilities are provided:
RPC service port: ODP provides an RPC service port to receive and respond to all no-SQL requests from users.
Request processing: ODP can process all OBKV requests and results.
Cross-partition request processing: ODP can process cross-partition requests, such as batch processing requests and queries.
RPC request routing and forwarding: ODP routes and forwards RPC requests to reduce the business pressure on the client.
Security authentication and connection control: ODP supports allowlists and control on the number of concurrent connections.
Direct load: ODP supports direct load through OBKV extension requests.
Use the RPC service port
ODP supports both SQL and RPC service capabilities in V4.3.0 and later. When ODP is started, both SQL and RPC service ports are enabled by default to provide services. The default SQL service port is 2883, and the default RPC service port is 2885.
Configure an RPC service port
When ODP is started, you can use -s or --rpc_listen_port to specify an RPC service port, such as 3885.
Note
The ODP startup command described in this section must be executed in the installation directory of ODP.
You can run the
./bin/obproxy -hcommand to view the ODP startup parameters. For more information about the ODP startup command, see the Start ODP section in the Deploy ODP by using the CLI topic.
Start ODP by using the RootService list
[admin@test obproxy]$ ./bin/obproxy -p2883 -s 3885 -r'10.10.10.1:2881;10.10.10.2:2881' -n test -o enable_cluster_checkout=false,syslog_level=INFOThe setting in the
-roption is only for reference. You must replace it with the actual RootService list of OceanBase Database.Start ODP by using the config server
[admin@test obproxy]$ ./bin/obproxy -p2883 -s 3885 -e -n test -o obproxy_config_server_url='<YOUR_CONFIG_URL>',syslog_level=INFOYou need to replace
<YOUR_CONFIG_URL>with the actual URL of the config server.
Disable the RPC service port
You can configure the enable_obproxy_rpc_service parameter to specify whether to enable the RPC service port. The default value is true. You can set enable_obproxy_rpc_service to false to disable the RPC service port at startup. Here is an example:
Note
The ODP startup command described in this section must be executed in the installation directory of ODP.
You can run the
./bin/obproxy -hcommand to view the ODP startup parameters. For more information about the ODP startup command, see the Start ODP section in the Deploy ODP by using the CLI topic.
Start ODP by using the RootService list
[admin@test obproxy]$ ./bin/obproxy -p2883 -r'10.10.10.1:2881;10.10.10.2:2881' -n test -o enable_cluster_checkout=false,syslog_level=INFO,enable_obproxy_rpc_service=falseThe setting in the
-roption is only for reference. You must replace it with the actual RootService list of OceanBase Database.Start ODP by using the config server
[admin@test obproxy]$ ./bin/obproxy -p2883 -e -n test -o obproxy_config_server_url='<YOUR_CONFIG_URL>',syslog_level=INFO,enable_obproxy_rpc_service=falseYou need to replace
<YOUR_CONFIG_URL>with the actual URL of the config server.
References
For information about how to deploy the config server, see Deploy and use obconfigserver.
For more information about RPC-related parameters, see the Parameters related to RPC section in the Parameter summary topic.