如何跨Vertica集群完成连接池/分发?

时间:2012-08-30 11:34:33

标签: cluster-computing load-balancing vertica

如何跨Vertica群集连接池/分发?

我正在尝试了解如何在Vertica中处理连接!就像Oracle处理它的连接一样,它是它的监听器,或者是如何在集群内部平衡连接(为了更好地分配)。

1 个答案:

答案 0 :(得分:3)

Vertica处理连接的过程基本如下:

  • 节点接收连接,使其成为Initiator Node
  • 启动器节点生成查询执行计划并将其分发给其他节点。
  • 节点填写执行计划的任何节点特定详细信息
  • 节点执行查询
  • (忽略这里的一些东西)*
  • 节点将结果集发送回发起方节点
  • 发起方节点收集数据并进行最终聚合
  • 发起方节点将数据发送回客户端。

通过Vertica连接的推荐方法是通过负载均衡器,因此没有单个节点成为故障点。 Vertica本身不会在节点之间分配连接,它会将查询分发给其他节点。

我不熟悉Oracle或系统如何进行数据连接过程的细节;所以希望我与你正在寻找的东西相差不远。

从/ my / experience,每个节点都可以处理多个连接。尝试连接多个节点后,它将拒绝连接。这是在map功能中连接的map-reduce作业中体验到的。

*根据查询/数据/分区,可能需要在场景后面进行一些数据传输,以完成每个节点的查询。当发生这种情况时,它会减慢查询速度。