GBase 8a MPP数据库集群支持将多种数据源加载到数据库的功能,本篇简单介绍加载FTP、SFTP和HTTP数据源的语法。
加载语法
LOAD DATA INFILE ‘file_list’ INTO TABLE [db_name.]table_name [options];
- file_list:待加载文件列表,或待加载数据文件所在的目录。支持URL的方式指定数据文件路径,以逗号(,)作为多个文件/目录的分隔符。同时文件名、目录部分均支持使用通配符,本篇不作详细介绍。
- db_name:数据库名。
- table_name:表名。
- options:可选加载参数,本篇不作详细介绍。
使用示例
-
文本方式加载FTP服务器文件
以文本方式加载位于FTP服务器上的a.tbl文件,使用默认行分隔符和默认列分隔符。
LOAD DATA INFILE ‘ftp://127.0.0.1/data/a.tbl’ INTO TABLE test.t DATA_FORMAT 3; -
文本方式加载FTP服务器压缩文件
以文本方式加载位于FTP服务器上的test.tbl.lzo压缩文件,使用默认行分隔符和默认列分隔符。
LOAD DATA INFILE ‘ftp://127.0.0.1/data/test.tbl.lzo’ INTO TABLE test.t DATA_FORMAT 3; -
指定用户名和密码加载FTP服务器文件
以文本方式加载位于FTP服务器上的a.tbl文件,使用默认行分隔符和默认列分隔符,用ftp://user:password@host/path方式指定FTP服务器的用户名和密码。
LOAD DATA INFILE ‘ftp://gbase:gbase@127.0.0.1/data/a.tbl’ INTO TABLE test.t DATA_FORMAT 3; -
文本方式加载SFTP服务器文件
以文本方式加载位于SFTP服务器上的a.tbl文件,使用默认行分隔符和默认列分隔符,用sftp://user:password@host/path方式指定SFTP服务器的用户名和密码。
LOAD DATA INFILE ‘sftp://gbase:gbase@127.0.0.1/data/a.tbl’ INTO TABLE test.t DATA_FORMAT 3; -
文本方式加载HTTP服务器压缩文件
以文本方式加载位于HTTP服务器上的b.tbl.gz压缩文件,使用默认行分隔符和默认列分隔符。
LOAD DATA INFILE ‘ftp://127.0.0.1/data/b.tbl.gz’ INTO TABLE test.t DATA_FORMAT 3; -
指定用户名和密码加载HTTP服务器文件
以文本方式加载位于HTTP服务器上的a.tbl文件,使用默认行分隔符和默列分隔符,用http://user:password@host/path方式指定HTTP服务器的用户名和密码。
LOAD DATA INFILE ‘http://gbase:gbase@127.0.0.1/data/a.tbl’ INTO TABLE test.t DATA_FORMAT 3; -
多数据文件加载
指定多个数据源文件,文件可以不在同一个文件服务器,逗号分隔。
LOAD DATA INFILE ‘ftp://192.168.0.1/pub/lineitem.tbl,
http://192.168.0.2/lineitem.tbl’ INTO TABLE test.lineitem FIELDS TERMINATED BY ‘|’ ENCLOSED BY ‘"’ LINES TERMINATED BY ‘\n’;




