Gauss DB(DWS)实践系列 DWS与OBS数据互导
【摘要】 DWS中数据导出到OBS;读取OBS中数据;OBS中数据导入到DWS。
一、从OBS上读数据并导入DWS
- 进入OBS控制台,新建桶dws-test20210316及对象testobs1。
- 上传txt数据文件到obs上。
- 连接DWS集群建立内表table1,以及obs外表table1_inobs_ft。
CREATE FOREIGN TABLE table1_inobs_ft(like table1) SERVER gsmpp_server OPTIONS( LOCATION 'obs://dws-test20210316/testobs1/text1.txt', FORMAT 'text' , DELIMITER ',', ENCODING 'utf8', HEADER 'false', ACCESS_KEY 'U76V66', SECRET_ACCESS_KEY 'qCJyo9B', FILL_MISSING_FIELDS 'true', IGNORE_EXTRA_DATA 'true' ) READ ONLY LOG INTO product_info_err PER NODE REJECT LIMIT 'unlimited';
注意:ACCESS_KEY,SECRET_ACCESS_KEY 是在“我的凭证”—“访问密钥”中下载。首次申请密钥后会提示下载。
- 读取obs数据
Select * from table1_inobs_ft; - 导入OBS数据到DWS
insert into table1 select * from table1_inobs_ft;
二、DWS导出数据到OBS
- 在桶dws-test20210316中新建对象output1,设置可读写。
- 创建table1的obs导出外表
CREATE FOREIGN TABLE table1_outobs_ft (like table1) SERVER gsmpp_server OPTIONS(LOCATION 'obs://dws-test20210316/output1/', FORMAT 'text', ENCODING 'utf8', DELIMITER ',', ENCRYPT 'off', ACCESS_KEY 'U7DGJ6V66', SECRET_ACCESS_KEY 'qC9B' ) WRITE ONLY;
- 导出数据到obs
insert into table1_outobs_ft select * from table1; - 建立外表读取上步骤导出的数据(LOCATION 中table1_outobs_ft表示所有以table1_outobs_ft开头的文件)
select * from table1_selobs_ft;CREATE FOREIGN TABLE table1_selobs_ft (like table1) SERVER gsmpp_server OPTIONS( LOCATION 'obs://dws-test20210316/output1/table1_outobs_ft', FORMAT 'text' , DELIMITER ',', ENCODING 'utf8', HEADER 'false', ACCESS_KEY 'U7D66', SECRET_ACCESS_KEY 'qCJycqn0wo9B', FILL_MISSING_FIELDS 'true', IGNORE_EXTRA_DATA 'true' ) READ ONLY ;
【版权声明】本文为华为云社区用户原创内容,转载时必须标注文章的来源(华为云社区)、文章链接、文章作者等基本信息, 否则作者和本社区有权追究责任。如果您发现本社区中有涉嫌抄袭的内容,欢迎发送邮件进行举报,并提供相关证据,一经查实,本社区将立刻删除涉嫌侵权内容,举报邮箱:
cloudbbs@huaweicloud.com
- 点赞
- 收藏
- 关注作者
评论(0)