Greenplum外部表问题解决一例

来源:互联网 发布:ubuntu显示root权限 编辑:程序博客网 时间:2024/05/20 07:33

Greenplum数据库好久不用都有些生疏了,今天在处理个数据分析需求时,碰到个问题,记录下排查过程。

外部表建好后,查询时爆出如下错,(一惊,好久没碰到问题了)

ERROR:  All 1000 first rows in this segment were rejected. Aborting operation regardless of REJECT LIMIT value. Last error was: invalid byte sequence for encoding "UTF8": 0xc8dd  (seg0 slice1 sdw1:40000 pid=28307)

DETAIL:  External table zx_temp_dnslog, file gpfdist://smdw:8003/100*.bak


原以为是字符集的问题,查了GP库的字符集,客户端的字符集等,改了GBK等等,没解决!!

查看数据文件,file下数据文件,一看傻眼了,原来是gzip的文件,但是文件末尾没有带.gz

问题应该就是这了,

将文件名批量改为.gz后,外部表查询正常。

原因:GP外部表在使用压缩文件作为引用数据时,会使用gzip进行解压的,

如果在操作系统下,使用gzip 解压一个不带.gz的文件,也是不认的。

gzip: asaa.txt.bak: unknown suffix -- ignored

--asaa.txt是gzip后的改名文件。




0 0
原创粉丝点击