当前位置: 首页 > 网络应用技术

FusionInsightSpark支持多示例功能JDBCServer的介绍

时间:2023-03-08 19:57:18 网络应用技术

  摘要:采用多层实例模式的HA解决方案不仅可以避免中断主开关服务中断,实现服务不中断或减少中断的问题,而且还通过水平扩展集群提高了并发能力。

  基于社区中现有的JDBCServer,其高度可用的方案是由Multi -Master示例模式实现的。该集群同时支持多个JDBCServer服务,并且可以通过客户端随机连接到任何服务以进行业务运营。即使群集停止工作中的一个或多个JDBCSERVER服务,也不会影响用户通过同一客户端接口连接其他正常的JDBCServer服务。

  与主模式的HA方案相比,多主示例模式主要反映在以下两种情况下的改进中。

  多主机实例模式下的HA方案不仅可以避免中断主开关服务中断,实现非中断或更少的服务中断的问题,而且还通过水平扩展群体提高了并发容量。

  多层实例模式的HA方案的原理如下图所示。

  1. jdbcserver启动时将其自己的消息注册给Zookeeper,在指定的目录中写入一个节点,并且该节点包含与IP,端口,版本号和序列号相对应的信息,与该实例相对应信息)本质

  示例如下:

  2.当客户端连接JDBCServer时,您需要指定名称空间,也就是说,在Zookeeper的目录下访问JDBCServer实例。当连接时,您将在名称空间下随机选择一个实例连接,并详细查看URL连接介绍。

  3.客户端成功连接JDBCServer服务后,将SQL语句发送到JDBCServer服务。

  4. JDBCServer服务执行客户端发送的SQL语句后,将结果返回给客户端。

  在HA解决方案中,每个JDBCServer服务(即实例)都是独立且等效的。当其中一个实例升级或业务中断时,其他实例也可以接受客户连接请求。

  多策略实例方案遵循以下规则:

  多主示例模式

  多主机实例模式的客户端读取Zookeeper节点中的内容以连接相应的JDBCServer服务。连接字符串是:

  Kinit认证方法下的JDBCURL如下所示:

  阐明:

  例如:“ 192.168.81.37:24002,192.168.195.232:24002,192.168.169.84:24002”。

  示例:在安全模式下通过Beeline客户端连接时执行以下命令:

  在用户使用的Kerberos用户的主任,例如“ Test@<系统域名>“”。表达相应的键盘文件路径,例如“/opt/auth/test/user.keytab”。

  在正常模式下:

  示例:在正常模式下通过Beeline客户端连接时执行以下命令:

  非主教示例模式

  非高级 - 马斯特示例模式的客户端连接到具有多主机实例模式的指定JDBCServer node.com,此模式的连接字符串删除了Zookeeper的参数“ ServiceScoveryMode”和“ ZookeEpernamespace”。

  示例:通过BELINE客户端连接非数量 - 策略实例模式时,执行以下命令:

  阐明

  与非高级 - 校长示例模式的JDBCServer接口相比,多主实例模式是相同的。由于Spark JDBCServer是Hive中Hiveser2的另一个实现,请参阅官方网站:https:https://cwiki.apache.org/confloence/display/hiveserver2+客户端。

  本文分享了真诚的Yunyun社区,作者:核桃。