数据仓库服务 GAUSSDB(DWS)-基于GDS的跨集群互联互通:操作步骤
时间:2024-11-05 19:20:00
操作步骤
假设远端集群的待同步表名称是tbl_remote,用于数据同步的用户是user_remote,该用户须对表tbl_remote有访问权限;假设本地集群的待同步表名称是tbl_local。
- 创建server。
CREATE SERVER server_remote FOREIGN DATA WRAPPER GC_FDW OPTIONS( address '192.168.178.207:8000', dbname 'db_remote', username 'user_remote', password 'xxxxxxxx', syncsrv 'gsfs://192.168.178.129:5000|gsfs://192.168.178.129:5000' );
- server_remote为server名称,供互联互通外表使用。
- address为远端集群CN的IP地址和端口,仅允许填写一个地址。
- dbname为远端集群的数据库名。
- username为连接远端集群使用的用户名,注意该用户不能为系统管理员。
- password为连接远端集群使用的用户名的密码。
- syncsrv为GDS Server的IP地址和端口,如果有多个地址使用|分割,与GDS外表的location类似。
GaussDB (DWS)会对syncsrv所设置的GDS地址进行网络连接测试:
- 只能判断本地执行集群与GDS的网络情况,无法判断远端集群与GDS的网络情况,需要注意报错提示。
- 在移除不可用GDS后,从中选择不会导致业务hang的、数目适当的GDS进行数据同步。
- 创建互联互通外表。
CREATE FOREIGN TABLE ft_tbl( col_1 type_name, col_2 type_name, … ) SERVER server_remote OPTIONS ( schema_name 'schema_remote', table_name 'tbl_remote', encoding 'utf8' );
- schema_name为远端集群表所属schema,如果该option缺省,则schema_name预设为该外表所在的schema。
- table_name为远端集群表名,如果该option缺省,则table_name预设为该外表的表名。
- encoding为远端集群的编码,如果该option缺省,则编码使用本地集群数据库的默认编码。
- 选项schema_name、table_name大小写敏感,必须与远端schema、table的名字大小写保持一致。
- 互联互通外表的列不允许带任何约束。
- 互联互通外表的列名、列类型必须与远端集群的表tbl_remote的列名和列类型完全一致。
- SERVER须设置为步骤1中新建的server,必须包含syncsrv属性。
- 使用互联互通外表进行数据同步。
- 本地集群是目标集群时,发起数据同步业务:
1
INSERT INTO tbl_local SELECT * FROM ft_tbl;
全列过滤条件数据同步:
1
INSERT INTO tbl_local SELECT * FROM ft_tbl WHERE col_2 = XX;
部分列全量数据同步:
1
INSERT INTO tbl_local (col_1) SELECT col_1 FROM ft_tbl;
部分列过滤条件数据同步:
1
INSERT INTO tbl_local (col_1) SELECT col_1 FROM ft_tbl WHERE col_2 = XX;
- 本地集群是源集群时,发起数据同步业务:
1
INSERT INTO ft_tbl SELECT * FROM tbl_local;
join结果集数据同步:
1
INSERT INTO ft_tbl SELECT * FROM tbl_local1 join tbl_local2 ON XXX;
- 如遇到报错连接失败,请检查server的信息确认两个集群是否已经相互连通。
- 如遇到报错GDS连接失败,请检查syncsrv指定的GDS Server是否都已经启动,且与两个集群所有节点可以网络连通。
- 如遇到报错表不存在,请检查外表的option信息是否正确。
- 如遇到报错列不存在,请检查外表的列名是否与源表一致。
- 如遇到报错列重复定义,请检查是否相应列名超长,若超长建议使用AS别名精简。
- 如遇到报错无法解析列类型,请检查语句中是否有列上表达式。
- 如遇到报错列信息不匹配,请检查外表的列信息是否与远端集群对应表的列信息是否一致。
- 如遇到报错语法不支持,请检查是否使用了Join、distinct、排序等复杂用法。
- 如遇到乱码,请检查两端数据库的实际编码是否一致。
- 当本地集群是源集群时,存在极小的概率出现数据成功同步到远端集群,但是本地集群返回执行失败的情况,针对这种情况建议校验同步数据记录数。
- 当本地集群是源集群时,通过事务块、子事务等控制的数据同步,需要总事务提交后才能查询到数据同步结果。
- 本地集群是目标集群时,发起数据同步业务:
- 删除互联互通外表。
DROP FOREIGN TABLE ft_tbl;
support.huaweicloud.com/migration-dws/dws_15_0041.html
看了此文的人还看了
CDN加速
GaussDB
文字转换成语音
免费的服务器
如何创建网站
域名网站购买
私有云桌面
云主机哪个好
域名怎么备案
手机云电脑
SSL证书申请
云点播服务器
免费OCR是什么
电脑云桌面
域名备案怎么弄
语音转文字
文字图片识别
云桌面是什么
网址安全检测
网站建设搭建
国外CDN加速
SSL免费证书申请
短信批量发送
图片OCR识别
云数据库MySQL
个人域名购买
录音转文字
扫描图片识别文字
OCR图片识别
行驶证识别
虚拟电话号码
电话呼叫中心软件
怎么制作一个网站
Email注册网站
华为VNC
图像文字识别
企业网站制作
个人网站搭建
华为云计算
免费租用云托管
云桌面云服务器
ocr文字识别免费版
HTTPS证书申请
图片文字识别转换
国外域名注册商
使用免费虚拟主机
云电脑主机多少钱
鲲鹏云手机
短信验证码平台
OCR图片文字识别
SSL证书是什么
申请企业邮箱步骤
免费的企业用邮箱
云免流搭建教程
域名价格
推荐文章
- 数据仓库服务GaussDB(DWS)_SQL on Anywhere
- GAUSS(DWS)工具_gsql工具_DataStudio工具_DSC工具
- DWS产品介绍_DWS产品优势_DWS功能_DWS使用场景_DWS是什么
- DWS安全_数据仓库服务安全_DWS数据安全管理_DWS安全保障_DWS安全策略
- 调用GaussDB(DWS) API接口_数据仓库服务调用API_如何调用API_在DWS中调用API
- GaussDB集群_GaussDB数据库集群_高斯数据库集群_华为云
- DWS资源管理_GaussDB(DWS)资源管理作用_DWS资源管控
- GaussDB(DWS)常用SQL_常用SQL命令_SQL语法
- 数据库监控DMS_数据库智能运维_了解Auto Pilot_DMS_DWS节点监控
- GaussDB(DWS)服务_什么是IoT数仓_如何使用IoT数仓