OceanBase V4 中 ODP 如何实现读写分离?有哪些常用策略?
ODP 通过区分强一致性读 和弱一致性读 实现读写分离:写请求和强读请求默认路由至 Leader 副本,弱读请求可路由至 Follower 副本。
常用策略:
- 备优先读(FOLLOWER_FIRST) :弱读请求优先发往 Follower,无可用 Follower 时才发往 Leader。
- LDC 路由 :为 Zone 配置 Region 和 IDC 属性后,ODP 按"同机房 > 同地区 > 异地"优先级就近路由弱读请求,降低跨机房延迟。
- 权重负载均衡(WEAKREAD_WEIGHT_LOAD_BALANCE) :为各 Zone 设置权重,按比例分发弱读流量。
可通过 SQL Hint /*+ read_consistency(weak) */ 、Session 变量 @proxy_route_policy 或 ODP 全局配置项 proxy_route_policy 指定策略。