“G”术时刻:GBase 8a数据库集群透明网关与DBLINK-使用介绍及工作原理

69 阅读3分钟

GBase 8a集群透明网关服务是一个独立运行的进程。它的主要作用是获取并处理DBLINK的请求信息,在GBase 8a集群里直接访问其它GBase 8a数据库或者其他异构数据源,将数据抽取到GBase 8a集群中,或将GBase 8a集群内的数据推送到其他集群。

DBLINK是GBase 8a集群内部提供的远程数据库连接功能,通过与透明网关服务的协同工作,实现对远程数据库的查询以及远程数据与本地数据的关联运算等。

GBase8a集群透明网关与DBLINK使用介绍

GBase 8a集群透明网关服务是一个独立运行的进程。它的主要作用是获取并处理DBLINK的请求信息,在GBase 8a集群里直接访问其它GBase8a数据库或者其他异构数据源,将数据抽取到GBase 8a集群中,或将GBase 8a集群内的数据推送到其他集群。

DBLINK是GBase 8a集群内部提供的远程数据库连接功能,通过与透明网关服务的协同工作,实现对远程数据库的查询以及远程数据与本地数据的关联运算等。

透明网关工作原理

同构数据源

目标端集群与源端集群为相同版本的GBase 8a集群,两个集群之间的数据互通采用DBlink。

image.png

工作原理简述:

1、目标端集群将数据请求由gcluster的5258端口发送至dblink的9898端口

2、Dblink将请求由9898端口转发至源端集群的5258端口

3、源端数据库将接收的请求生成执行计划,由gcluster的5258端口下发至各gnode的5050端口

4、源端的5050端口接收到执行计划进行查询,并将返回结果与目标端集群的gnode的5050端口直接通讯。

5、目标端Gnode将查询结果汇总到gcluster层。

开放端口:

Dblink :9898端口

源端与目标端的5258要与dblink的9898可以互相访问

需要保证源端集群的gnode节点与目标端集群的gnode节点的5050都可以互相访问,即让步骤4可以顺利进行节点间的数据交换。

异构数据源

GBase 8a与异构数据源Oracle通过DBlink进行数据交互的示意图:

image.png 工作原理简述:

1、目标端集群将数据请求由gcluster的5258端口发送至dblink的9898端口

2、Dblink将请求由9898端口转发至源端集群的1521端口

3、源端数据库处理请求,并将执行结果发送至dblink的9898端口

4、Dblink将源端数据库返回的结果发送至目标集群的随机的一个gnode节点

5、目标端Gnode将查询结果返回至gcluster中。

开放端口:

Dblink :9898端口

源端与目标端的5258要与dblink的9898可以互相访问

需要保证目标端集群的所有gnode节点的5050端口与DBlink的9898端口相互访问,目的是让步骤4DBlink的查询结果可以顺利返回至目标集群的随机的一个gnode节点上。