笑笑
华为云数仓技术专家
读完需要
速读仅需 3 分钟
数据量大,数据存储在多个服务器上时,在每个数据服务器上安装配置、启动GDS后,各服务器上的数据可以并行入库。

CREATE TABLE tpcds_reasons
(
r_reason_sk integer not null,
r_reason_id char(16) not null,
r_reason_desc char(100)
);

#外表中配置了数据源格式信息、GDS服务的访问信息,从而GaussDB(DWS)最终可以通过外表将数据服务器上的数据引流进数据库实表中。
DROP TABLE IF EXISTS foreign_tpcds_reasons;
CREATE FOREIGN TABLE foreign_tpcds_reasons
(
r_reason_sk integer not null,
r_reason_id char(16) not null,
r_reason_desc char(100)
)
SERVER gsmpp_server
OPTIONS
(
LOCATION 'gsfs://127.0.0.1:8780/*',
FORMAT 'CSV' ,
DELIMITER ',',
ENCODING 'utf8',
HEADER 'false',
FILL_MISSING_FIELDS 'true',
IGNORE_EXTRA_DATA 'true'
);
创建成功后可以使用alter
修改表的属性,示例如下:
alter foreign table foreign_tpcds_reasons options(set quote '"');

gds -d dir -p ip:port -H address_string -l log_file -D
注意端口号与外表端口号一致,示例如下:
gds -d /input_data/ -D -p 127.0.0.1:8780 -l /CodeHub/gds_log.txt -H 0/0 -t 10 -D

INSERT INTO [目标表名] SELECT * FROM [foreign table 表名];
出现INSERT 0 3
类信息表示数据导入成功,示例如下:
INSERT INTO tpcds_reasons SELECT * FROM foreign_tpcds_reasons;

设置\set VERBOSITY verbose
可看到导入失败的更多信息,包括gauss-00000类型错误码,SQLSTATE,以及HINT等信息。
导入数据类型需与外表的各个参数做对应,比如:FORMAT为csv文件,以空格做字段分割,在外表创建时,DELIMITER需以空格为分割符
本文为使用GDS导入示例的具体简单步骤和示例,如需详细介绍及参数说说明,请点击文末阅读原文,参考GaussDB(DWS)产品文档。
获奖的小伙伴记得填写问卷调查,反馈礼品邮寄地址哦。
截止反馈时间:9月30日24点,礼品邮寄时间:15个工作日内完成邮寄。


戳阅读原文,直达产品文档
文章转载自GaussDB DWS,如果涉嫌侵权,请发送邮件至:contact@modb.pro进行举报,并提供相关证据,一经查实,墨天轮将立刻删除相关内容。





