在加载文件名中使用通配符,可以指定同一目录下的多个文件。在一条加载语句中可以指定多个包含通配符的文件名。
目前支持在文件名中使用*,*.tbl 样式的通配符,在 FTP/HTTP/HDFS/SFTP 协议中均可使用通配符。同时在加载路径中也可以使用通配符,目前支持在路径中使用*、?、[]样式的通配符,在对路径进行通配时,需要用户对目录拥有可执行权限。
支持通配符方式加载的 FTP 服务器,需要其支持 LIST 命令。已测试 vsftpd 和 IISFTP 均满足此要求。
支持通配符方式加载的 SFTP 服务器,已测试 sshd 满足此要求。
支持通配符方式加载的 HTTP 服务器,需要其响应目录请求。由于不同的 HTTP服务器对目录请求的响应不同,可能有些 HTTP 服务器不支持以通配符方式加载数据文件。已测试 Apache HTTP 和 IIS HTTP 均满足此要求。
示例
gbase> LOAD DATA INFILE 'ftp://192.168.10.114/data/*' INTO TABLEtest.t;
Query OK, 100000 rows affected
Task 1 finished, Loaded 100000 records, Skipped 0 records
gbase> LOAD DATA INFILE 'sftp://gbase:gbase@192.168.10.114/data/*'INTO TABLE test.t;
Query OK, 100000 rows affected
Task 1 finished, Loaded 100000 records, Skipped 0 records
gbase> LOAD DATA INFILE 'http://192.168.10.114/data/*' INTO TABLEtest.t;
Query OK, 100000 rows affected
Task 1 finished, Loaded 100000 records, Skipped 0 records
gbase> LOAD DATA INFILE ' hdp://gbase@127.0.0.1:50070/data/*' INTOTABLE test.t;
Query OK, 100000 rows affected
Task 1 finished, Loaded 100000 records, Skipped 0 records




