http 加载 发表于 2018-10-31 阅读 4218回复 2

86集群版本使用.net模拟http服务器进行加载报错

86版本,为避免安装客户端,客户使用.net模拟http服务器进行加载。
现有个问题,传输大于128M的文件就无法加载,加载时报错如下:
gbase> LOAD DATA INFILE 'http://172.16.174.1/abc.csv' INTO TABLE testdb.t DATA_FORMAT 3 FIELDS TERMINATED BY '|';
ERROR 1733 (HY000): (GBA-01EX-700) Gbase general error: Task 25 failed, [172.16.174.142:5050](GBA-02AD-0005)Failed to query in gnode:
DETAIL: (GBA-01-600) Gbase internal error: I/O operation on http://172.16.174.1/abc.csv failed with error - Requested range was not delivered by the server, File name http://172.16.174.1/abc.csv
SQL: LOAD DATA INFILE 'http://172.16.174.1/abc.csv#offset=67633153&length=67633151' INTO TABLE `testdb`.`t_n1` DATA_FORMAT 3 FIELDS TERMINATED BY '|' HOST '172.16.174.142' CURRENT_TIMESTAMP 1461848668 S


回答 (2)

grander
发表于2018-10-31 14:13
客户订制的HTTP Server不支持range寻址,无法使用分块加载功能,导致加载超过128MB的数据失败(缺省最小分块大小64MB)。

grander
发表于2018-10-31 14:20
grander 发表于 2018-10-31 14:13
客户订制的HTTP Server不支持range寻址,无法使用分块加载功能,导致加载超过128MB的数据失败(缺省最小分 ...

1)客户的HTTPserver增加range寻址支持;
2)关闭分块加载功能,通过在SQL中设置nosplit选项,或者通过配置MIN_CHUNK_SIZE大小,保证所有的数据文件大小都不被分块。
但关闭分块加载功能,将严重影响加载性能。

撰写回答

您需要登录后才可以回帖 登录 | 立即注册