标签:200 HDFS GaussDB FusionInsight server 集群 HD
当需要从Hive等Hadoop集群迁移数据到GaussDB 200集群时,因为数据量太大,可能无法导出到本地。此时需要GaussDB 200跨集群读取HDFS上的数据,并写入GaussDB 200集群。
目前GaussDB 200只支持跨集群访问FusionInsight HD中的HDFS。
前提条件
- FusionInsight HD和GaussDB 200两个集群状态正常并且可以互相通信。
- 远端FusionInsight HD集群被访问的表为ORC格式。
- 远端FusionInsight HD集群HDFS服务配置选项“hadoop.rpc.protection”值为“authentication”。
- 远端FusionInsight HD集群存在具有访问集群HDFS数据目录权限的用户。
- 远端FusionInsight HD集群已安装了客户端。
操作步骤
1、创建配置文件
登录FusionInsight Manager>选择“集群 > 待操作的集群名称 > 服务 > MPPDB > 对接 > 对接HDFS”,单击“创建”,填写配置组名称,单击“确定”。如下图所示:
各个参数的说明如下图所示:
保存完成后,mppdb概览里会显示配置状态为过期配置,立即重启mppdb服务即可。另外,上传的文件位置位于${BIGDATA_HOME}/mppdb/hdfs_conf下面。2、创建HDFS外表SERVER
使用omm用户,登录数据库执行下面的操作创建外表server。
[omm@hd01 ~]$ source ${BIGDATA_HOME}/mppdb/.mppdbgs_profile [omm@hd01 ~]$ gsql -d rhnschema -p 25308 -r rhnschema=# create server server_test foreign data wrapper hdfs_fdw options(address '192.168.110.35:25000,192.168.110.36:25000',hdfscfgpath '/opt/huawei/Bigdata/mppdb/hdfs_conf/FHD/candon@HADOOP.COM',type 'HDFS'); CREATE SERVER
可以使用下面的SQL查询已创建的server信息:rhnschema=# select *from pg_foreign_server where srvname='server_test';
3、创建HDFS外表
rhnschema=# create foreign table f_a (id int,name text) server server_test options(format 'orc',foldername '/user/hive/warehouse/hivedb.db/a') distribute by roundrobin;
CREATE FOREIGN TABLE
创建外表的语法如下图所示:
4、验证
rhnschema=# select *from f_a;
标签:200,HDFS,GaussDB,FusionInsight,server,集群,HD 来源: https://blog.51cto.com/candon123/2458043
本站声明: 1. iCode9 技术分享网(下文简称本站)提供的所有内容,仅供技术学习、探讨和分享; 2. 关于本站的所有留言、评论、转载及引用,纯属内容发起人的个人观点,与本站观点和立场无关; 3. 关于本站的所有言论和文字,纯属内容发起人的个人观点,与本站观点和立场无关; 4. 本站文章均是网友提供,不完全保证技术分享内容的完整性、准确性、时效性、风险性和版权归属;如您发现该文章侵犯了您的权益,可联系我们第一时间进行删除; 5. 本站为非盈利性的个人网站,所有内容不会用来进行牟利,也不会利用任何形式的广告来间接获益,纯粹是为了广大技术爱好者提供技术内容和技术思想的分享性交流网站。