Oceanbase的odbc驱动是如何实现负载均衡的?

【 使用版本 】ODBC2.0.8
【问题描述】Oceanbase的odbc驱动是如何实现负载均衡的?是通过配置多observer的方式还是通过其他方式?

1 个赞

你好,你提的这个技术问题牵涉到OceanBase企业版范围内的功能细节;针对此类问题,建议你通过以下方式寻求帮助:

  1. 如你所在的企业客户已签署OceanBase企业版销售合同,请你联系客户经理;

  2. 如你所在的企业客户尚未签署OceanBase企业版销售合同,你可通过OceanBase官网商务咨询页面留下你的联系方式,OceanBase企业版的业务顾问会在一个工作日内与你联系。

另外,我们欢迎你使用社区版,并在论坛/社群中分享你对社区版本的想法、经验和问题,与其他社区成员共同交流。

OB 的负载均衡取决于连接时的 IP 是什么。
如果连接的 IP 是 负载均衡设备F5或A10、软负载产品(LVS/SLB)等提供的 VIP,这些负载均衡产品会提供路由的负载均衡。通常后端IP 是多个 OBProxy 的 IP。
如果连接的 IP 是 OBProxy,OBProxy 是 OB 访问的反向代理,本身无集群能力,也没有负载均衡的作用。它路由 SQL是根据 SQL内容按照一定策略转发的,跟负载均衡设备不同,OBProxy的绝大部分转发并不是随机转发(少数特殊的SQL是随机,因为不被所有转发策略命中,就剩下随机了)。

上面说的只是路由上的特性,真正决定 OB 集群各个节点负载均衡的是业务数据主副本的分布。这个是由集群的节点数、租户的分布特点、租户的PRIMARY_ZONE、数据库和表的 PRIMARY_ZONE(4.x 之前可以覆盖租户级别的设置,4.x 后有了 日志流后 取消了库表的PRIMARY_ZONE 功能)、集群节点负载和租户负载等共同决定的。

所以 OB 的负载均衡跟 ODBC 驱动没什么关系。
即使是 JDBC 驱动,连接的也是 OB 的 F5的 VIP 或者 OBProxy IP,通常也不建议用 JDBC 配置连接多个 IP。

你好,我还是想问一下,我查看JDBC驱动程序文档,里面是有介绍负载均衡的相关配置和功能的,我想请问V2.0.8的ODBC是否有跟JDBC类似的有负载均衡配置和功能

驱动的负载均衡功能就是 鸡肋 ,不用去想它。 OB 不需要它。

原理如下:

主要是我想测试V2.0.8的ODBC的负载均衡的功能,想知道它这个版本是否有这个功能:joy: